plot help

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.

回答(1 个)

Walter Roberson
Walter Roberson 2012-5-11

0 个投票

vars = {'name1', 'name2'};
legend(vars{:});

3 个评论

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.)
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
Dr. Seis 2012-5-11
If "vars" is a cell string... why do you need the {:}, why not just legend(vars) ?

请先登录,再进行评论。

类别

提问:

2012-5-11

Community Treasure Hunt

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

Start Hunting!

Translated by