Plot legend for loop
Show older comments
I want to have a consolidated plot generated from "for loop" with legend for only first and last value of the variable.
My code would look like this
hold on
for i = 0.1:0.001:1
plot(i,cos(i))
end
hold off
My function is different than cos(i), the problem that I have is that I want to display legend for only i = 0.1 and i = 1, which I couldn't. Or is there any way I could indicate that the line belongs to i =0.1 and i=1? Any reference or help is highly appreciated.
thanks
4 Comments
Ameer Hamza
on 21 Mar 2020
Legend belongs to a specific line, not just one point on the line. Can you show us an example of what is your required output?
Tshewang Phuntsho
on 21 Mar 2020
madhan ravi
on 21 Mar 2020
Are you looking to labelling the point?
doc text % ?
Tshewang Phuntsho
on 21 Mar 2020
Answers (1)
Peng Li
on 21 Mar 2020
You can try assign each line with a handle by
hold on
iHandler = 1;
for i = 0.1:0.001:1
iHandler = plot(i,cos(i));
iHanlder = iHanlder + 1;
end
hold off
After that, you can use legend([1 whateverNumCorrespondingTo1], {'your legend'}).
Or you can set DisplayName property in plot function that only has value when i = 0.1 or 1.
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!