Is it possible to change label names in Matlab

11 views (last 30 days)
I want to have different names in my Y axis rather than numbering like the following photo:

Accepted Answer

Chad Greene
Chad Greene on 24 Jun 2015
Here I'll do a barh(A) where A is not sorted, and I'll label the different groups based on the longest bar. Then sort according to the size of the first column in A while preserving the group label association. I adjusted the values in your A a little bit to make it more clear:
A = [2,6,50;3,4,90;1,6,103];
longbar = {'shortest','middle','longest'};
subplot(211)
barh(A)
set(gca,'ytick',1:3,'yticklabel',longbar)
title 'unsorted data:'
box off
% Resize based on first column:
[values, order] = sort(A(:,1));
sortedmatrix = A(order,:)
subplot(212)
barh(sortedmatrix)
set(gca,'ytick',1:3,'yticklabel',longbar(order))
title 'sorted data:'
box off

More Answers (3)

Sean de Wolski
Sean de Wolski on 24 Jun 2015
Adjust the axes' 'YTickLabel' property:
barh(rand(3,1));
ax = gca;
ax.YTickLabel = {'Hello','World','Wednesday'}
  1 Comment
Moe
Moe on 24 Jun 2015
Thanks Sean. Actually my matrix is a little bit tricky. For example matrix A is as follows:
A = [2,6,100;3,4,101;1,6,103];
I will sort matrix A based on the column 1:
[values, order] = sort(matrix(:,1));
sortedmatrix = matrix(order,:)
So, I have now:
A = [1,6,103;2,6,100;3,4,101];
Now, I need a barh graph that the Y axis label is named base on the third column in sorted matrix A. And also is it possible to replace this new label with other names. For example, if I know 100 = Hello, 101 = World and 103 = Wednesday, then I need these new labels to be appear in my graph.

Sign in to comment.


Chad Greene
Chad Greene on 24 Jun 2015
plot(1:9,1:9)
set(gca,'ytick',1:9,'yticklabel',{'book','pen','vb','top','red','green','black','green','verb'})

Azzi Abdelmalek
Azzi Abdelmalek on 24 Jun 2015
t=0:10;
y=sin(t)
plot(y)
s={'a' 'b' 'c' 'd' 'e' 'f'}
yt=get(gca,'ytick')
n=numel(s)
set(gca,'xtick',linspace(min(yt),max(xt),n),'yticklabel',s')

Categories

Find more on Line Plots in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!