Value on top of grouped bar graph?

7 vues (au cours des 30 derniers jours)
Ibro Tutic
Ibro Tutic le 7 Août 2017
Modifié(e) : Soyeun Jung le 8 Août 2017
Assume we had
y=[2 3 4; 1 5 2; 6 2 5]
bar(y)
Would there be anyway to get the value of the bar graphs on top of the bars?
  1 commentaire
Chad Greene
Chad Greene le 7 Août 2017
What version of Matlab are you using?

Connectez-vous pour commenter.

Réponses (1)

Soyeun Jung
Soyeun Jung le 7 Août 2017
Modifié(e) : Soyeun Jung le 8 Août 2017
Hi Ibro,
You can calculate the bar offsets within each group and use the text function to plot the y values on top of each bar.
y = [2 3 4 ; 1 5 2; 6 2 5];
b = bar(y);
width = b.BarWidth;
for i=1:length(y(:, 1))
row = y(i, :);
% 0.5 is approximate net width of white spacings per group
offset = ((width + 0.5) / length(row)) / 2;
x = linspace(i-offset, i+offset, length(row));
text(x,row,num2str(row'),'vert','bottom','horiz','center');
end

Catégories

En savoir plus sur Data Distribution Plots dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by