Graphique en ligne animé

MatplotlibMatplotlibBeginner
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

Ce tutoriel vous guidera tout au long du processus de création d'un graphique en ligne animé à l'aide de la bibliothèque Python Matplotlib. Le graphique en ligne affichera une onde sinusoïdale dont l'amplitude changera au fil du temps.

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 d'adresses 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 limitations 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églerons rapidement le problème pour vous.

Importation des bibliothèques

La première étape consiste à importer les bibliothèques nécessaires. Nous utiliserons Matplotlib pour créer le graphique et NumPy pour générer des données.

import matplotlib.pyplot as plt
import numpy as np
import matplotlib.animation as animation

Initialiser la figure et les axes

Ensuite, nous devons initialiser la figure et les axes pour le graphique. Cela peut être fait à l'aide de la fonction subplots() de Matplotlib.

fig, ax = plt.subplots()

Générer des données

Dans cette étape, nous allons générer les données pour le graphique en ligne. Nous utiliserons la fonction arange() de NumPy pour générer un tableau de valeurs pour l'axe des x, et la fonction sin() pour générer un tableau de valeurs pour l'axe des y pour une onde sinusoïdale.

x = np.arange(0, 2*np.pi, 0.01)
line, = ax.plot(x, np.sin(x))

Définir la fonction d'animation

La fonction d'animation sera appelée par la fonction FuncAnimation() et servira à mettre à jour le graphique avec de nouvelles données. Dans cet exemple, nous allons mettre à jour les valeurs de l'axe des y du graphique en ligne avec une onde sinusoïdale dont l'amplitude change au fil du temps.

def animate(i):
    line.set_ydata(np.sin(x + i / 50))  ## mettre à jour les données.
    return line,

Créer l'objet d'animation

Maintenant, nous pouvons créer l'objet d'animation à l'aide de la fonction FuncAnimation(). Nous passerons l'objet figure, la fonction d'animation, l'intervalle de mise à jour et le nombre d'images à enregistrer.

ani = animation.FuncAnimation(
    fig, animate, interval=20, blit=True, save_count=50)

Afficher le graphique

Enfin, nous pouvons afficher le graphique à l'aide de la fonction show() de Matplotlib.

plt.show()

Sommaire

Dans ce tutoriel, nous avons appris à créer un graphique en ligne animé à l'aide de la bibliothèque Python Matplotlib. Nous avons initialisé la figure et les axes, généré des données, défini la fonction d'animation et créé l'objet d'animation. Nous avons ensuite affiché le graphique à l'aide de la fonction show().