Python – animación con matplotlib.pyplot

¿Cómo se pueden crear diagtwigs animados utilizando la popular biblioteca matplotlib? Estoy particularmente interesado en los gifs animados.

Los documentos de matplotlib proporcionan una sección completa de ejemplos de animación (vea también este tutorial de scipy ). La mayoría, sin embargo, implica el uso de los diversos backends del widget GUI. Hay uno ahí, “demo de película”, que muestra cómo producir un avi de una serie de PNGS.

Para producir GIF animados, creo que tus opciones son bastante limitadas . La última vez que lo comprobé, PIL no los apoyó . Sin embargo, podría generar una serie de PNG utilizando la función de salvamento de pyplot y luego unirlos mediante una llamada a ImageMagick o mencoder.

Esta pregunta es algo antigua, pero sin embargo responderé en caso de que alguien se bloquee aquí y esto puede ser útil.

Así que hoy en día parece que la mejor manera de utilizar matplotlib es usar la funcionalidad que proporcionan:

http://matplotlib.org/api/animation_api.html#module-matplotlib.animation

También incluyen algunos ejemplos útiles que puede modificar fácilmente para sus necesidades (aunque la explicación de cómo funcionan será difícil de entender si no ha usado matplotlib de una manera orientada a la clase):

http://matplotlib.org/examples/animation/

Finalmente, solo para complementar esta información, Jake VanderPlas tiene un tutorial más completo y una breve reseña sobre el futuro de la visualización en Python:

Tutorial: http://jakevdp.github.io/blog/2012/08/18/matplotlib-animation-tutorial/

Ensayo sobre la visualización: http://jakevdp.github.io/blog/2013/03/23/matplotlib-and-the-future-of-visualization-in-python/

Actualización en 2017

Matplotlib tiene el módulo de animación , y en él se encuentra la clase ImageMagickFileWriter . Se anuncia como “escritor de gifs animados basados ​​en archivos”.

Documentación: http://matplotlib.org/api/_as_gen/matplotlib.animation.ImageMagickFileWriter.html#matplotlib.animation.ImageMagickFileWriter