我想使用以下函数在ggplot中绘制两组,例如a1, a2
和b1, b2
的垂直线r
。
myline = data.frame(vv = c(a1 = 25, a2 = 28, b1 = 52, b2 = 53))
set.seed(100)
d = data.frame(y = c(rnorm(100,5,1), rnorm(100, 2,4)), x = 1:200)
ggplot(data = d) + geom_line(aes(x, y), color = "steelblue") +
geom_vline(data = myline, aes(xintercept=as.numeric(vv)), col= 'red', size = 0.8)
我正在尝试以不同的颜色分隔a
和b
组。我怎样才能做到这一点?非常感谢您的建议。
要使用不同颜色的垂直线,请vv
用作的颜色geom_vline
。然后使用设置选择的颜色scale_color_manual
。
还要注意的是,as.numeric(vv)
当没有必要为xintercept
美学设置值时,str(myline)
将显示vv
已经是数字。
ggplot(data = d, aes(x, y)) +
geom_line(color = "steelblue") +
geom_vline(data = myline,
aes(xintercept = vv, color = factor(vv)),
size = 0.4) +
scale_color_manual(values = c("coral", "coral4", "orange", "orange4"))
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句