当x轴是因子时,使用ggplot添加垂直线

jbr*_*yer 9 r ggplot2

以下代码用于处理ggplot2的预版本.9.这不可能了吗?

df = data.frame(x = letters[1:26], y=abs(rnorm(26)))
ggplot(df, aes(x=x, y=y)) + geom_bar() + geom_vline(xintercept='m')
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

Error in get(as.character(FUN), mode = "function", envir = envir) : 
   object 'm' of mode 'function' was not found
Run Code Online (Sandbox Code Playgroud)

dic*_*koa 14

我不知道(不记得)你的原版是否曾经使用旧版本的ggplot,但你可以使用另一种方法,如下所示:

ggplot(df, aes(x=x, y=y)) + geom_bar() + geom_vline(xintercept=which(df$x == 'm'))
Run Code Online (Sandbox Code Playgroud)

希望这有帮助!!!