ggplot geom vline在x轴上的两个日期之间

时间:2019-02-23 02:42:56

标签: r ggplot2 geom-vline

是否可以在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)

enter image description here

我尝试躲避位置

1 个答案:

答案 0 :(得分:3)

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

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)

Flask documentation on app context(v0.2.1)于2019-02-22创建