Introducción
Matplotlib es una biblioteca de visualización de datos para el lenguaje de programación Python. Proporciona una amplia variedad de herramientas para crear diferentes tipos de gráficos y diagramas. El módulo GridSpec en Matplotlib nos permite crear diseños flexibles y complejos de subgráficos. En este tutorial, aprenderemos cómo usar GridSpec para crear diseños de subgráficos con múltiples columnas/filas.
Consejos sobre la VM
Una vez finalizada la inicialización de la VM, haga clic en la esquina superior izquierda para cambiar a la pestaña Cuaderno y acceder a Jupyter Notebook para practicar.
A veces, es posible que tenga que esperar unos segundos a que Jupyter Notebook termine de cargarse. La validación de las operaciones no se puede automatizar debido a las limitaciones de Jupyter Notebook.
Si tiene problemas durante el aprendizaje, no dude en preguntar a Labby. Deje sus comentarios después de la sesión y lo resolveremos rápidamente para usted.
Importar las bibliotecas necesarias
En primer lugar, necesitamos importar las bibliotecas requeridas. Vamos a utilizar Matplotlib y GridSpec.
import matplotlib.pyplot as plt
from matplotlib.gridspec import GridSpec
Crear una figura
A continuación, necesitamos crear una figura utilizando la función plt.figure(). Podemos establecer el parámetro layout en "constrained" para asegurarnos de que los subgráficos quepan dentro de la figura.
fig = plt.figure(layout="constrained")
Crear un GridSpec
Podemos crear un objeto GridSpec utilizando la función GridSpec(). Necesitamos especificar el número de filas y columnas que queremos en nuestra cuadrícula. En este ejemplo, crearemos una cuadrícula de 3x3.
gs = GridSpec(3, 3, figure=fig)
Agregar subgráficos al GridSpec
Podemos agregar subgráficos al GridSpec utilizando la función fig.add_subplot(). Podemos especificar la ubicación del subgráfico en la cuadrícula utilizando la notación de índice del objeto GridSpec. Por ejemplo, gs[0, :] especifica la primera fila y todas las columnas.
ax1 = fig.add_subplot(gs[0, :])
ax2 = fig.add_subplot(gs[1, :-1])
ax3 = fig.add_subplot(gs[1:, -1])
ax4 = fig.add_subplot(gs[-1, 0])
ax5 = fig.add_subplot(gs[-1, -2])
Personalizar subgráficos
Podemos personalizar los subgráficos según sea necesario. Por ejemplo, podemos establecer el título de la figura utilizando la función fig.suptitle(), y podemos formatear los ejes utilizando la función format_axes().
fig.suptitle("GridSpec")
def format_axes(fig):
for i, ax in enumerate(fig.axes):
ax.text(0.5, 0.5, "ax%d" % (i+1), va="center", ha="center")
ax.tick_params(labelbottom=False, labelleft=False)
format_axes(fig)
Mostrar la gráfica
Finalmente, podemos mostrar la gráfica utilizando la función plt.show().
plt.show()
Resumen
En este tutorial, aprendimos cómo utilizar GridSpec para crear diseños de subgráficos con múltiples columnas/filas en Matplotlib. Creamos una cuadrícula de 3x3 y le agregamos subgráficos. Personalizamos los subgráficos y mostramos la gráfica. GridSpec es una herramienta poderosa para crear diseños complejos de subgráficos en Matplotlib.