2013-05-27 1 views
4

abline()을 사용하고 x 축에 날짜가 포함 된 플롯에 수직선을 추가 할 수 있습니까? 많은 가능한 날짜 형식을 시도했지만 작동하도록 가져올 수 없습니다.시계열 플롯에 세로선 추가하기

+1

재현 가능한 예제를 제공하십시오. – juba

답변

9

예, 가장 쉬운 방법은 Date 객체 abline에 제공하는 것입니다 : R.에있다 제임스의 대답에 추가

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

다른 date/time formats 때때로 날짜는 POSIX 형식으로 저장됩니다 그리고 당신은 그들을 플롯 할 때 ablineas.Date이 작동하지 않습니다.

이 경우

당신은 시계열 플롯 (TS 객체 plot.ts) 소수점 형태에

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

x 축은을 사용해야합니다. 예를 들어 축 2의 2016은 2016.25입니다.

POSIXct 및 날짜 날짜를 abline()이 허용하는 10 진수 형식으로 변환하는 함수 (decimal_date())가있는 "lubridate"패키지가 있습니다. 그래서 나는 플롯에 수직선을 넣고 날짜 형식으로 넣고 싶습니다. 그런 다음 decimal_date 함수와 윤곽선에 넣을 수 있습니다.

install.packages("lubridate") 

library(lubridate) 

[YOUR PLOT CODE] 

date1 <- ymd("2013-08-01") 

abline(v=decimal_date(date1)) 
관련 문제