#r #plot #time-series
#r #построение графика #временные ряды
Вопрос:
Я ищу, как сделать так, чтобы 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), кто-нибудь, кто может это сделать …?
Ответ №1:
Используйте 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))
Комментарии:
1. Это потрясающе… Я думал, что это уже преобразовано POSIXct, большое вам спасибо за вашу помощь!