Multiple legands with semilogy

15 次查看(过去 30 天)
I am using a loop to plot multiple plots in the same windows I would like to use mutliple legands to identify each data set. When i try to use legend('label1','label2') it says:
"Warning: Ignoring extra legend entries."
and when I attempt to call legend multiple times it simply replaces the old legend. I would prefer if there is a way i could call legend each time I add a new data set to the graph.

回答(2 个)

Gurudatha Pai
Gurudatha Pai 2011-6-18
My guess is that you are probably using more strings in legend(); e.g: you are plotting only one array and passing two legend strings like below
plot(x,y);
legend('labels', 'label2');
you could probably do
h= figure();
plot(x,y)
hold on
plot(x, y2);
legend('labels', 'label2');
You could as well do something like this for each of your plots
h= figure();
hold on
plot(x,y);
legendmat = [legendmat; 'label1']
legend(legendmat)
% some other code
figure(h)
plot(x, y2);
legendmat = [legendmat; 'label2']
legend(legendmat)
% some other code
figure(h)
plot(x, y3);
legendmat = [legendmat; 'label3']
legend(legendmat)

SUDIP PODDAR
SUDIP PODDAR 2011-8-6
??? Undefined function or variable 'legendmat'. give this error . what is the solution?
  1 个评论
Muhammad Anjum Qureshi
Add
legendmat = ''
only before first
legendmat = [legendmat; 'label1']

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Legend 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by