Tracés Matplotlib détachables pour le calcul simultané
Dans le domaine de la visualisation de données, la génération de tracés interactifs est souvent un aspect crucial. Matplotlib, une bibliothèque Python populaire, offre la possibilité de créer des tracés statiques et interactifs. Cependant, les utilisateurs peuvent rencontrer des limitations lorsqu'ils tentent de détacher les tracés matplotlib de l'exécution de leur code pour permettre des calculs en cours.
Défi : détacher les tracés de l'exécution du code
Considérez les éléments suivants Extrait de code Python :
from matplotlib.pyplot import * plot([1,2,3]) show() # other code
Après avoir exécuté ce code, une fenêtre de tracé apparaît. Cependant, le problème réside dans la nécessité de quitter la fenêtre de tracé avant que le programme puisse poursuivre les calculs. L'exploration interactive des résultats intermédiaires pendant que le programme poursuit ses calculs devient impossible.
Solution : utiliser des appels Matplotlib non bloquants
Pour surmonter ce défi, matplotlib propose plusieurs appels qui peut être utilisé sans bloquer l’exécution du code. Un de ces appels est draw(). En incorporant les modifications suivantes :
from matplotlib.pyplot import plot, draw, show plot([1,2,3]) draw() print('continue computation') # at the end call show to ensure window won't close. show()
L'exécution de ce code permet à la fenêtre de tracé de s'afficher immédiatement pendant que le programme poursuit d'autres tâches de calcul. La fonction draw() met à jour efficacement le tracé sans bloquer l'exécution du code.
Une autre méthode consiste à utiliser le mode interactif dans matplotlib :
from matplotlib.pyplot import plot, ion, show ion() # enables interactive mode plot([1,2,3]) # result shows immediatelly (implicit draw()) print('continue computation') # at the end call show to ensure window won't close. show()
Activation du mode interactif dans matplotlib, indiqué par l'ion( ), permet au tracé de se mettre à jour et de s'afficher en temps réel au fur et à mesure de la progression des calculs, sans avoir besoin d'appels explicites à draw(). L'appel show() à la fin garantit que la fenêtre de tracé reste ouverte.
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!