Visualización de gridspecs anidados con Matplotlib

Beginner

This tutorial is from open-source community. Access the source code

Introducción

Matplotlib es una biblioteca de visualización de datos en Python. Proporciona una amplia variedad de gráficos y diagramas que se pueden utilizar para representar datos en diversas formas. En este laboratorio, revisaremos el proceso de creación de gridspecs anidados utilizando Matplotlib.

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 operaciones no puede automatizarse 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 la biblioteca Matplotlib

El primer paso es importar la biblioteca Matplotlib. También utilizaremos el módulo gridspec de Matplotlib.

import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec

Crear la figura y el gridspec externo

El siguiente paso es crear una figura y un gridspec externo. En este ejemplo, crearemos un gridspec de 1 por 2.

fig = plt.figure()
gs0 = gridspec.GridSpec(1, 2, figure=fig)

Crear el gridspec interno

Ahora, crearemos el gridspec interno. Utilizaremos el método GridSpecFromSubplotSpec para crear un gridspec de 3 por 3 que será un subgráfico del gridspec externo.

gs00 = gridspec.GridSpecFromSubplotSpec(3, 3, subplot_spec=gs0[0])

Agregar subgráficos al gridspec interno

Ahora agregaremos subgráficos al gridspec interno. Crearemos tres subgráficos: ax1, ax2 y ax3.

ax1 = fig.add_subplot(gs00[:-1, :])
ax2 = fig.add_subplot(gs00[-1, :-1])
ax3 = fig.add_subplot(gs00[-1, -1])

Crear otro gridspec interno

Ahora crearemos otro gridspec interno. Esta vez, utilizaremos el método subgridspec para crear un gridspec de 3 por 3 que será un subgráfico de la segunda columna del gridspec externo.

gs01 = gs0[1].subgridspec(3, 3)

Agregar subgráficos al segundo gridspec interno

Ahora agregaremos subgráficos al segundo gridspec interno. Crearemos tres subgráficos: ax4, ax5 y ax6.

ax4 = fig.add_subplot(gs01[:, :-1])
ax5 = fig.add_subplot(gs01[:-1, -1])
ax6 = fig.add_subplot(gs01[-1, -1])

Formatear los ejes

Vamos a formatear los ejes de todos los subgráficos utilizando la función format_axes. Esta función agregará una etiqueta de texto a cada subgráfico y eliminará las etiquetas de los ticks.

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 figura

Finalmente, mostraremos la figura utilizando el método show.

plt.show()

Resumen

En este laboratorio, aprendimos cómo crear gridspecs anidados utilizando Matplotlib. Creamos un gridspec externo y dos gridspecs internos para crear un diseño complejo de subgráficos. También aprendimos cómo formatear los ejes de los subgráficos utilizando una función personalizada.