Introducción
En este laboratorio, aprenderemos a usar transforms.offset_copy para posicionar un elemento de dibujo, como una cadena de texto, con un desplazamiento especificado en coordenadas de pantalla con respecto a una ubicación dada en cualquier coordenada. Usaremos la librería Matplotlib en Python para crear un diagrama de dispersión y un diagrama polar, y luego agregaremos texto a cada diagrama usando offset_copy.
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 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 bibliotecas
Comenzaremos importando las bibliotecas necesarias: numpy y matplotlib.pyplot.
import numpy as np
import matplotlib.pyplot as plt
Crear datos
A continuación, crearemos algunos datos para usar en nuestros gráficos. Usaremos numpy para crear dos arrays, xs e ys, que usaremos como coordenadas x e y para nuestro diagrama de dispersión.
xs = np.arange(7)
ys = xs**2
Crear un diagrama de dispersión
Ahora crearemos un diagrama de dispersión usando la función plot de matplotlib.pyplot.
fig = plt.figure(figsize=(5, 10))
ax = plt.subplot(2, 1, 1)
## Plot the data
for x, y in zip(xs, ys):
plt.plot(x, y, 'ro')
Agregar texto al diagrama de dispersión
Ahora agregaremos texto a nuestro diagrama de dispersión usando offset_copy. Primero crearemos una transformación que posicione el texto con un desplazamiento especificado en coordenadas de pantalla con respecto a una ubicación dada en cualquier coordenada. Luego, usaremos la función text de matplotlib.pyplot para agregar el texto al gráfico.
## Create the transform
trans_offset = mtransforms.offset_copy(ax.transData, fig=fig,
x=0.05, y=0.10, units='inches')
## Add text to the plot
for x, y in zip(xs, ys):
plt.text(x, y, '%d, %d' % (int(x), int(y)), transform=trans_offset)
Crear un gráfico polar
Ahora crearemos un gráfico polar usando la función polar de matplotlib.pyplot.
ax = plt.subplot(2, 1, 2, projection='polar')
## Plot the data
for x, y in zip(xs, ys):
plt.polar(x, y, 'ro')
Agregar texto al gráfico polar
Finalmente, agregaremos texto a nuestro gráfico polar usando offset_copy y la función text de matplotlib.pyplot.
## Create the transform
trans_offset = mtransforms.offset_copy(ax.transData, fig=fig,
y=6, units='dots')
## Add text to the plot
for x, y in zip(xs, ys):
plt.text(x, y, '%d, %d' % (int(x), int(y)),
transform=trans_offset,
horizontalalignment='center',
verticalalignment='bottom')
Resumen
En este laboratorio, aprendimos cómo usar transforms.offset_copy para posicionar un elemento de dibujo con un desplazamiento especificado en coordenadas de pantalla con respecto a una ubicación dada en cualquier coordenada. Usamos esta función para agregar texto a un diagrama de dispersión y a un gráfico polar creado usando la biblioteca matplotlib.pyplot en Python.