代码是这样的:
dt5 <- data.frame(x=c("aa", "bb", "cc", "dd"), y=c(1,2,3,4))
p <- ggplot(dt5)
p <- p + geom_point(aes(x=x, y=y, group=x))
以上所有代码都可以正常工作。但是我想在“ bb”和“ cc”中添加vline。因此,使用以下代码:
v <- c("bb", "cc")
p <- p + geom_vline(xintercept=c)
由于我没有足够的权利来张贴图片。但是任何运行该代码的人都可以看到该vline没有按照我们的想法显示。
我尝试使用as.numeric就像x轴是Date一样,但是失败了。我也尝试使用v <-c(2,3),但是它也失败了。
那么,当x轴是字符串时,如何使用geom_vline?
的文档geom_vline
有待改进。您不能传递字符。
v <- factor(c("bb", "cc"),
levels=c("aa", "bb", "cc", "dd"))
p + geom_vline(xintercept = as.integer(v))
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句