R ggplot中的垂直线

R ggplot中的垂直线,r,ggplot2,R,Ggplot2,当我试图在ggplot的col4上只绘制一条垂直线时,知道为什么在ggplot的其他列上会有多行吗 library(tidyr) library(dplyr) library(ggplot2) Col0 <- c("AA", "BB", "CC", "DD","EE","FF") Col1 <- c(2,2,2,6,1,1) Col2 <- c(2,2,2,1,3,4) Col3 <- c(2,2,3,4,6,6) Col4 <- c(2,2,3,1,2,1) C

当我试图在ggplot的col4上只绘制一条垂直线时,知道为什么在ggplot的其他列上会有多行吗

library(tidyr)
library(dplyr)
library(ggplot2)

Col0 <- c("AA", "BB", "CC", "DD","EE","FF")
Col1 <- c(2,2,2,6,1,1)
Col2 <- c(2,2,2,1,3,4)
Col3 <- c(2,2,3,4,6,6)
Col4 <- c(2,2,3,1,2,1)
Col5 <- c(2,1,1,1,1,4)
Col6 <- c(2,4,2,5,4,4)
Col7 <- c(2,4,2,5,4,4)
Col8 <- c(2,2,3,4,5,4)
Col9 <- c(1,3,3,2,2,2)
df<-data.frame(Col0,Col1,Col2,Col3,Col4,Col5,Col6,Col7,Col8,Col9)


plotDat <- df %>%
  gather(Col, Val, -Col0)%>%
  split(Col0)

pdf("plots.pdf")
lapply(names(plotDat), function(i){
  ggplot(plotDat[[i]], aes(Col, Val, group = Col0, col = Col0)) +
    geom_line() +
    geom_vline(xintercept = Col4) +
    geom_vline(xintercept = Col4, linetype="dotted", color = "blue", size=1.5)+
    ggtitle(paste("Plot", i))
  })
dev.off()
library(tidyr)
图书馆(dplyr)
图书馆(GG2)

Col0如果要在(离散的)x轴的第四个断点上显示一条V线,请设置
xintercept=4

因此,将
geom\u vline
两行中的
Col4
替换为
4

pdf("plots.pdf")
lapply(names(plotDat), function(i){
  ggplot(plotDat[[i]], aes(Col, Val, group = Col0, col = Col0)) +
    geom_line() +
    geom_vline(xintercept = 4) +
    geom_vline(xintercept = 4, linetype="dotted", color = "blue", size=1.5)+
    ggtitle(paste("Plot", i))
})
dev.off()

是否要传递列名(x轴)以进行截取?@SamsungNeo,可能…,将其作为一个因子,并尝试引用正确的级别