【问题标题】:Side-by-side (instead of overlapping) error bars并排(而不是重叠)误差线
【发布时间】:2015-12-01 12:23:54
【问题描述】:

我有一些数据,我正在绘制每个时间点的平均值,误差线显示标准偏差。

我可以简单地使用errorbar(x, y, err),这适用于单行。但是,如果我想在同一个图中绘制多个数据集,误差线会重叠并且看起来很糟糕:

我希望误差线并排排列。因此,每个回归都与之前的回归略有偏移。有没有我忽略的简单方法?

【问题讨论】:

  • 您可以抵消传递给 errorbarX 值,这样它们就不会堆叠,但这会将误差线从您的特定时间点移开。如果您提供的代码可以重现您的问题,将会很有帮助。
  • 这是在新的图形引擎中吗?
  • 如果您的 X 轴是分类的,那么 @excaza 解决方案是最方便的解决方案。只需使用 s=[-1 1]; offx = x + rand(size(x)).*0.01.*x.*s(randi(2,size(x))) 之类的东西。

标签: matlab plot overlap errorbar matlab-hg2


【解决方案1】:

您可以将已知或随机偏移量添加到您的点的x 值,例如

s=[-1 1]; 
offx = x + rand(size(x)).*0.01.*x.*s(randi(2,size(x)))
errorbar(offx, y, err)

另外,R2018b 引入了stackedplot 函数。这不是您要问的(水平偏移),但它可能有用(垂直偏移,如子图)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-12-23
    • 1970-01-01
    • 1970-01-01
    • 2013-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-20
    相关资源
    最近更新 更多