Need legend for lines plotted with different style in for loop and if statement
Mostrar comentarios más antiguos
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!
Respuestas (1)
Adam Drake
el 21 de Feb. de 2023
Editada: Adam Drake
el 21 de Feb. de 2023
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 comentarios
Miraboreasu
el 21 de Feb. de 2023
Editada: Miraboreasu
el 21 de Feb. de 2023
Adam Drake
el 21 de Feb. de 2023
fixed
Miraboreasu
el 21 de Feb. de 2023
Adam Drake
el 21 de Feb. de 2023
fixed
Adam Drake
el 13 de Mzo. de 2023
Could you please accept this answer if it answered your problem.
Categorías
Más información sobre Legend en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
