# text label above the bars

91 views (last 30 days)
Rene Sebena on 2 Jul 2016
Commented: Rene Sebena on 3 Jul 2016
Hi there,
I am new in matlab and I am trying to put text labels above the bars, so that A is above first one, B above second one etc...Can you help me with this
thank you
R
y = [10,20,30,15];
a = bar(y);
labels = {'A', 'B', 'C', 'D'};

Star Strider on 2 Jul 2016
This works:
y = [10,20,30,15];
a = bar(y);
labels = {'A', 'B', 'C', 'D'};
xt = get(gca, 'XTick');
text(xt, y, labels, 'HorizontalAlignment','center', 'VerticalAlignment','bottom')
Image Analyst on 3 Jul 2016
Edited: Image Analyst on 3 Jul 2016
You've never mentioned anything about red or blue before. What is read and blue - the text or the bars or both? And what is the "second one of the group"? I see just one group of 8 bars and they're all blue.
When you said "so above 10, 20, 30 and 15 I have to put for example A and above 15,15,15 and 12 label B" it seemed to us that you wanted bar #'s 1,3,5, and 7 to have an A above them, and bars 2,4,6, and 8 to have a B above them (at least that was a guess on my part that matched what you said). Now you've made it confusing again.
Rene Sebena on 3 Jul 2016
Yes, my fault, sorry for that, I have groups of bars for several subjects and 4 experimental conditions,.. Subject1 results are [10,20,30,15] and subject2 results are [15,15,15,12] so the matrix is like this:
y = [10 15; 20 15;30 15; 15 12];
and I just need to label subject 1 results with eg. "A" and subject 2 results with label "B".