2017-02-19 19 views
0

Рассматривая участок, снабженный следующим кодом:Как добавить вертикальную линию на участке, который имеет xlab в формате времени

x<-seq(as.POSIXct("2016-01-01 00:05:00"), as.POSIXct("2016-01-02 00:00:00"), by = '5 min') 
t<-as.POSIXct("2016-01-01 07:08:32") 
y<-c(1:288) 
df<-data.frame(x,y) 
library('ggplot2') 
p<-ggplot(data=df,aes(x,y))+geom_point() 
p 

Теперь я хочу, чтобы добавить вертикальную линию, которая расположена на 2016-01-01 07:08:32, поэтому я попытался следующее:

p+geom_vline(xintercept=as.POSIXct("2016-01-01 07:08:32")) 

Однако это не решение, и оно возвращает:

Error in Ops.POSIXt((x - from[1]), diff(from)) : 
    '/' not defined for "POSIXt" objects 

Как я могу получить правильный результат?

ответ

0

Вам просто нужно завернуть дату в as.numeric

p+geom_vline(xintercept=as.numeric(as.POSIXct("2016-01-01", format="%Y-%m-%d")))