R에서 시계열을 그리는 방법(예제 포함)


종종 시계열의 값이 시간에 따라 어떻게 변하는지 시각화하기 위해 R에서 시계열을 플롯할 수 있습니다.

이 튜토리얼에서는 ggplot2 데이터 시각화 라이브러리를 사용하여 이를 빠르게 수행하는 방법을 설명합니다.

R의 기본 시계열 플로팅

R에 다음과 같은 데이터 세트가 있다고 가정합니다.

 #create dataset
df <- data.frame(date = as . Date (" 2021-01-01 ") - 0:99,
                 sales = runif (100, 10, 500) + seq (50, 149)^2)

#view first six rows
head(df)

        dirty date
1 2021-01-01 2845.506
2 2020-12-31 2837.849
3 2020-12-30 3115.517
4 2020-12-29 2847.161
5 2020-12-28 3374.619
6 2020-12-27 3182.005

다음 코드를 사용하면 ggplot2를 사용하여 이 데이터세트에 대한 기본 시계열 도표를 만들 수 있습니다.

 library (ggplot2)

#create time series plot
p <- ggplot(df, aes (x=date, y=sales)) +
       geom_line()

#display time series plot
p

R의 기본 시계열 플로팅

X축의 날짜 형식 지정

scale_x_date() * 함수를 사용하여 플롯의 x축을 따라 표시되는 날짜 형식을 지정할 수 있습니다. 이 함수는 다음 인수를 사용합니다.

  • %d: 0에서 31 사이의 숫자로 된 일
  • %a: 축약된 평일(예: “Tue”)
  • %A: 축약되지 않은 요일(예: “Tuesday”)
  • %m : 0에서 12 사이의 월
  • %b: 약식 월(예: “Jan”)
  • %B: 축약되지 않은 월(예: “January”)
  • %y: 2자리 연도(예: “21”)
  • %Y: 4자리 연도(예: “2021”)
  • %W: 0에서 52 사이의 주

* 이 기능이 작동하려면 x축 변수가 날짜 변수여야 합니다. 아직 그렇지 않은 경우 as.Date( variable_name) 을 사용하여 빠르게 변환할 수 있습니다.

다음 코드는 실제로 이러한 형식 중 하나를 사용하는 방법을 보여줍니다.

 p + scale_x_date ( date_labels = " %b %Y ") 

R에서 사용자 정의 날짜를 사용하여 시계열 그리기

date_breaks 인수를 사용하여 x축을 따라 더 자주(또는 드물게) 나누기를 추가할 수도 있습니다. 예를 들어, x축을 따라 2주마다 날짜를 표시할 수 있습니다.

 p + scale_x_date ( date_breaks = " 2 week ") 

R의 x축에 날짜 점프가 있는 시계열

다음 인수를 사용하여 x축 레이블을 쉽게 기울일 수도 있습니다.

 p + theme ( axis.text.x = element_text (angle= 50 , hjust= 1 )) 

ggplot2에서 X 축 레이블 기울이기

마지막으로 시계열 도표를 시각적으로 더욱 매력적으로 만들기 위해 테마, 축 레이블 및 제목을 변경할 수 있습니다.

 p <- ggplot(df, aes (x=date, y=sales)) +
       geom_line( color =" turquoise4 ") +
       theme_minimal() + 
       labs(x="", y=" Sales ", title=" Total Sales (Past 100 Days) ") +
       theme( plot.title = element_text (hjust=0.5, size=20, face=" bold "))

p 

R에서 사용자 정의 ggplot 테마를 사용한 시계열

추가 리소스

최고의 ggplot2 테마에 대한 완벽한 가이드
ggplot2 타이틀에 대한 전체 가이드
ggplot2에서 병렬 플롯을 만드는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다