Comment tracer une série chronologique dans R (avec exemples)



Souvent, vous souhaiterez peut-être tracer une série chronologique dans R pour visualiser comment les valeurs de la série chronologique évoluent au fil du temps.

Ce tutoriel explique comment le faire rapidement à l’aide de la bibliothèque de visualisation de données ggplot2 .

Tracé de série chronologique de base dans R

Supposons que nous ayons l’ensemble de données suivant dans 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)

        date    sales
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

Nous pouvons utiliser le code suivant pour créer un tracé de série chronologique de base pour cet ensemble de données à l’aide de ggplot2 :

library(ggplot2)

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

#display time series plot
p

Tracé de série chronologique de base dans R

Formater les dates sur l’axe X

Nous pouvons utiliser la fonction scale_x_date() * pour formater les dates affichées le long de l’axe des x du tracé. Cette fonction prend les arguments suivants :

  • %d : jour sous forme de nombre compris entre 0 et 31
  • %a : jour de semaine abrégé (par exemple « mar »)
  • %A : jour de la semaine non abrégé (par exemple « mardi »)
  • %m : Mois entre 0 et 12
  • %b : mois abrégé (par exemple « Jan »)
  • %B : mois non abrégé (par exemple « janvier »)
  • %y : année à 2 chiffres (par exemple « 21 »)
  • %Y : année à 4 chiffres (par exemple « 2021 »)
  • %W : Semaine de l’année entre 0 et 52

* Pour que cette fonction fonctionne, la variable de l’axe des x doit être une variable de date. Si ce n’est pas déjà le cas, vous pouvez rapidement le convertir en un seul en utilisant as.Date( variable_name) .

Le code suivant montre comment utiliser l’un de ces formats en pratique :

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

Tracé de séries chronologiques avec des dates personnalisées dans R

Vous pouvez également ajouter des pauses plus fréquentes (ou peu fréquentes) le long de l’axe des x en utilisant l’argument date_breaks . Par exemple, nous pourrions afficher les dates toutes les deux semaines le long de l’axe des x :

p + scale_x_date(date_breaks = "2 week")

Série chronologique avec sauts de date sur l'axe des x dans R

Nous pouvons également facilement incliner les étiquettes de l’axe des X en utilisant l’argument suivant :

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

Inclinez les étiquettes de l'axe X dans ggplot2

Enfin, nous pouvons modifier le thème, les étiquettes des axes et le titre pour rendre le tracé de la série chronologique plus attrayant visuellement :

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

Série chronologique avec thème ggplot personnalisé dans R

Ressources additionnelles

Un guide complet des meilleurs thèmes ggplot2
Le guide complet des titres ggplot2
Comment créer des tracés côte à côte dans ggplot2

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *