I want my legend just like the pic. 2 variables in 2 columns at the same legend
1 view (last 30 days)
Show older comments
Matthew Worker
on 26 May 2021
Edited: Rena Berman
on 16 Dec 2021
clc;
clear;
N = [10 20 30 40 50];
M = [1 2 3 4 5];
x = linspace(0, 1, 17);
plot(x, N.*x.')
legendString = "N = " + string(N);
legendStrings = "M = " + string(M);
legend([legendString,legendStrings])
2 Comments
Rik
on 15 Dec 2021
I want my legend just like the pic. 2 variables in 2 columns at the same legend
clc;
clear;
N = [10 20 30 40 50];
M = [1 2 3 4 5];
x = linspace(0, 1, 17);
plot(x, N.*x.')
legendString = "N = " + string(N);
legendStrings = "M = " + string(M);
legend([legendString,legendStrings])
Accepted Answer
Bjorn Gustavsson
on 26 May 2021
Solve the problem at the root:
legendString = "N = " + string(N) + ", M = " + string(M);
ph = plot(x,N.*x'); % Better controll using the plot-handle.
legend(ph,legendString)
HTH
4 Comments
Bjorn Gustavsson
on 26 May 2021
"Should" be as simple as:
legend([ph;ph2],[legendString;legendString2])
HTH
Leo Map
on 26 May 2021
they are not in the same order as the plot .
because I'm plotting N, M first then K, M so what you are suggesting isn't fit with the figure because it shows N, M then K, M and Again N, M and so on
More Answers (0)
See Also
Categories
Find more on Specifying Target for Graphics Output 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!