Introducción
Matplotlib es una poderosa biblioteca de visualización de datos en Python. En este laboratorio, exploraremos el uso de EllipseCollection para dibujar una colección de elipses.
Consejos sobre la VM
Una vez que se haya iniciado 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
Comenzaremos importando las bibliotecas necesarias.
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.collections import EllipseCollection
Crear datos para las elipses
Creamos los datos para nuestras elipses en forma de matrices de coordenadas x, coordenadas y, ancho, alto y ángulo.
x = np.arange(10)
y = np.arange(15)
X, Y = np.meshgrid(x, y)
XY = np.column_stack((X.ravel(), Y.ravel()))
ww = X / 10.0
hh = Y / 15.0
aa = X * 9
Crear una colección de elipses
Creamos una EllipseCollection con los datos anteriores y especificamos que las unidades son 'x' y los desplazamientos son XY.
fig, ax = plt.subplots()
ec = EllipseCollection(ww, hh, aa, units='x', offsets=XY,
offset_transform=ax.transData)
Establecer el color de las elipses
Establecemos el color de cada elipse en la EllipseCollection en función de la suma de sus coordenadas x e y.
ec.set_array((X + Y).ravel())
Agregar la colección a la gráfica
Agregamos la EllipseCollection a la gráfica.
ax.add_collection(ec)
ax.autoscale_view()
ax.set_xlabel('X')
ax.set_ylabel('y')
cbar = plt.colorbar(ec)
cbar.set_label('X+Y')
plt.show()
Resumen
En este laboratorio, aprendimos cómo usar EllipseCollection para dibujar una colección de elipses en Matplotlib. También aprendimos cómo establecer el color de cada elipse en función de sus coordenadas x e y.