How to create a legend from a cell array?

45 views (last 30 days)
Hi, I have C that is a 3x1 cell array in which there is one number per cell. I have plotted 5 different curves and I would like to use those numbers as a text in a legend for the first 3 curves. I have written the following code but there are my three numbers referred only to the first graph
p=cell2mat(C);
legend(mat2str(p,2),'real data','real data 2' ,'Location','southeast')

Accepted Answer

Adam Danz
Adam Danz on 9 Jan 2020
How's this work for you?
plot(magic(5))
C = {1;2;3};
p = cellfun(@(x){num2str(x)},C)
legend(p{:},'real data','real data 2' ,'Location','southeast')
200109 113308-Figure 1.png
  2 Comments
Paolo Ottonelli
Paolo Ottonelli on 9 Jan 2020
This program works, thank you very much
Adam Danz
Adam Danz on 9 Jan 2020
Glad I could eventually understand what you clearly described :D

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!