How to put a numerical value inside a Bar graph?

Hi!
I'd like to know how can I set the values inside the bar plot, just like this:
I obtain the following bar plot using the code above but I can't place values in the correct center position.
b = bar(X,Y);
hold on
b.FaceColor = 'flat';
b.CData(1,:) = [0 0.447 0.741]; % color editing
b.CData(2,:) = [0.850 0.325 0.098];
b.CData(3,:) = [0.466 0.674 0.188];
b.FaceAlpha = .7; % opacity
text(1:length(Y),Y,num2str(Y'),'vert','bottom','horiz','center'); % values position
std = [2.1 4.4 6]; % standard deviation
er = errorbar(X,Y,std);
er.Color = [0 0 0];
er.LineStyle = 'none';
set(gca, 'ytick', []);
box off
Can you help me, please?
Thank you,
Sara

 채택된 답변

Star Strider
Star Strider 2020년 11월 29일

0 개 추천

Change the text call to:
text(1:length(Y),Y/2,num2str(Y'),'vert','bottom','horiz','center'); % values position
That should work, if I understand correctly what you want to do.
.

댓글 수: 4

Sara Macchiavello
Sara Macchiavello 2020년 11월 29일
편집: Sara Macchiavello 2020년 11월 29일
Yes, perfect it works. Thank you!
Another question: how can I print also '%' after the numbers?
I undersood that num2str(Y') print the number but I can't insert the percentage.
As always, my pleasure!
There are a few different ways to add the ‘%’:
text(1:length(Y),Y/2,[num2str(Y') ['%';'%';'%']],'vert','bottom','horiz','center'); % values position
text(1:length(Y),Y/2,sprintfc('%g%%',Y),'vert','bottom','horiz','center'); % values position
text(1:length(Y),Y/2,compose('%g%%',Y),'vert','bottom','horiz','center'); % values position
The first concatenates the ‘['%';'%';'%']’ vector to the num2str vector, the second and third use different functions to create a cell array of strings that prints the value with the ‘%’. Since the ‘%’ is a valid cointrol character to those functions, to print one ‘%’ it is necessary to use '%%', (The same is true for other control characters in these and similar functions.)
Thank you very much for your advice and explaination, you're really kind!!
As always, my pleasure!
I very much appreciate your compliment!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Line Plots에 대해 자세히 알아보기

질문:

2020년 11월 29일

댓글:

2020년 11월 29일

Community Treasure Hunt

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

Start Hunting!

Translated by