首页 > 解决方案 > 当 x 轴是 r 中的日期格式时使用 plot abline()

问题描述

当数据为时间序列格式(日期格式)时,我正在寻找使 abline() 工作良好但是,我找不到任何明确的解决方案,我的数据如下:

    X                                    Y
1   2018-04-01 00:00:34                  3.58
2   2018-04-01 00:01:38                  2.79
3   2018-04-01 00:02:41                 -2.42
4   2018-04-01 00:03:44                  4.60
5   2018-04-01 00:04:47                  6.05

我实际上做的是:

plot(y = df$Y, x = df$X)
abline(v = "2018-04-01 00:04:47", col = "red")
abline(v = "2018-04-01 00:03:44.000", col = "blue")

但它不起作用(abline 函数),有谁能做到这一点......?

标签: rplottime-series

解决方案


as.POSIXct在里面使用abline

plot(df$X, df$Y)
abline(v = as.POSIXct("2018-04-01 00:04:47"), col = "red")
abline(v = as.POSIXct("2018-04-01 00:03:44.000"), col = "blue")

在此处输入图像描述


样本数据

df <- read.table(text =
    "    X                                    Y
1   '2018-04-01 00:00:34'                  3.58
2   '2018-04-01 00:01:38'                  2.79
3   '2018-04-01 00:02:41'                 -2.42
4   '2018-04-01 00:03:44'                  4.60
5   '2018-04-01 00:04:47'                  6.05", header = T)

df <- transform(df, X = as.POSIXct(X))

推荐阅读