Introducción
En este laboratorio, aprenderemos a crear una superficie 3D con una malla triangular utilizando la biblioteca 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 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 bibliotecas
Primero, necesitamos importar las bibliotecas necesarias:
import matplotlib.pyplot as plt
import numpy as np
Definir variables
Definiremos las variables para los radios y los ángulos:
n_radii = 8
n_angles = 36
Crear espacios de radios y ángulos
Crearemos los espacios de radios y ángulos utilizando la función linspace:
## Hacer espacios de radios y ángulos (el radio r=0 se omite para evitar duplicados).
radii = np.linspace(0.125, 1.0, n_radii)
angles = np.linspace(0, 2*np.pi, n_angles, endpoint=False)[..., np.newaxis]
Convertir coordenadas polares a coordenadas cartesianas
Convertiremos las coordenadas polares a coordenadas cartesianas:
## Convertir las coordenadas polares (radios, ángulos) a coordenadas cartesianas (x, y).
## (0, 0) se agrega manualmente en esta etapa, para que no haya puntos duplicados
## en el plano (x, y).
x = np.append(0, (radii*np.cos(angles)).flatten())
y = np.append(0, (radii*np.sin(angles)).flatten())
Calcular z para crear la superficie de Pringle
Calcularemos z para crear la superficie de Pringle:
## Calcular z para crear la superficie de Pringle.
z = np.sin(-x*y)
Crear la superficie 3D
Crearemos la superficie 3D utilizando la función plot_trisurf:
ax = plt.figure().add_subplot(projection='3d')
ax.plot_trisurf(x, y, z, linewidth=0.2, antialiased=True)
plt.show()
Resumen
En este laboratorio, hemos aprendido cómo crear una superficie 3D con una malla triangular utilizando la biblioteca Python Matplotlib. Hemos importado las bibliotecas necesarias, definido las variables para los radios y los ángulos, creado los espacios de radios y ángulos, convertido las coordenadas polares a coordenadas cartesianas, calculado z para crear la superficie de Pringle y creado la superficie 3D utilizando la función plot_trisurf.