簡體   English   中英

Matlab中帶有標簽的條形圖

[英]Bar plot with labels in Matlab

如何在Matlab中簡單地將當前值的垂直標簽添加到條形圖中?

我想在“此處”為當前位置添加當前值:

在此處輸入圖片說明

在評論中鏈接到的問題是一種解決方法。 還有其他自定義條形圖的方法,例如,請參見本文 (盡管從HG2開始,內部結構已經發生了很大變化,因此進入內部並檢索我們所需的數據變得更加棘手)。

如果您願意深入研究,以下是一種適用於MATLAB R2014b及更高版本的解決方案(請注意,我正在使用未記錄的屬性來獲取由條形圖創建的隱藏的“ Face”圖形對象):

Y = rand(3,4);
h = bar(Y);
drawnow   % this is needed for some reason!

opts = {'VerticalAlign','middle', 'HorizontalAlign','left', ...
    'FontSize',8, 'Rotation',90};
for i=1:numel(h)
    clr = h(i).Face.ColorData(1:3);
    vd = h(i).Face.VertexData;
    xy = double(vd(1:2,2:4:end) + vd(1:2,4:4:end)) / 2;
    for j=1:size(xy,2)
        text(xy(1,j), xy(2,j), sprintf(' %.2g',xy(2,j)), ...
            'Color','k', opts{:})
    end
end

barplot

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM