我正在使用ggplot2生成一个相当简单的比例图,该图与一个整数值预测值相对应。我使用geom_errorbar来显示每个点估计的不确定性。
例如:
require(ggplot2)
mydata <- data.frame(my_x = 70:99,
my_y = seq(0.7,0.3,length.out=30),
my_lower = seq(0.6,0.2,length.out=30),
my_upper = seq(0.8,0.4,length.out=30))
ggplot(mydata,aes(x=my_x)) + geom_point(aes(y=my_y)) +
geom_errorbar(aes(ymin=my_lower, ymax=my_upper)) +
xlim(70,80)出于很大的美学原因,我使用xlim()来设置x轴的限制(就像您一样)。但是这删除了指示最小和最大x值处的误差条的界限的水平线。我认为这是因为ggplot2试图在绘图区域之外绘制一条线(函数调用从geom_path打印一些关于缺少值的警告)。

我可以预先清除不需要的行的数据,或者在ggplot调用中包含一条subset语句,但我觉得在放大绘图时有/应该有一个更干净的解决方案。有什么想法吗?
发布于 2014-06-19 18:09:54
有点老生常谈,但似乎很管用:
ggplot(mydata,aes(x=my_x)) + geom_point(aes(y=my_y)) +
geom_errorbar(aes(ymin=my_lower, ymax=my_upper)) +
coord_cartesian(xlim=c(69.5,80.5))发布于 2014-06-19 19:58:53
您可以尝试减小错误条的宽度。
ggplot(mydata,aes(x=my_x)) + geom_point(aes(y=my_y)) +
geom_errorbar(aes(ymin=my_lower, ymax=my_upper),width=0.25)https://stackoverflow.com/questions/24303861
复制相似问题