如何在三个曲线的一个图中仅使用一个图例?

问题描述 投票:0回答:1

我如何只使用一个图例在虚线上显示“ hopf”,而在实线上显示“ ACDC”?

我正在使用的代码是这样:

clear; close 
Tspannew=linspace(1,100,1000);
ys_new=[]
ysp= []
for i = 1:3
ysp= i^2.*sin(Tspannew)
ys_new(:,i)=ysp

ACDCp=i^2*cos(Tspannew)
yn_ACDC(:,i)= ACDCp
end    

close;
figure
plot(Tspannew,ys_new,'--','DisplayName','Hopf Fold'); 
hold on;
plot(Tspannew,yn_ACDC,'DisplayName','ACDC')
hold off
legend

但是,它会生成6个图例。我只需要两个与实线和虚线相关的图例。

matlab plot legend figure
1个回答
1
投票

免责声明:我使用Octave 5.1.0测试了以下代码,但是我直接从MATLAB的legend文档中得到了这个主意:请参见legend版本。您可以收集绘图的图形对象,然后从两个“线集合”中选择一条或多条特定线。

让我们看看这段代码:

subset

我得到以下输出,分别对应于“行集合”中的第一行:

subset

希望有帮助!

© www.soinside.com 2019 - 2024. All rights reserved.