【问题标题】:ggplot geom vline between two dates on x axisx轴上两个日期之间的ggplot geom vline
【发布时间】:2019-07-17 04:13:25
【问题描述】:

有没有办法在 x 轴上的两个日期之间放置 geomvline。比如下图中的红线。

我的数据如下所示,长度可以是动态的。

df <- data.frame(Date= seq(as.Date("2019-01-11"), as.Date("2019-01-20"), by="days")
,value = runif(10, 0, .99))

ggplot(data = df , aes(x = Date, y = value)) +geom_line()+
scale_x_date(date_labels= "%d-%b-%y",date_breaks  ="1 day")+
geom_vline(aes(xintercept=df[["Date"]][5]),linetype="dotted",col="blue", size=1.5)

我试过位置闪避

【问题讨论】:

    标签: r ggplot2 geom-vline


    【解决方案1】:

    您可以添加小数单位的日期:

    library(ggplot2)
    df <- data.frame(Date= seq(as.Date("2019-01-11"), as.Date("2019-01-20"), by="days")
                     ,value = runif(10, 0, .99))
    ggplot(data = df , aes(x = Date, y = value)) +geom_line()+
      scale_x_date(date_labels= "%d-%b-%y",date_breaks  ="1 day")+
      geom_vline(aes(xintercept=df[["Date"]][5]),linetype="dotted",col="blue", size=1.5) +
      geom_vline(aes(xintercept=df[["Date"]][5]+.5),linetype="solid",col="pink", size=3)
    

    reprex package (v0.2.1) 于 2019 年 2 月 22 日创建

    【讨论】:

      猜你喜欢
      • 2020-02-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-21
      相关资源
      最近更新 更多