Animación matplotlib

Zeeshan Afridi 15 febrero 2024
  1. La animación de Matplotlib
  2. Instalar Matplotlib en Python
  3. Crear animación en Matplotlib
  4. Conclusión
Animación matplotlib

En Matplotlib, puede crear visualizaciones que respondan a la entrada del usuario, como clics del mouse o pulsaciones de teclas. Se pueden crear visualizaciones interactivas utilizando las mismas técnicas que las animaciones.

La animación de Matplotlib

Matplotlib es una biblioteca que se utiliza para el trazado 2D, pero también incluye funciones para crear animaciones, y el módulo matplotlib.animation facilita la creación de animaciones.

La función de animación toma una figura y una función de animación. La función de animación llamará a cada fotograma de la animación.

La figura es un contenedor para las hachas, los artistas y el lienzo. Los ejes son donde dibujará la trama, y los artistas son los objetos que dibujarán en el lienzo.

La función de animación puede llamar con un argumento de intervalo que especifica el número de milisegundos entre cuadros, y el valor predeterminado es 1000. El módulo matplotlib.animation también incluye una función para crear una película.

La función de película toma una figura y una función de animación.

Instalar Matplotlib en Python

Hay varias formas de instalar Matplotlib. La forma más fácil es usar el comando pip.

pip install matplotlib

Para instalar Matplotlib, necesitará una instalación funcional de la biblioteca numpy. De nuevo utilizaremos el famoso comando pip.

pip install numpy

Una vez que haya instalado numPy, puede instalar Matplotlib desde su código fuente. Finalmente, ejecute el siguiente comando.

python setup.py install

Debe tener privilegios de administrador si desea instalar Matplotlib para todos los usuarios de su sistema. En Linux, puede hacer esto ejecutando el comando.

sudo python setup.py install

En Windows, deberá ejecutar el comando.

python setup.py install

Si desea instalar matplotlib para un solo usuario, puede utilizar la opción --user flag.

python setup.py install --user

Crear animación en Matplotlib

Crear una animación en Matplotlib es relativamente simple e implica usar la clase FuncAnimation. Para crear una animación, primero debe crear una figura y una instancia de ejes.

La figura se creará usando la función pyplot.figure() y los ejes se crearán usando la función pyplot.axes().

Una vez que haya creado la figura y los ejes, puede usar la clase FuncAnimation para animar la figura.

La clase FuncAnimation requiere una función de animación, que debe definirse antes de que se cree la animación. La función de animación debe tomar un único parámetro: el número de cuadro.

El número de cuadro determina la apariencia de la figura en cada paso de la animación. La función de animación puede contener cualquier código de trazado, que se ejecutará una vez que se actualice el número de cuadro.

Para crear la animación, debes llamar a la función anim = FuncAnimation(fig, func, frames=frames), donde fig es la figura y func es la función de animación.

El argumento de fotogramas es opcional y se utiliza para especificar el número de fotogramas de la animación. Si no se especifica, la animación se ejecutará hasta que se cierre la figura.

Ejemplo de código:

# import the required libraries and modules

import matplotlib.pyplot as plt
from matplotlib.animation import FuncAnimation
import numpy as np

fig = plt.figure()
ax = plt.axes(xlim=(0, 4), ylim=(-2, 2))
(ln,) = ax.plot([], [], "bo")
xdata, ydata = [], []


def init():
    ax.set_xlim(0, 2 * np.pi)
    ax.set_ylim(-1, 1)
    return (ln,)


def update(frame):
    xdata.append(frame)
    ydata.append(np.sin(frame))
    ln.set_data(xdata, ydata)
    return (ln,)


anim = FuncAnimation(
    fig, update, frames=np.linspace(0, 2 * np.pi, 128), init_func=init, blit=True
)
anim.save("animation.gif", writer="imagemagick", fps=60)

Producción:

Animación matplotlib

Conclusión

Para concluir el artículo sobre la animación de Matplotlib, hemos discutido cómo crear animaciones usando la biblioteca matplotlib en Python. Así que puedes crear animaciones de una forma muy sencilla.

El artículo anterior muestra que primero, cree la clase FuncAnimation. Luego creará una figura y una instancia de ejes. Entonces, a partir de estos pasos, puede hacer un gráfico de animación.

Zeeshan Afridi avatar Zeeshan Afridi avatar

Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.

LinkedIn