[PYTHON] Création d'animation flexible à l'aide de l'animation.FuncAnimation de matplotlib

matplotlib de python

Il existe une fonction qui permet de créer une animation de manière flexible. Comment utiliser cette fonction.

** Exemple de programme **

sample_animation.py


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

fig = plt.figure(figsize = (10, 6))
x = np.arange(0, 10, 0.1)

def update(i, fig_title, A):
	if i != 0:
		plt.cla()                      #Effacer le graphique actuellement dessiné

	y = A * np.sin(x - i)
	plt.plot(x, y, "r")
	plt.title(fig_title + 'i=' + str(i))


ani = anm.FuncAnimation(fig, update, fargs = ('Initial Animation! ', 2.0), \
	interval = 100, frames = 132)

ani.save("Sample.gif", writer = 'imagemagick')

Si vous exécutez le code ci-dessus, le fichier d'animation suivant "Sample.gif" doit être généré. Animation.gif

** Explication de l'exemple de programme **

La clé est

ani = anm.FuncAnimation(fig, update, fargs = ('Initial Animation! ', 2.0), \
	interval = 100, frames = 132)

Une phrase.

1er argument fig

objet de figure. Donnez des commandes liées aux figures (animation) à cet objet.

2e mise à jour de l'argument

Une fonction de rappel qui crée chacune des figures qui composent l'animation. Créer une animation signifie créer plusieurs diagrammes et les assembler, mais avec la fonction `` FuncAnimation '', vous pouvez l'appeler plusieurs fois en appelant la fonction qui crée le diagramme plusieurs fois. Cela a été réalisé. updateLes règles de la fonction sont les suivantes.

--Définissez avant la fonction `` FuncAnimation ''.

Option fargs

Une option qui vous permet de spécifier le deuxième argument et les suivants lorsque vous souhaitez fournir deux arguments ou plus à la fonction update du deuxième argument. Dans l'exemple de l'exemple de programme ci-dessus, `" Animation initiale! "` Est dans le deuxième argument `fig_title``` de la fonction` `ʻupdate```, et le troisième argument` `ʻA` 2.0 '' est passé à `` respectivement.

Intervalle facultatif

Vous pouvez spécifier l'intervalle de temps auquel le chiffre change dans l'animation (l'unité est la milliseconde). interval = 100Ensuite, "le chiffre change une fois toutes les 100 millisecondes".

Cadres en option

Spécifiez le nombre d'appels de la fonction de mise à jour. frames = 132PuisupdateLa fonction est appelée 132 fois et l'animation gif générée par celle-ci est une combinaison de 132 images fixes. (Le premier argument de la fonction update, i, prend la valeur de 0,1, ..., 131 entre-temps)

URL de référence

Recommended Posts

Création d'animation flexible à l'aide de l'animation.FuncAnimation de matplotlib
Affichage externe des diagrammes matplotlib à l'aide de tkinter
Création d'un classificateur négatif / positif à l'aide de BERT
Animation avec matplotlib
La base de la théorie des graphes avec l'animation matplotlib
Animation avec matplotlib
Essayez d'utiliser matplotlib
[Python] Utilisation de l'API Line [1ère création de Beauty Bot]
[Python] Résumé de la méthode de création de table utilisant DataFrame (pandas)
Dessin graphique avec matplotlib
J'ai essayé d'utiliser matplotlib
Créer un chat en utilisant socket
Exemple d'utilisation de lambda
Installation de matplotlib (Python 3.3.2)
matplotlib Création d'une liste de couleurs
Créez instantanément un diagramme de données 2D à l'aide de matplotlib de python
Sortie du résultat de la méthode de descente de dégradé sous forme d'animation matplotlib