Introducción
En este laboratorio, aprenderá a comparar la elipse generada con arcos versus una aproximación poligonal utilizando Python Matplotlib.
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 operaciones no puede automatizarse debido a las limitaciones de Jupyter Notebook.
Si tiene problemas durante el aprendizaje, no dude en preguntar a Labby. Deje comentarios después de la sesión y lo resolveremos rápidamente para usted.
Importar bibliotecas
Para comenzar, importaremos las bibliotecas necesarias.
import matplotlib.pyplot as plt
import numpy as np
from matplotlib import patches
Establecer parámetros de la elipse
En este paso, estableceremos los parámetros de la elipse.
xcenter, ycenter = 0.38, 0.52
width, height = 0.1, 0.3
angle = -30
Generar una elipse utilizando arcos
En este paso, generaremos la elipse utilizando arcos.
theta = np.deg2rad(np.arange(0.0, 360.0, 1.0))
x = 0.5 * width * np.cos(theta)
y = 0.5 * height * np.sin(theta)
rtheta = np.radians(angle)
R = np.array([
[np.cos(rtheta), -np.sin(rtheta)],
[np.sin(rtheta), np.cos(rtheta)],
])
x, y = np.dot(R, [x, y])
x += xcenter
y += ycenter
Generar una elipse utilizando una aproximación poligonal
En este paso, generaremos la elipse utilizando una aproximación poligonal.
theta = np.deg2rad(np.arange(0.0, 360.0, 1.0))
x = 0.5 * width * np.cos(theta)
y = 0.5 * height * np.sin(theta)
rtheta = np.radians(angle)
R = np.array([
[np.cos(rtheta), -np.sin(rtheta)],
[np.sin(rtheta), np.cos(rtheta)],
])
x, y = np.dot(R, [x, y])
x += xcenter
y += ycenter
Graficar una elipse utilizando arcos
En este paso, graficaremos la elipse utilizando arcos.
fig = plt.figure()
ax = fig.add_subplot(211, aspect='auto')
ax.fill(x, y, alpha=0.2, facecolor='yellow',
edgecolor='yellow', linewidth=1, zorder=1)
e1 = patches.Arc((xcenter, ycenter), width, height,
angle=angle, linewidth=2, fill=False, zorder=2)
ax.add_patch(e1)
Graficar una elipse utilizando una aproximación poligonal
En este paso, graficaremos la elipse utilizando una aproximación poligonal.
ax = fig.add_subplot(212, aspect='equal')
ax.fill(x, y, alpha=0.2, facecolor='green', edgecolor='green', zorder=1)
e2 = patches.Arc((xcenter, ycenter), width, height,
angle=angle, linewidth=2, fill=False, zorder=2)
ax.add_patch(e2)
fig.savefig('arc_compare')
plt.show()
Resumen
En este laboratorio, aprendiste cómo comparar la elipse generada con arcos versus una aproximación poligonal utilizando Python Matplotlib. Aprendiste cómo establecer los parámetros de la elipse, generar elipses utilizando arcos y una aproximación poligonal, y graficarlas utilizando Matplotlib.