Using String user input for dynamic number of legend in plot function
1 view (last 30 days)
Show older comments
Romain Liechti
on 29 Mar 2019
Commented: Star Strider
on 29 Mar 2019
Hi, I'm trying to use the user input from input as a legend for graph in a plot function. I would like my function to use the string input from the user as legend.
for jj = 1:dim
legend2 = ['Enter a legend for curve ' num2str(jj) ': '];
LegendCell(jj) = input(legend2);
end
[...]
l = legend(LegendCell,'Location','southwest');
For now, no legend is added to the plot, and I already tried differents conversion from string to string cell, array etc...
When I do this outside of the function, it works fine, so my guess is that the problem is from the data coming from the "input"
Legend(1) = "Sine";
Legend(2) = "Cosine";
x = 0:0.1:10;
y = sin(x);
y2 = cos(x);
figure()
plot(x,y)
hold on
plot(x,y2)
legend(Legend)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/211032/image.png)
0 Comments
Accepted Answer
Star Strider
on 29 Mar 2019
Change the input call to:
LegendCell{jj} = input(legend2,'s')
That worked (for one legend entry) when I tested it.
2 Comments
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!