Show older comments
Hi, im trying to write a simple program to put a legend on the graph using variable names as strings for example i have
var1='name1';
var2='name2';
how do i get these onto a legend?
I don't want to use legend(var1,var2) as i intend to plot n variables with n different names.
Answers (1)
Walter Roberson
on 11 May 2012
vars = {'name1', 'name2'};
legend(vars{:});
3 Comments
Image Analyst
on 11 May 2012
Oh, is that what he wanted? You could be right. I had thought he wanted to have legends assigned automatically based on the names of the variables he plotted (rather than telling it the names explicitly). (I don't know how to do this, and don't even know if it's even possible.)
Walter Roberson
on 11 May 2012
In a duplicate of this question, the claim was made that this does not allow different numbers of strings for each execution. That is not correct.
For example,
nv = ceil(10 * rand);
vars = cell(1,nv);
for K = 1 : nv
vars{K} = char('a' + floor(20*rand(1,5)));
end
legend(vars{:})
Dr. Seis
on 11 May 2012
If "vars" is a cell string... why do you need the {:}, why not just legend(vars) ?
Categories
Find more on Legend 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!