1

有没有办法在 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)

在此处输入图像描述

我试过位置闪避

4

1 回答 1

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)

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

于 2019-02-23T02:50:13.103 回答