Introducción
Este laboratorio lo guiará a través del proceso de creación de un gráfico de voxeles 3D utilizando la biblioteca Matplotlib en Python. Los gráficos de voxeles son útiles para visualizar datos 3D de una manera que es clara y estéticamente agradable. En este laboratorio, utilizaremos la función Axes3D.voxels para crear un gráfico de voxeles de dos cubos y un enlace entre ellos.
Consejos para la MV
Después de que la máquina virtual (VM) haya terminado de iniciar, haga clic en la esquina superior izquierda para cambiar a la pestaña Notebook y acceder a Jupyter Notebook para practicar.
A veces, es posible que deba esperar unos segundos para que Jupyter Notebook termine de cargar. La validación de las operaciones no se puede automatizar debido a las limitaciones de Jupyter Notebook.
Si encuentra problemas durante el aprendizaje, no dude en preguntar a Labby. Proporcione comentarios después de la sesión y resolveremos rápidamente el problema para usted.
Importar bibliotecas necesarias
Primero, necesitamos importar las bibliotecas necesarias. En este caso, utilizaremos Matplotlib y NumPy.
import matplotlib.pyplot as plt
import numpy as np
Preparar coordenadas
A continuación, prepararemos las coordenadas para nuestro gráfico de voxeles. Crearemos una cuadrícula de puntos de 8x8x8 utilizando la función indices de NumPy.
x, y, z = np.indices((8, 8, 8))
Crear los cubos y el enlace
Ahora, crearemos los dos cubos y el enlace entre ellos. Lo haremos definiendo tres matrices booleanas que se combinarán en una única matriz booleana. Las dos primeras matrices definen la ubicación de los cubos, mientras que la tercera matriz define la ubicación del enlace.
cube1 = (x < 3) & (y < 3) & (z < 3)
cube2 = (x >= 5) & (y >= 5) & (z >= 5)
link = abs(x - y) + abs(y - z) + abs(z - x) <= 2
voxelarray = cube1 | cube2 | link
Establecer colores
Ahora estableceremos los colores para cada objeto en el gráfico de voxeles. Lo haremos creando una matriz vacía del mismo tamaño que la matriz booleana que creamos en el Paso 3, y luego estableciendo el color de cada objeto según su ubicación.
colors = np.empty(voxelarray.shape, dtype=object)
colors[link] = 'red'
colors[cube1] = 'blue'
colors[cube2] = 'green'
Graficar la matriz de voxeles
Finalmente, podemos utilizar la función Axes3D.voxels para graficar la matriz de voxeles con los colores especificados.
ax = plt.figure().add_subplot(projection='3d')
ax.voxels(voxelarray, facecolors=colors, edgecolor='k')
plt.show()
Resumen
En este laboratorio, aprendimos cómo crear un gráfico de voxeles 3D utilizando la biblioteca Matplotlib en Python. Preparamos las coordenadas para el gráfico, creamos los cubos y el enlace, establecimos los colores para cada objeto y graficamos la matriz de voxeles utilizando la función Axes3D.voxels. Los gráficos de voxeles son una forma útil de visualizar datos 3D, y Matplotlib facilita su creación.