如何将geom_line与字符串x轴一起使用

时间:2015-01-16 14:48:16

标签: r ggplot2

代码是这样的:

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))

以上所有代码都可以。但我想在&#34; bb&#34;中添加vline。和&#34; cc&#34;。因此,请使用以下代码:

v <- c("bb", "cc")
p <- p + geom_vline(xintercept=c)

因为我没有足够的权利提出图像。但是任何运行代码的人都可以看到vline没有像我们想象的那样显示。

我尝试使用as.numeric,就像x轴是Date一样,但它失败了。我也尝试使用v&lt; -c(2,3),但它也失败了。

那么当x轴是字符串时如何使用geom_vline?

1 个答案:

答案 0 :(得分:3)

geom_vline的文档可以改进。你不能传递它的字符。

v <- factor(c("bb", "cc"), 
            levels=c("aa", "bb", "cc", "dd"))

p + geom_vline(xintercept = as.integer(v))