9.2 Encodage des données qui évoluent au fil du temps
Objectifs d'apprentissage
À la fin de cette section, vous devriez être en mesure de :
- 9.2.1 Créer et interpréter des graphiques étiquetés pour identifier visuellement les tendances des données au fil du temps.
- 9.2.2 Utiliser Python pour générer diverses visualisations de données pour des données de séries temporelles.
Les chercheurs s'intéressent fréquemment à l'analyse et à l'interprétation des données au fil du temps. Rappelez-vous, d'après Séries temporelles et prévisions, que tout ensemble de données constitué de mesures numériques d'une même variable collectées et organisées selon des intervalles de temps réguliers peut être considéré comme des données de séries temporelles. Un graphique de séries temporelles permet aux scientifiques des données d'identifier visuellement les tendances des données au fil du temps. Par exemple, un administrateur d'université s'intéresse de près au suivi des inscriptions d'un semestre à l'autre. Un directeur marketing s'intéresse au suivi des revenus trimestriels d'une entreprise. Un investisseur peut s'intéresser au suivi mensuel du cours des actions.
Dans de nombreux cas, un graphique de séries temporelles peut révéler des motifs saisonniers ou des cycles, ce qui constitue une information importante pour orienter de nombreuses décisions commerciales, telles que la planification de campagnes marketing ou la définition de niveaux de stocks optimaux. Les graphiques de séries temporelles fournissent également des données importantes pour les méthodes de prévision, qui tentent de prédire les tendances futures à partir de données passées.
Reportez-vous à Exemples de données de séries temporelles pour les bases de la visualisation de données de séries temporelles dans Excel et Python. La courbe de tendance et la composante tendance-cycle explorent la visualisation d'une courbe de tendance. Nous explorerons ici plus en détail les graphiques linéaires, les courbes de tendance et l'utilisation de Python pour la visualisation des données de séries temporelles.
Graphiques linéaires et courbes de tendance
Un graphique de séries temporelles est utilisé dans de nombreux domaines tels que la finance, la santé, l'économie, etc., pour visualiser les mesures de données au fil du temps. Pour construire un graphique de séries temporelles, l'axe horizontal sert à représenter les incréments de temps, et l'axe vertical sert à représenter les valeurs de la variable mesurée, comme les revenus, les inscriptions, le niveau des stocks, etc. De cette façon, chaque point du graphique correspond à un instant précis et à une quantité mesurée. Les points sur le graphique sont généralement reliés par des lignes droites dans l'ordre de leur apparition. Une fois le graphique créé, un chercheur peut identifier des tendances ou des motifs dans les données afin d'orienter la prise de décision.
Exemple 9.5
Problème
Les données suivantes représentent les effectifs inscrits dans un collège communautaire sur une période de huit ans. Créez un graphique de séries temporelles de ces données et commentez les éventuelles tendances (Tableau 9.3).
| Année | Inscriptions |
|---|---|
| 1 | 8641 |
| 2 | 9105 |
| 3 | 9361 |
| 4 | 9895 |
| 5 | 9230 |
| 6 | 8734 |
| 7 | 8104 |
| 8 | 7743 |
Solution
Pour créer un graphique de séries temporelles pour ce jeu de données, commencez par créer l'axe horizontal en traçant les incréments de temps, des années 1 à 8. Pour l'axe vertical, utilisez une échelle numérique allant de 4 000 à 12 000, car cela couvre l'étendue des données numériques relatives aux inscriptions.
Ensuite, pour chaque ligne du tableau, placez le point correspondant sur le graphique. De cette façon, chaque point du graphique correspond à un instant précis et à une quantité mesurée. Par exemple, la première ligne du tableau montre le point de données valant (1, 8641). Pour placer ce point, repérez l'emplacement correspondant à l'année 1 sur l'axe horizontal et à une valeur d'inscription de 8641 sur l'axe vertical. À l'intersection de la position horizontale et de la position verticale, tracez un point unique pour représenter cette valeur de données . Répétez ce processus pour chaque ligne du tableau. Comme le tableau comporte huit lignes, on s'attend à observer huit points sur le graphique de séries temporelles. Enfin, les points du graphique sont généralement reliés par des lignes droites dans l'ordre chronologique de leur apparition (voir la sortie Python de l'Exemple 9.6).
Utiliser Python pour la visualisation des données de séries temporelles
La visualisation de données est un élément fondamental de la science des données, et Python propose de nombreuses fonctionnalités graphiques intégrées grâce à un paquet nommé matplotlib. Pour importer ce paquet dans un programme Python, utilisez la commande :
import matplotlib.pyplot as plt
Matplotlib contient des fonctions telles que plot qui peuvent être utilisées pour générer des graphiques de séries temporelles.
Après avoir défini les données à représenter graphiquement, la fonction Python plt.plot(x, y) peut être utilisée pour générer le graphique de séries temporelles.
Exemple 9.6
Problème
Utilisez la fonction plot en Python pour créer un graphique de séries temporelles pour le jeu de données présenté dans l'Exemple 9.5.
Solution
Dans le code Python suivant, notez que plt.plot avec l'argument marker indique que des points doivent être tracés aux différents emplacements . De plus, plt.ylim définit l'intervalle pour l'axe des y.
Code Python
# import the matplotlib library
import matplotlib.pyplot as plt
import matplotlib.ticker as ticker
# Define the x-data
x = [1, 2, 3, 4, 5, 6, 7, 8]
# Define the y-data
y = [8641, 9105, 9361, 9895, 9230, 8734, 8104, 7743]
# Use the plot function to generate a time series graph
plt.plot(x, y, marker='o', linestyle='-')
# Set the scale for the y-axis
plt.ylim(6000, 11000) # This sets the y-axis range from 6000 to 11000
# Define a function to format the ticks with commas as thousands separators
def format_ticks(value, tick_number):
return f'{value:,.0f}'
# Apply the custom formatter to the y-axis
plt.gca().yaxis.set_major_formatter(ticker.FuncFormatter(format_ticks))
# Add labels to the x and y axes by using xlabel and ylabel functions
plt.xlabel("Year")
plt.ylabel("Enrollment")
# Add a title using the title function
plt.title("Enrollment at a Community College")
# Show the plot
plt.show()
La sortie obtenue ressemble à ceci :
Le graphique indique que les inscriptions ont augmenté progressivement des années 1 à 4, mais ont ensuite commencé à diminuer des années 4 à 8.
Directives pour créer des visualisations efficaces
Vous avez probablement déjà rencontré des graphiques mal conçus, difficiles à interpréter ou potentiellement trompeurs d'une manière ou d'une autre. Cependant, si vous suivez certaines directives lors de la création de vos visualisations, vous vous assurerez qu'elles sont efficaces et représentent fidèlement les données.
La première règle consiste à s'assurer que votre graphique est clair et facile à comprendre. Vous connaissez peut-être le type de données collectées, mais ce n'est pas forcément le cas de votre public. Donnez un titre et étiquetez chaque axe, en incluant les unités le cas échéant. Mentionnez la source des données lorsque cela est approprié. Utilisez des échelles adaptées pour les axes et évitez les distorsions (c'est-à-dire n'ajustez pas intentionnellement l'échelle pour produire un effet souhaité dans le graphique).
L'utilisation de couleurs pour différencier les données peut constituer un élément important des graphiques et des affichages. Dans l'ensemble, la couleur peut rendre la visualisation plus attrayante et stimulante pour le lecteur. Cependant, il convient de garder certains points essentiels à l'esprit lors de l'utilisation de la couleur. Veillez à appliquer la couleur de manière cohérente pour représenter les mêmes catégories. Assurez-vous qu'il existe un contraste suffisant entre les différentes couleurs pour les distinguer facilement. Par exemple, si vous utilisiez différentes nuances de bleu pour les secteurs d'un diagramme circulaire, il pourrait être difficile pour le lecteur de les distinguer.
Gardez à l'esprit que certains lecteurs peuvent être daltoniens ; il est donc recommandé d'utiliser des palettes de couleurs accessibles aux personnes daltoniennes. La règle la plus fondamentale pour une palette adaptée aux daltoniens consiste à éviter d'associer le vert et le rouge.
Pour aller plus loin
Ressources pour créer des palettes adaptées aux daltoniens
- Le blog Dataviz Best Practices propose des conseils pour créer Les meilleurs graphiques pour les personnes daltoniennes.
- 10 directives essentielles pour une conception adaptée aux daltoniens fournit de plus amples informations sur les types de daltonisme et sur les moyens de rendre votre conception visuelle accessible et attrayante pour les utilisateurs daltoniens.
Il faut également savoir que les couleurs peuvent avoir des significations différentes selon les cultures. Réduisez au minimum le nombre de couleurs utilisées dans votre visualisation. Une règle empirique consiste à limiter le nombre de couleurs à trois ou cinq pour éviter une palette trop confuse.
Créez le graphique en pensant à votre public. Si le graphique s'adresse à un public général, il doit être aussi simple que possible et facile à interpréter, par exemple à l'aide de diagrammes circulaires ou de diagrammes à barres. N'incluez pas trop de catégories dans votre diagramme circulaire ; si vous avez plus de cinq ou six catégories, vous devriez envisager un autre type de graphique. Pensez à regrouper les catégories lorsque cela est pertinent par souci de simplicité. (Une catégorie « autre » peut parfois être utilisée pour regrouper les catégories aux effectifs très faibles.) Si le graphique est destiné à un public plus technique ou à des analyses plus complexes, un affichage plus détaillé, comme un nuage de points avec une droite de régression et des limites de confiance, peut être approprié. (La visualisation des données à l'aide de nuages de points est traitée dans Visualisation de données multivariées et de réseaux avec Python.)
Sélectionner le meilleur type de visualisation
Lors de la création de graphiques et d'affichages pour visualiser des données, le scientifique des données doit déterminer quel type de graphique conviendra le mieux aux données collectées et transmettra le plus fidèlement le message qu'elles révèlent. Cette section offre quelques conseils sur le type de graphique optimal pour différents scénarios.
Avant d'aborder la manière de choisir la meilleure visualisation, il est important de prendre en compte le type de données présentées. Rappelez-vous que les données peuvent être divisées en deux grandes catégories : les données qualitatives (qualitative data) (qui décrivent des catégories ou des groupes) et les données quantitatives (quantitative data) (données numériques), et que les données quantitatives sont en outre classifiées comme discrètes (discrete) (généralement des dénombrements) et continues (continuous) (généralement des mesures pouvant prendre n'importe quelle valeur dans un intervalle donné). Vous devez d'abord déterminer clairement le type de données à illustrer.
Ensuite, examinez attentivement l'objectif de la visualisation — c'est-à-dire, que cherchez-vous à accomplir avec ce graphique ou cette représentation ? Que vous révèlent vos données ? Comment sont-elles distribuées et quels motifs ou relations souhaitez-vous mettre en évidence ? Vous pouvez chercher à comparer différents groupes ou catégories, ou souhaiter montrer comment les données sont distribuées sur un certain intervalle. Rappelez-vous, d'après la discussion précédente sur la corrélation et la régression, que l'on cherche souvent à mettre en évidence des corrélations ou des relations entre des variables quantitatives. Le Tableau 9.4 propose quelques suggestions pour choisir la méthode graphique la plus appropriée en fonction de vos objectifs et de votre type de données.
| Objectif de la visualisation | Type de données | Méthodes de visualisation à envisager |
|---|---|---|
| Montrer une comparaison de différents groupes ou catégories | Qualitatives ou quantitatives |
|
| Montrer des corrélations ou des relations entre des variables quantitatives | Quantitatives |
|
| Montrer comment un tout est divisé en parties | Quantitatives |
|
| Montrer comment les données sont distribuées sur un intervalle | Quantitatives |
|