Identifying a line in multiple plots
显示 更早的评论
I have code that plots all of my data as random colours and it works perfectly.
for t = 1:20
tempY = Sim_Graphs_Y{t,1};
txt = [num2str(t)];
plot(NewX,tempY,'Color',rand(1,3),'LineStyle','--','DisplayName',txt);
hold on
end
plot(NewX,ygraph1,'Color','r','LineStyle','-','DisplayName','Exp');
legend
savefig('weightingTEST.fig')

Is there a better way for me to be able to work out which line is which outside of just trying to match the colour as best i can?
采纳的回答
更多回答(1 个)
Image Analyst
2022-6-10
0 个投票
Not sure what that means. You can set a breakpoint on the plot line and see each curve right when it's plotted.
If you want you can, with sprintf(), create a cell array of strings inside the loop that describes the parameters of each curve and then give that cell array to legend()
2 个评论
Charles Mitchell-Thurston
2022-6-10
编辑:Charles Mitchell-Thurston
2022-6-10
Image Analyst
2022-6-10
Not sure what "closed" means. To find the closest, compute the mean absolute deviation. There is a function mad
or
theMAD(t) = mean(abs(curve - redCurve));
and look for the min value
[minMad, indexOfMinMad] = min(theMAD)
类别
在 帮助中心 和 File Exchange 中查找有关 Line Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!