Maison >développement back-end >Tutoriel Python >Comment rendre les tracés Matplotlib interactifs pendant le calcul ?

Comment rendre les tracés Matplotlib interactifs pendant le calcul ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-08 14:02:01693parcourir

How to Make Matplotlib Plots Interactive During Computation?

Tracés Matplotlib interactifs pendant le calcul

Lors de la création de visualisations avec Matplotlib, il est souvent souhaitable de continuer à explorer les résultats pendant que les calculs sont en cours. Cependant, le comportement par défaut est de bloquer le calcul jusqu'à ce que la fonction show() soit appelée.

Dissocier des tracés

Pour détacher les tracés du thread de calcul principal, il existe deux approches :

Utilisation de draw() :

Cette méthode permet un redessinage sélectif de l'intrigue. Au lieu d'appeler show(), utilisez draw() après avoir tracé les données. Le calcul reprendra tandis que le tracé reste interactif. Cependant, appeler draw() plusieurs fois peut provoquer un scintillement de l'intrigue.

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()

Activation du mode interactif :

Cette approche utilise le mode interactif de Matplotlib. L'appel de ion() active le mode interactif, qui redessine automatiquement le tracé après chaque commande de traçage. Le calcul se poursuivra tandis que le tracé pourra être zoomé, panoramique et étudié de manière interactive.

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()

En employant l'une ou l'autre de ces approches, il est possible de détacher les tracés Matplotlib et de permettre aux calculs de se dérouler en arrière-plan tout en explorant de manière interactive les résultats intermédiaires.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn