R 向时间序列图中添加垂直线

R 向时间序列图中添加垂直线,r,R,是否可以使用abline()并在x轴包含日期的绘图中添加垂直线?我尝试了许多可能的日期格式,但都无法使用。是的,最简单的方法是为abline提供日期对象: x <- as.Date("2013-05-27")+0:99 y <- cumsum(rnorm(100)) plot(x,y) abline(v=as.Date("2013-08-01")) x添加到James的答案中,R中的数据是不同的。有时,日期以POSIX格式存储,并且当您使用as绘制它们时,a行。日期不起作用 在这种

是否可以使用abline()并在x轴包含日期的绘图中添加垂直线?我尝试了许多可能的日期格式,但都无法使用。

是的,最简单的方法是为
abline
提供
日期对象:

x <- as.Date("2013-05-27")+0:99
y <- cumsum(rnorm(100))
plot(x,y)
abline(v=as.Date("2013-08-01"))

x添加到James的答案中,R中的数据是不同的。有时,日期以POSIX格式存储,并且当您使用
as绘制它们时,
a行
。日期
不起作用

在这种情况下,您必须使用

abline(v = as.POSIXct("2013-08-01"))

时间序列图(plot.ts和ts对象)上的x轴为十进制形式。例如,轴线上的2016年第二季度为2016.25

有一个包“lubridate”,它有一个函数(decimal_date()),可以将POSIXct和日期转换为abline()接受的十进制形式。所以我取了我想在图上画一条垂直线的日期,然后把它写成日期形式。然后我可以把它放到十进制的日期函数和abline中

install.packages(“lubridate”)
图书馆(lubridate)
[您的绘图代码]

日期1请提供一个可复制的示例。