how to assign names to each bar of a bar chart

621 次查看(过去 30 天)
Hello, Suppose i have some data that i want to plot in a bar chart. How do i assign labels to each of the bars. e.g.
somedata=randn(1,3)
somenames={'mike'; 'steve'; 'alex' }
barh(somedata)
My question is, how do i label each of the bars to the extreme left with the names.
Thank you for your help.

采纳的回答

C.J. Harris
C.J. Harris 2012-3-28
You can simply add the names as the y-tick labels.
somedata=randn(1,3);
somenames={'mike'; 'steve'; 'alex' };
barh(somedata)
set(gca,'yticklabel',somenames)
  1 个评论
emjey
emjey 2019-5-17
编辑:emjey 2019-5-17
But that doens't work if you have more than 20-30 data records :(
In such case Matlab plots the first few labels only...

请先登录,再进行评论。

更多回答(2 个)

ORUGANTI SIVAMURALIKRISHNA
Use like this
X = categorical({'Small','Medium','Large','Extra Large'});
Y = [0 15 20 25];
bar(X,Y)
  2 个评论
Bill Tubbs
Bill Tubbs 2021-6-15
Is there a reason why it sorts the data along the x-axis in alphabetical order? Is there any way to preserve the order?
ZenithWoman
ZenithWoman 2021-6-27
To preserve the order write
Write like this
X = categorical({'Small','Medium','Large','Extra Large'});
X = reordercats(X,{'Small','Medium','Large','Extra Large'});
Y = [0 15 20 25];
bar(X,Y)
I hope this helps

请先登录,再进行评论。


Sarul Gupta
Sarul Gupta 2017-5-4
Thanks :)

类别

Help CenterFile Exchange 中查找有关 2-D and 3-D Plots 的更多信息

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by