Ejes insertados con zoom

Beginner

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

Introducción

Matplotlib es una biblioteca de Python que se utiliza para crear visualizaciones estáticas, animadas e interactivas en Python. Es una herramienta poderosa para la visualización de datos y se utiliza ampliamente en la comunidad científica. En este laboratorio, aprenderemos cómo crear una región ampliada en un gráfico de 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 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

El primer paso es importar las bibliotecas necesarias. En este ejemplo, usaremos NumPy y Matplotlib.

import numpy as np
from matplotlib import cbook
from matplotlib import pyplot as plt

Crear el gráfico

A continuación, crearemos un gráfico utilizando algunos datos de muestra. Utilizaremos una distribución normal bivariada como fuente de datos.

fig, ax = plt.subplots()

## make data
Z = cbook.get_sample_data("axes_grid/bivariate_normal.npy")  ## 15x15 array
Z2 = np.zeros((150, 150))
ny, nx = Z.shape
Z2[30:30+ny, 30:30+nx] = Z
extent = (-3, 4, -4, 3)

ax.imshow(Z2, extent=extent, origin="lower")

Agregar un gráfico insertado

En este paso, agregaremos un gráfico insertado al gráfico principal. Este gráfico insertado mostrará una región ampliada del gráfico principal.

## inset axes....
x1, x2, y1, y2 = -1.5, -0.9, -2.5, -1.9  ## subregion of the original image
axins = ax.inset_axes(
    [0.5, 0.5, 0.47, 0.47],
    xlim=(x1, x2), ylim=(y1, y2), xticklabels=[], yticklabels=[])
axins.imshow(Z2, extent=extent, origin="lower")

Agregar un rectángulo para mostrar la región ampliada

En este paso, agregaremos un rectángulo al gráfico principal para mostrar dónde se encuentra la región ampliada.

ax.indicate_inset_zoom(axins, edgecolor="black")

Mostrar el gráfico

Finalmente, mostraremos el gráfico utilizando la función plt.show().

plt.show()

Resumen

En este laboratorio, aprendimos cómo crear una región ampliada en un gráfico de Matplotlib. Creamos un gráfico principal utilizando datos de muestra, agregamos un gráfico insertado para mostrar una región ampliada del gráfico principal y agregamos un rectángulo para mostrar dónde se encuentra la región ampliada. Luego mostramos el gráfico utilizando la función plt.show().