How to hide or delete the legend that is not needed

109 views (last 30 days)
FYI, please see the attached figure.
My aim is to hide or delete the legend data1, data2 and data3, to be like this figure.
Thanks!
  2 Comments
Cris LaPierre
Cris LaPierre on 15 Feb 2021
Share the code you use to create and format your figure.
Terence
Terence on 15 Feb 2021
for it=1
plot(lv,reag(it,:),'color',[0 0.4470 0.7410],'LineWidth',LineWidth, 'DisplayName','Mode 1,Analytical,UD');
end
for it=2
plot(lv,reag(it,:),'color',[0 0.4470 0.7410],'LineWidth',LineWidth);
end
for it=3
plot(lv,reag(it,:),'color',[0.8500 0.3250 0.0980],'LineWidth',LineWidth,'DisplayName','Mode 2,Analytical,UD');
end
for it=4
plot(lv,reag(it,:),'color',[0.8500 0.3250 0.0980],'LineWidth',LineWidth);
end
for it=5
plot(lv,reag(it,:),'color',[0.9290 0.6940 0.1250],'LineWidth',LineWidth,'DisplayName','Mode 3,Analytical,UD');
end
for it=6
plot(lv,reag(it,:),'color',[0.9290 0.6940 0.1250],'LineWidth',LineWidth');
end
lgd = legend;
lgd.NumColumns = 1;
legend('boxoff')

Sign in to comment.

Accepted Answer

Cris LaPierre
Cris LaPierre on 15 Feb 2021
Edited: Cris LaPierre on 15 Feb 2021
Use line objects as inputs to legend, telling it which lines to include in the legend.
x=1:10;
y=@(x,a)((x-5)/a).^2;
p1 = plot(x,y(x,1),'DisplayName','Mode 1,Analytical,UD');
hold on
plot(x,y(x,1.1));
p2 = plot(x,y(x,2),'DisplayName','Mode 2,Analytical,UD');
plot(x,y(x,2.2));
p3 = plot(x,y(x,3),'DisplayName','Mode 3,Analytical,UD');
plot(x,y(x,3.3))
hold off
legend([p1,p2,p3])

More Answers (1)

Image Analyst
Image Analyst on 15 Feb 2021
Try getting rid of the for loops, which essentially do nothing:
plot(lv,reag(1,:),'color',[0 0.4470 0.7410],'LineWidth',LineWidth, 'DisplayName','Mode 1,Analytical,UD');
hold on;
plot(lv,reag(2,:),'color',[0 0.4470 0.7410],'LineWidth',LineWidth);
plot(lv,reag(3,:),'color',[0.8500 0.3250 0.0980],'LineWidth',LineWidth,'DisplayName','Mode 2,Analytical,UD');
plot(lv,reag(4,:),'color',[0.8500 0.3250 0.0980],'LineWidth',LineWidth);
plot(lv,reag(5,:),'color',[0.9290 0.6940 0.1250],'LineWidth',LineWidth,'DisplayName','Mode 3,Analytical,UD');
plot(lv,reag(6,:),'color',[0.9290 0.6940 0.1250],'LineWidth',LineWidth');
legend({'1', '2', '3', '4', '5', '6'})

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!