Errorbar + multiple plots + one legend

2 views (last 30 days)
For 'plot' function it is possible to 'merge' legends by integrating into a vector:
a = plot(rand(4));
hold on
b = plot(rand(4));
legend([a; b], {'a', 'b', 'c', 'd', 'a2', 'b2', 'c2', 'd2'});
But for errorbar plots it doesn work:
a = errorbar(rand(4),rand(4));
hold on
b = errorbar(rand(4),rand(4));
legend([a; b], {'a', 'b', 'c', 'd', 'a2', 'b2', 'c2', 'd2'});
How come and what to do about it?

Accepted Answer

Grzegorz Knor
Grzegorz Knor on 25 Nov 2011
Remove the semicolon in legend to errorbar.

More Answers (2)

Guido
Guido on 25 Nov 2011
Strange, but it works!
Thanks Grzegorz!

Sorcha Craven Heffernan
Sorcha Craven Heffernan on 13 Dec 2017
I am having a similar problem errorbar(x, y, yneg, ypos, xpos, xneg, 'kx-', 'MarkerSize',10); hold on errorbar(x, y, y1neg, y1pos, xpos, xneg, 'rx-', 'MarkerSize',10); legend('Increasing current', 'Decreasing Current') hold off
my code is only plotting the second line
  1 Comment
Juan Guerrero
Juan Guerrero on 12 Feb 2021
Maybe arguments 'x' and 'y' are the same for both graphs?

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!