2

我想更改带有垂直和水平误差线的绘图的原点。我正在使用“plotrix”包中的 plotCI 函数进行绘图。

一个非常简短的可重现示例:

x <- c(1, 2)
y <- c(3, 4)
err.x <- c(0.5, 0.2)
err.y <- c(0.25, 0.3)
plotCI(x, y, uiw = err.x, err = "x",
       ylim = range(y+err.y, y-err.y))
plotCI(x, y, uiw = err.y, err = "y", add = T)

在这个情节中一切都很好。我得到了水平和垂直误差线。

plotCI(x, y, uiw = err.x, err = "x",
       ylim = rev(range(y+err.y, y-err.y)))
plotCI(x, y, uiw = err.y, err = "y", add = T)

在这里,我只得到水平误差线。似乎y轴的反转没有被第二次调用plotCI“识别”。

有任何想法吗?!?非常感谢!

4

1 回答 1

1

我喜欢plotrix它及其相关的功能,但我认为你想要做的事情受到依赖于不兑现逆转的arrows()功能的阻碍。您可以改为使用来获得所需的情节:plotCI()ylimggplot2

x <- c(1, 2)
y <- c(3, 4)
err.x <- c(0.5, 0.2)
err.y <- c(0.25, 0.3)

library(ggplot2)
ggplot(data.frame(x,y,err.x,err.y), aes(x=x, y=y)) +
  geom_point() + 
  geom_errorbar(aes(ymin=y-err.y, ymax=y+err.y), width=0.05) + 
  geom_errorbarh(aes(xmin=x-err.x, xmax=x+err.x), height=0.05) + 
  scale_y_reverse()

在此处输入图像描述

于 2015-07-15T19:52:09.237 回答