- To plot multiple sets of coordinates on the same set of axes, specify at least one of x or y as a matrix.
Why don't the markers have the correct color in the legend?
4 views (last 30 days)
Show older comments
Laura Gianolio
on 8 Jun 2023
Commented: Laura Gianolio
on 13 Jun 2023
If you run this code you will understand what I mean by my question.
I would like that in the legend also the circles had the correct color, otherwise I would rather remove them altogether, leaving only the names.
A1 = randi(10, [5 5]);
B1 = randi(10, [5 5]);
A2 = randi(10, [5 5]);
B2 = randi(10, [5 5]);
scatter(A1,B1,'g');
hold on
grid on
scatter(A2,B2,'b');
title('TEST');
xlabel('X','FontSize',8,'FontWeight','bold');
ylabel('Y','FontSize',8','FontWeight','bold');
legend({'\color{green}G1','\color{blue}G2'},'Location','northwest');
savefig('./Figures/Test')
0 Comments
Accepted Answer
Les Beckham
on 8 Jun 2023
Edited: Les Beckham
on 8 Jun 2023
The problem is that each of your calls to scatter is creating five separate sets of data for a total of 10 sets. But, you only request the legend to be displayed for the first two.
From the documentation:
To illustrate what I mean, here is your example, but displaying the legend for all of the sets of data:
A1 = randi(10, [5 5]);
B1 = randi(10, [5 5]);
A2 = randi(10, [5 5]);
B2 = randi(10, [5 5]);
scatter(A1,B1,'g');
hold on
grid on
scatter(A2,B2,'b');
title('TEST');
xlabel('X','FontSize',8,'FontWeight','bold');
ylabel('Y','FontSize',8','FontWeight','bold');
legend
Depending on what you really are trying to do, you might just need to reshape or redefine your data as vectors instead of matrices.
0 Comments
More Answers (1)
VBBV
on 8 Jun 2023
Edited: VBBV
on 8 Jun 2023
A1 = randi(10, [5 5]);
B1 = randi(10, [5 5]);
A2 = randi(10, [5 5]);
B2 = randi(10, [5 5]);
h1=scatter(A1,B1,'g');
hold on
grid on
h2=scatter(A2,B2,'b');
title('TEST');
xlabel('X','FontSize',8,'FontWeight','bold');
ylabel('Y','FontSize',8','FontWeight','bold');
legend([h1(1),h2(1)],{'G1','G2'},'Location','northwest');
6 Comments
VBBV
on 13 Jun 2023
@Laura Gianolio, Do you mean to display legend with the empty markers but still having the text colored ii.e. green and blue ?
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!