How to use legend command

1 次查看(过去 30 天)
Sameer
Sameer 2014-5-27
评论: Mahdi 2014-5-27
Hello all
I am having the data lets say for seven elements and I am ploting it using a loop in a single figure. But in these seven elements someof the elements contain nothing and then the plot for that is not plotted. Now how I can use the legend command only for the elements that are plotted?
Please guide!!!
Regards

采纳的回答

Mahdi
Mahdi 2014-5-27
Is the loop still telling the figure to plot even if there isn't any data recorded? You have a few ways around it:
The first one basically tells the legend to put an "empty" headline for the second item (if nothing was plotted)
legend('item1', '', 'item3')
You can also only tell MATLAB to plot only when there is data with
if isempty(your_matrix)~=1
plot(x,y)
end
There are also other ways which you can tell the legend to ignore some entries. You can also enter the plot tools (in the top menu of figure) and do it without code.
  4 个评论
Sameer
Sameer 2014-5-27
Hi...thanks,it should be OR...can you tell me how i can form the loop for legend as ´there will be a lot of data and thus I want a generalization such as sprintf('Element%',p). but I amnot able to generate a loop that work with legend. Please Guide I am a newbie to matlab.
Regards
Mahdi
Mahdi 2014-5-27
Do you mean that you want the legend to be labelled differently based on the loop?
You can simply do something like this: (this is just an example)
for i=1:3
figure(i)
var1=sprintf('Plot_%d', i)
% Do your plotting here
legend(var1)
end
In this case, the legend would show Plot_1, Plot_2, Plot_3

请先登录,再进行评论。

更多回答(0 个)

类别

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