Errorbar + multiple plots + one legend

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?

 Réponse acceptée

Grzegorz Knor
Grzegorz Knor le 25 Nov 2011

0 votes

Remove the semicolon in legend to errorbar.

Plus de réponses (2)

Guido
Guido le 25 Nov 2011

0 votes

Strange, but it works!
Thanks Grzegorz!
Sorcha Craven Heffernan
Sorcha Craven Heffernan le 13 Déc 2017

0 votes

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 commentaire

Juan Guerrero
Juan Guerrero le 12 Fév 2021
Maybe arguments 'x' and 'y' are the same for both graphs?

Connectez-vous pour commenter.

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by