如何在点下分层?

时间:2017-11-28 22:45:13

标签: r ggplot2

我想在我的观点下放一条丝带,但是当我尝试时,我遇到了一个错误。这是一个(太)可重复的最小例子; x中的d1是一个因素,因为我也绘制了箱形图,我把它们拿出来使其最小化,但这实际上让人感到困惑!

这个版本工作正常,但功能区掩盖了我的观点!

d1 <- data.frame(x=factor(c("a", "b"), y=c(1.3, 1.5))
d2 <- data.frame(x=c(0,3), g=1, lwr=1, upr=2)
ggplot(d1) + aes(x,y) +
  geom_point() +
  geom_ribbon(aes(x=x,ymin=lwr,ymax=upr), fill="gray80", data=d2, inherit.aes=FALSE)

但是当我只是交换图层的顺序时,我收到错误!

ggplot(d1) + aes(x,y) +
  geom_ribbon(aes(x=x,ymin=lwr,ymax=upr), fill="gray80", data=d2, inherit.aes=FALSE) +
  geom_point()
## Error: Discrete value supplied to continuous scale

我可以简单地使用alpha来混合它,但我希望我的功能区的颜色与其他数字相匹配。

ggplot(d1) + aes(x,y) +
  geom_point() +
  geom_ribbon(aes(x=x,ymin=lwr,ymax=upr), alpha=0.2, data=d2, inherit.aes=FALSE)

0 个答案:

没有答案