Different colors between plot and legend

1 view (last 30 days)
Hi,
Does anybody knows why there are different colors between plot lines and legend ?
  4 Comments
KSSV
KSSV on 2 Jun 2020
We cannot comment/ help unless your code is shown to us.
Ivan Mich
Ivan Mich on 2 Jun 2020
D=table(Y,X,meanD)
writetable(D,'D.txt')
hold on
plot(Y,X,'o','DisplayName','0.3')
plot(Y,meanD,'*','DisplayName','0.3')
legend

Sign in to comment.

Accepted Answer

Bjorn Gustavsson
Bjorn Gustavsson on 2 Jun 2020
Ivan, when you plot multiple lines like this and want to put a legend into the figure (or want to modify the lines)
use the plot-handles returned by plot:
x = 0:10;
y = randn(5,numel(x));
ph1 = plot(x,y(1:2,:),'-','linewidth',2);
hold on
ph2 = plot(x,y(3:5,:),'--')
legend([ph1(:);ph2(:)],'1','2','3','4','5')
HTH
  4 Comments
Bjorn Gustavsson
Bjorn Gustavsson on 18 Jun 2020
Ivan, you could do something like this programatically:
for iFiles = numel(np)
legstr{iFiles} = [np(iFiles).name,' M']; % or with sprintf('%s M',np(iFiles).name);
end
legend([ph1(:);ph2(:)],legstr{:})
When I've come that far I usually become pragmaticall and start to hard-code the legend-strings, it comes down to how many times you will re-run this with other labelings...
Ivan Mich
Ivan Mich on 18 Jun 2020
Edited: Ivan Mich on 18 Jun 2020
I have tried your solution but it shows me these:
Error using legend
Inputs must be the same size or either one can be a scalar.
What I have to do in order to solve it?

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!