how to assign names to each bar of a bar chart

379 visualizzazioni (ultimi 30 giorni)
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.

Risposta accettata

C.J. Harris
C.J. Harris il 28 Mar 2012
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 Commento
emjey
emjey il 17 Mag 2019
Modificato: emjey il 17 Mag 2019
But that doens't work if you have more than 20-30 data records :(
In such case Matlab plots the first few labels only...

Accedi per commentare.

Più risposte (2)

ORUGANTI SIVAMURALIKRISHNA
Use like this
X = categorical({'Small','Medium','Large','Extra Large'});
Y = [0 15 20 25];
bar(X,Y)
  2 Commenti
Bill Tubbs
Bill Tubbs il 15 Giu 2021
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 il 27 Giu 2021
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

Accedi per commentare.


Sarul Gupta
Sarul Gupta il 4 Mag 2017
Thanks :)

Categorie

Scopri di più su 2-D and 3-D Plots in Help Center e File Exchange

Tag

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by