How do i put in a bar group the value of each bar on top?

조회 수: 3 (최근 30일)
Arne1234
Arne1234 2017년 11월 20일
댓글: Arne1234 2017년 11월 20일
Hi, I have a grouped bar graph and i want to add text off the value on the top of each bar in each group.
Example :
Y_as = [ 165 160 121 ; 59 84 62 ; 106 76 58 ]
X_as = categorical({'1. apples & pears' , '2. apples', '3. pears'})
HB = bar(X_as , Y_as , 'group')
%Result is in the image
%I know you need to put your numbers to a string bij @num2str but thats it.
%Do i use a for loop?
If somewhone can help me please give me also some comment why you use that code.
Thanks in advance

채택된 답변

KL
KL 2017년 11월 20일
편집: KL 2017년 11월 20일
Try this,
Y_as = [ 165 160 121 ; 59 84 62 ; 106 76 58 ] ;
X_as = categorical({'1. apples & pears' , '2. apples', '3. pears'});
HB = bar(X_as , Y_as , 'group');
a = (1:size(Y_as,1)).';
x = [a-0.25 a a+0.25];
for k=1:size(Y_as,1)
for m = 1:size(Y_as,2)
text(x(k,m),Y_as(k,m),num2str(Y_as(k,m),'%0.2f'),...
'HorizontalAlignment','center',...
'VerticalAlignment','bottom')
end
end

추가 답변 (1개)

KSSV
KSSV 2017년 11월 20일

카테고리

Help CenterFile Exchange에서 Environment and Settings에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by