Need legend for lines plotted with different style in for loop and if statement
1 回表示 (過去 30 日間)
古いコメントを表示
clear
f=figure;
x = 1:0.01:10; %ft
k = 1:10;
b = 1:10;
cmap = colormap(cool(length(k)));
for ii = 1:length(k)
p1=plot(x,sl(x,k(ii),b(ii)),'-','LineWidth',3,'Color',cmap(ii,:))
hold on
if(ii>5&&ii<7)
p2=plot(x,sl(x,k(ii)+0.1,b(ii)+0.1),'--','LineWidth',3,'Color',"red")
hold on
end
end
hold on
hold off
axis tight
grid on
legend([p1 p2],'1','2','3','4','5','6 special','7','8','9','10','11','Location','eastoutside')
legend show
function y = sl(x,k,b)
y = k*x+b;
end
It only have two legend, need help here, thank you!
0 件のコメント
回答 (1 件)
Adam Drake
2023 年 2 月 21 日
編集済み: Adam Drake
2023 年 2 月 21 日
clear
f = figure;
x = 1:0.01:10; %ft
k = 1:10;
b = 1:10;
cmap = colormap(cool(length(k)));
count = 1;
for ii = 1:length(k)
p1(count) = plot(x,sl(x,k(ii),b(ii)),'-','LineWidth',3,'Color',cmap(ii,:));
count = count + 1;
hold on
if( ii > 5 && ii < 7)
p1(count) = plot(x,sl(x,k(ii)+0.1,b(ii)+0.1),'--','LineWidth',3,'Color',"red");
count = count + 1;
end
end
hold off
axis tight
grid on
legend(p1,'1','2','3','4','5','6','6 special','7','8','9','10','Location','eastoutside')
function y = sl(x,k,b)
y = k * x + b;
end
5 件のコメント
参考
カテゴリ
Help Center および File Exchange で Legend についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!