Display axis values Line Legends???

1 view (last 30 days)
Usman  Ali
Usman Ali on 9 Sep 2013
Hello every one, when I plot a matrix e.g x= [ 8 36 36; 8 15 15; 8 25 25; 8 3 3], I would like to display the end value of each row for as a legend for each line on the plot.
I tried with 'num2str(x(1,end)),......' comand which works but off course for larger matrices it would b a headache, Is there any possible short command for the whole Action
Best Regards Ali

Accepted Answer

Jan
Jan on 9 Sep 2013
Edited: Jan on 9 Sep 2013
You can use a loop:
[m,n] = size(x);
legendText = cell(1, m);
for k = 1:m
legendText{k} = num2str(x(k, n));
end
[EDITED after comment]
x = rand(10, 5);
h = plot(x);
... Instert code from above here
legend(h, legendText);
See doc legend for more details and examples. Reading the documentation is very useful in Matlab, because this is (still, even with the new layout) the most productive documentation I've seen (except for the one of my hammer).
  3 Comments
Usman  Ali
Usman Ali on 25 Sep 2013
Perfect (y), it works all accordingly...

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!