Cara merencanakan deret waktu di r (dengan contoh)


Seringkali, Anda mungkin ingin memplot deret waktu di R untuk memvisualisasikan bagaimana nilai-nilai dalam deret waktu berubah seiring waktu.

Tutorial ini menjelaskan cara melakukannya dengan cepat menggunakan pustaka visualisasi data ggplot2 .

Plot deret waktu dasar di R

Misalkan kita memiliki kumpulan data berikut di 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

Kita dapat menggunakan kode berikut untuk membuat plot deret waktu dasar untuk kumpulan data ini menggunakan ggplot2:

 library (ggplot2)

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

#display time series plot
p

Plot deret waktu dasar di R

Format tanggal pada sumbu X

Kita dapat menggunakan fungsi scale_x_date() * untuk memformat tanggal yang ditampilkan sepanjang sumbu x plot. Fungsi ini mengambil argumen berikut:

  • %d: hari sebagai angka antara 0 dan 31
  • %a: hari kerja yang disingkat (misalnya “Selasa”)
  • %A: hari yang tidak disingkat dalam seminggu (misalnya “Selasa”)
  • %m : Bulan antara 0 dan 12
  • %b: bulan disingkat (misalnya “Jan”)
  • %B: bulan tidak disingkat (misalnya “Januari”)
  • %y: 2 digit tahun (misalnya “21”)
  • %Y: 4 digit tahun (misalnya “2021”)
  • %W: Minggu dalam setahun antara 0 dan 52

* Agar fungsi ini berfungsi, variabel sumbu x harus berupa variabel tanggal. Jika belum, Anda dapat dengan cepat mengonversinya menggunakan as.Date( variabel_name) .

Kode berikut menunjukkan cara menggunakan salah satu format ini dalam praktiknya:

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

Merencanakan deret waktu dengan tanggal khusus di R

Anda juga dapat menambahkan jeda yang lebih sering (atau jarang) di sepanjang sumbu x menggunakan argumen date_breaks . Misalnya, kita dapat menampilkan tanggal setiap dua minggu di sepanjang sumbu x:

 p + scale_x_date ( date_breaks = " 2 week ") 

Deret waktu dengan lompatan tanggal pada sumbu x di R

Kita juga dapat dengan mudah mengubah label sumbu x menggunakan argumen berikut:

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

Miringkan label sumbu X di ggplot2

Terakhir, kita dapat mengubah tema, label sumbu, dan judul untuk membuat plot deret waktu lebih menarik secara visual:

 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 

Deret waktu dengan tema ggplot khusus di R

Sumber daya tambahan

Panduan lengkap tema ggplot2 terbaik
Panduan lengkap untuk judul ggplot2
Cara membuat plot berdampingan di ggplot2

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *