Automatic change of legend's arguments
2 views (last 30 days)
Show older comments
Let's consider this example:
labels = {'A','B','C'};
hold on
for i = [1 2 3]
h(i) = plot(rand(10,1));
end
legend([h(1),h(2),h(3)],labels);
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1146095/image.png)
Now, I would like to plot only the first and the second plots, i.e.
hold on
for i = [1 3]
h(i) = plot(rand(10,1));
end
legend([h(1),h(3)],labels);
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1146100/image.png)
Is there any automatic way to change the legend from
legend([h(1),h(2),h(3)],labels);
to
legend([h(1),h(3)],labels);
?
Basically, I just want to change the index of the plots
i = [1 3]
and get the correct labels.
0 Comments
Accepted Answer
Les Beckham
on 5 Oct 2022
Edited: Les Beckham
on 5 Oct 2022
labels = {'A','B','C'};
for i = [1 3]
h(i) = plot(rand(10,1), 'DisplayName', labels{i});
hold on
end
grid on
legend
More Answers (0)
See Also
Categories
Find more on Legend in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!