R 将垂直线添加到ggplot2,但不是每个面

R 将垂直线添加到ggplot2,但不是每个面,r,ggplot2,R,Ggplot2,假设我有这个data.frame: my.df <- structure(list(mean = c(0.045729661, 0.030416531, 0.043202944, 0.025600973, 0.040526913, 0.046167044, 0.029352414, 0.021477789, 0.027580529, 0.017614864, 0.020324659, 0.027547972, 0.0268722, 0.030804717, 0.021502093,

假设我有这个
data.frame

my.df <- structure(list(mean = c(0.045729661, 0.030416531, 0.043202944, 
0.025600973, 0.040526913, 0.046167044, 0.029352414, 0.021477789, 
0.027580529, 0.017614864, 0.020324659, 0.027547972, 0.0268722, 
0.030804717, 0.021502093, 0.008342398, 0.02295506, 0.022386184, 
0.030849534, 0.017291356, 0.030957321, 0.01871551, 0.016945678, 
0.014143042, 0.026686185, 0.020877973, 0.028612298, 0.013227244, 
0.010710895, 0.024460647, 0.03704981, 0.019832982, 0.031858501, 
0.022194059, 0.030575241, 0.024632496, 0.040815748, 0.025595652, 
0.023839083, 0.026474704, 0.033000706, 0.044125751, 0.02714219, 
0.025724641, 0.020767752, 0.026480009, 0.016794441, 0.00709195
), std.dev = c(0.007455271, 0.006120299, 0.008243454, 0.005552582, 
0.006871527, 0.008920899, 0.007137174, 0.00582671, 0.007439398, 
0.005265133, 0.006180637, 0.008312494, 0.006628951, 0.005956211, 
0.008532386, 0.00613411, 0.005741645, 0.005876588, 0.006640122, 
0.005339993, 0.008842722, 0.006246828, 0.005532832, 0.005594483, 
0.007268493, 0.006634795, 0.008287031, 0.00588119, 0.004479003, 
0.006333063, 0.00803285, 0.006226441, 0.009681048, 0.006457784, 
0.006045368, 0.006293256, 0.008062195, 0.00857954, 0.008160441, 
0.006830088, 0.008095485, 0.006665062, 0.007437581, 0.008599525, 
0.008242957, 0.006379928, 0.007168385, 0.004643819), parent.origin = structure(c(2L, 
2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 
2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 
2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L), .Label = c("maternal", 
"paternal"), class = "factor"), group = structure(c(4L, 4L, 4L, 
4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = c("F1i:F", 
"F1i:M", "F1r:F", "F1r:M"), class = "factor"), replicate = c(1, 
2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 
5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 
2, 3, 4, 5, 6)), .Names = c("mean", "std.dev", "parent.origin", 
"group", "replicate"), row.names = c(NA, -48L), class = "data.frame")

my.df这是可能的。添加以下行:

 p1 <- p1 + geom_vline(data=data.frame(x= c(0,7,7), group = levels(my.df$group)[-3]), aes(xintercept =  x), size=2 )
p1
 p1 <- p1 + geom_vline(data=data.frame(x= c(0,7,7), group = levels(my.df$group)[-3]), aes(xintercept =  x), size=2 )