Maison >développement back-end >Tutoriel Python >Comment puis-je mettre à jour efficacement les tracés Matplotlib sans retracer ?
Mettre à jour efficacement les tracés Matplotlib
Pour mettre à jour les tracés dans Matplotlib tout en évitant les tracés répétés, envisagez les options suivantes :
1. Effacement et retraçage avec la méthode Clear
Appelez graph1.clear() et graph2.clear() avant de redessiner le tracé. Cela garantit une table rase, mais peut être lent.
2. Mise à jour des données des objets de tracé
Mettez à jour les données des objets de tracé existants au lieu de les retracer entièrement. C'est plus rapide, mais nécessite que la forme des données reste constante. Un ajustement manuel de la limite de l'axe peut être nécessaire.
Pour démontrer la deuxième option :
import matplotlib.pyplot as plt import numpy as np # Define initial data x = np.linspace(0, 6*np.pi, 100) y = np.sin(x) # Create figure and plot fig = plt.figure() ax = fig.add_subplot(111) line1, = ax.plot(x, y, 'r-') # Iterate through phases and update data for phase in np.linspace(0, 10*np.pi, 500): line1.set_ydata(np.sin(x + phase)) fig.canvas.draw() fig.canvas.flush_events()
Cette méthode met à jour efficacement les données du tracé en temps réel sans redessiner l'intégralité du tracé.
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!