Removing lower marker in error plot

5 次查看(过去 30 天)
Sowmya MR
Sowmya MR 2016-12-28
编辑: the cyclist 2016-12-28
Hi,
I am trying to plot one sided error plot. Here is the sample code and output. I want to remove the markers circled in red. Can someone please help me with this?
x = 1:10;
X1=rand(13,10);
y = mean(X1);
U= std(X1);
L=zeros(size(y));
errorbar(x,y,L,U,'--k','LineWidth',2)

回答(3 个)

the cyclist
the cyclist 2016-12-28
errorbar(x,y,[],U,'--k','LineWidth',2)
  2 个评论
Sowmya MR
Sowmya MR 2016-12-28
Thank you. But it gives me an error... "X, Y, and error bars all must be the same length."
the cyclist
the cyclist 2016-12-28
I'm guessing that you have an older version of MATLAB that does not support this syntax. I've posted another solution that might work.

请先登录,再进行评论。


the cyclist
the cyclist 2016-12-28
errorbar(x,y,nan(size(x)),U,'--k','LineWidth',2)
  1 个评论
Sowmya MR
Sowmya MR 2016-12-28
Thank you, i did try nan but it removes the lines as well. (The curve remains but the line connecting the upper markaer and the curve disappears)

请先登录,再进行评论。


the cyclist
the cyclist 2016-12-28
编辑:the cyclist 2016-12-28
This solution will not work on newer versions of MATLAB, but I wonder if making the lower error bar in the "wrong" direction will make it overlap the upper one.
I'm not sure which sign makes sense, so try either
errorbar(x,y,U,U,'--k','LineWidth',2)
or
errorbar(x,y,-U,U,'--k','LineWidth',2)

Community Treasure Hunt

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

Start Hunting!

Translated by