2016-03-27 25 views
1

Matlabの現在の値の垂直ラベルをbar plotに追加するにはどうすればよいですか?私は今、「ここ」である現在の値を追加したいMatlabのラベル付き棒グラフ

enter image description here

+1

テキストグラフィックオブジェクトを作成する必要があるだろう、このような何か:http://stackoverflow.com/q/4657719/97160 – Amro

答えて

2

question I linkedにコメントでは、それを行うための一つの方法です。 this articleなど、バープロットをカスタマイズする他の方法もあります(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

関連する問題