Maison > développement back-end > Tutoriel Python > Comment puis-je tracer efficacement des données de séries chronologiques à l'aide de Matplotlib ?

Comment puis-je tracer efficacement des données de séries chronologiques à l'aide de Matplotlib ?

Barbara Streisand
Libérer: 2024-12-06 15:09:12
original
221 Les gens l'ont consulté

How Can I Effectively Plot Time Series Data Using Matplotlib?

Traçage de données de séries chronologiques avec Matplotlib

L'une des forces de Matplotlib réside dans sa capacité à visualiser efficacement les données de séries chronologiques. Cependant, rencontrer des difficultés lorsque l’on tente de tracer le temps sur l’axe des x peut s’avérer frustrant. Abordons ces subtilités et proposons une solution complète.

Formats temporels et conversion

La clé pour débloquer le traçage de séries chronologiques est de comprendre le format de vos données d'horodatage. Matplotlib attend des valeurs temporelles sous forme numérique plutôt que sous le format lisible par l'homme (HH:MM:SS.mmmmmm). Pour que les choses fonctionnent, vous devrez convertir vos horodatages en objets Pythondatetime à l'aide de datetime.strptime.

Représentation numérique avec date2num

Avec vos horodatages au format datetime, l'étape suivante consiste à les traduire dans la langue comprise par Matplotlib. C'est là que date2num entre en jeu. Il convertit les objets datetime en une représentation numérique optimisée pour le traçage matplotlib.

Traçage avec plot_date

Enfin, traçons nos données de séries chronologiques. Matplotlib fournit une fonction appelée plot_date explicitement conçue pour cette tâche. Il faut deux arguments : les dates (générées à partir de nos objets datetime) et les valeurs y (les nombres à virgule flottante que vous souhaitez tracer).

Démonstration de code

Voici un simple extrait de code pour illustrer le processus :

import matplotlib.pyplot as plt
import matplotlib.dates
from datetime import datetime

x_values = [datetime(2021, 11, 18, 12), datetime(2021, 11, 18, 14), datetime(2021, 11, 18, 16)]
y_values = [1.0, 3.0, 2.0]

dates = matplotlib.dates.date2num(x_values)
plt.plot_date(dates, y_values)
plt.show()
Copier après la connexion

Ce code générera un tracé où l'axe des x représente le temps dans le format numérique reconnu par Matplotlib, et l'axe y affiche les valeurs à virgule flottante correspondantes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal