Introducción
En este tutorial, aprenderemos a usar ImageGrid de mpl_toolkits.axes_grid1 en Matplotlib para alinear múltiples imágenes de diferentes tamaños.
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 su retroalimentación después de la sesión y resolveremos rápidamente el problema para usted.
Importar las bibliotecas necesarias
Primero, necesitamos importar las bibliotecas necesarias, incluyendo Matplotlib, cbook e ImageGrid.
import matplotlib.pyplot as plt
from matplotlib import cbook
from mpl_toolkits.axes_grid1 import ImageGrid
Crear una Figura y un ImageGrid
A continuación, creamos una figura y un ImageGrid con el parámetro nrows_ncols para definir el número de filas y columnas de la cuadrícula.
fig = plt.figure(figsize=(5.5, 3.5))
grid = ImageGrid(fig, 111, ## similar a subplot(111)
nrows_ncols=(1, 3),
axes_pad=0.1,
label_mode="L")
Cargar los datos de la imagen
Usaremos un ejemplo de datos de imagen llamado bivariate_normal.npy de cbook para demostrar el ImageGrid. Cargamos los datos de la imagen usando la función get_sample_data de cbook.
Z = cbook.get_sample_data("axes_grid/bivariate_normal.npy")
im1 = Z
im2 = Z[:, :10]
im3 = Z[:, 10:]
vmin, vmax = Z.min(), Z.max()
Mostrar imágenes en el ImageGrid
Finalmente, mostramos las imágenes en el ImageGrid usando la función imshow y la función zip para iterar a través de los ejes en la cuadrícula.
for ax, im in zip(grid, [im1, im2, im3]):
ax.imshow(im, origin="lower", vmin=vmin, vmax=vmax)
plt.show()
Resumen
En este tutorial, hemos aprendido cómo usar ImageGrid en Matplotlib para alinear múltiples imágenes de diferentes tamaños. Primero importamos las bibliotecas necesarias, luego creamos una figura y un ImageGrid, cargamos los datos de la imagen y, finalmente, mostramos las imágenes en el ImageGrid.