Maison >développement back-end >Tutoriel Python >Comment mettre à jour dynamiquement les tracés Matplotlib avec les données d'un port série ?
Mise à jour dynamique du tracé dans Matplotlib
La gestion de la visualisation des données en temps réel peut présenter des défis, en particulier lorsque l'on recherche des méthodes permettant de mettre à jour efficacement les tracés sans gêner performances ou le recours à des intervalles de temps imprévisibles. Cette enquête explore des solutions viables pour mettre à jour dynamiquement les tracés en fonction des données reçues d'un port série.
Pour répondre au problème exprimé concernant la lenteur des performances lors du redessinage répété de l'intégralité du tracé, la solution suivante utilise un mécanisme d'animation dans matplotlib. pour animer les données dans le temps :
import matplotlib.pyplot as plt import numpy hl, = plt.plot([], []) def update_line(hl, new_data): hl.set_xdata(numpy.append(hl.get_xdata(), new_data)) hl.set_ydata(numpy.append(hl.get_ydata(), new_data)) plt.draw() # Call update_line when receiving data from the serial port to update the plot incrementally
Cette approche étend efficacement les données existantes sans redessiner complètement, répondant au besoin spécifique de mettre à jour le tracé uniquement lorsque de nouvelles données sont reçues.
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!