Graphique en ligne avec points de données avec Matplotlib

PythonPythonBeginner
Pratiquer maintenant

This tutorial is from open-source community. Access the source code

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, nous allons apprendre à créer un graphique en ligne avec des points de données à l'aide de Matplotlib en Python. Nous utiliserons la classe EventCollection de Matplotlib pour marquer les emplacements des points de données x et y sur les axes respectifs pour chaque courbe.

Conseils sur la machine virtuelle

Une fois le démarrage de la machine virtuelle terminé, cliquez dans le coin supérieur gauche pour basculer vers l'onglet Carnet de notes pour accéder au carnet Jupyter pour pratiquer.

Parfois, vous devrez peut-être attendre quelques secondes pour que le carnet Jupyter ait fini de charger. La validation des opérations ne peut pas être automatisée en raison des limites du carnet Jupyter.

Si vous rencontrez des problèmes pendant l'apprentissage, n'hésitez pas à demander à Labby. Donnez votre feedback après la session, et nous résoudrons rapidement le problème pour vous.

Importez les bibliothèques nécessaires

Tout d'abord, nous devons importer les bibliothèques requises. Nous utiliserons numpy pour créer des données aléatoires, matplotlib.pyplot pour créer le graphique et EventCollection de matplotlib.collections pour marquer les emplacements des points de données.

import matplotlib.pyplot as plt
import numpy as np
from matplotlib.collections import EventCollection

Créez des données aléatoires

Nous allons créer des données aléatoires pour deux courbes à l'aide de la fonction numpy.random.random(). Nous allons générer deux ensembles de 10 nombres aléatoires compris entre 0 et 1 et les stocker dans un tableau.

## create random data
xdata = np.random.random([2, 10])

Triez les données

Pour obtenir des courbes propres, nous allons trier les données à l'aide de la méthode sort().

## split the data into two parts
xdata1 = xdata[0, :]
xdata2 = xdata[1, :]
## sort the data so it makes clean curves
xdata1.sort()
xdata2.sort()

Créez des points de données y

Nous allons créer quelques points de données y pour chaque courbe en effectuant certaines opérations mathématiques sur les points de données x triés.

## create some y data points
ydata1 = xdata1 ** 2
ydata2 = 1 - xdata2 ** 3

Créez le graphique

Nous allons créer le graphique à l'aide de la fonction matplotlib.pyplot.plot().

## plot the data
fig = plt.figure()
ax = fig.add_subplot(1, 1, 1)
ax.plot(xdata1, ydata1, color='tab:blue')
ax.plot(xdata2, ydata2, color='tab:orange')

Créez les événements

Nous allons créer les événements marquant les points de données x et y à l'aide de la fonction EventCollection().

## create the events marking the x data points
xevents1 = EventCollection(xdata1, color='tab:blue', linelength=0.05)
xevents2 = EventCollection(xdata2, color='tab:orange', linelength=0.05)

## create the events marking the y data points
yevents1 = EventCollection(ydata1, color='tab:blue', linelength=0.05,
                           orientation='vertical')
yevents2 = EventCollection(ydata2, color='tab:orange', linelength=0.05,
                           orientation='vertical')

Ajoutez les événements au graphique

Nous allons ajouter les événements au graphique à l'aide de la fonction matplotlib.pyplot.add_collection().

## add the events to the axis
ax.add_collection(xevents1)
ax.add_collection(xevents2)
ax.add_collection(yevents1)
ax.add_collection(yevents2)

Définissez les limites et ajoutez un titre

Nous allons définir les limites des axes x et y et ajouter un titre au graphique à l'aide des fonctions matplotlib.pyplot.xlim(), matplotlib.pyplot.ylim() et matplotlib.pyplot.title().

## set the limits
ax.set_xlim([0, 1])
ax.set_ylim([0, 1])
ax.set_title('line plot with data points')

Affichez le graphique

Enfin, nous allons afficher le graphique à l'aide de la fonction matplotlib.pyplot.show().

## display the plot
plt.show()

Sommaire

Dans ce laboratoire, nous avons appris à créer un graphique en ligne avec des points de données à l'aide de Matplotlib en Python. Nous avons utilisé la classe EventCollection de Matplotlib pour marquer les emplacements des points de données x et y sur les axes respectifs pour chaque courbe.