Vertical lines between points with ggplot2

后端 未结 3 1000
爱一瞬间的悲伤
爱一瞬间的悲伤 2021-01-06 02:45

I am new to ggplot2 and cannot figure out how to draw vertical dotted grey lines between

the points/dots along the x-axis. Here\'s my example code:

3条回答
  •  暖寄归人
    2021-01-06 03:33

    There's definitely better ways than this but:

    d1 <- runif(10,10,15)
    d2 <- runif(10,25,30)
    d3 <- rep(1:10,2)
    df <- data.frame(x = d3, y = c(d1,d2))
    df$place <- rep(c("min", "max") , each=10)
    
    df_wide <- reshape(df, direction = "wide", v.names="y", timevar="place", idvar="x") 
    
    ggplot(df, aes(x=x, y=y)) +
        geom_segment(aes(x=x, xend=x, y=y.min, yend=y.max), 
            size=1, data=df_wide, colour="grey70", linetype="dotted") +
        geom_point() 
    

    Though I'm not sure what you mean by "along the x axis", maybe you want it to extend top to bottom not just between the points.

提交回复
热议问题