使用 matplotlib 表示体素
matplotlibpythondata visualization
在 3D 计算机图形学中,体素表示三维空间中规则网格上的值。我们可以说体素是 2D 中使用的像素的 3D 等价物。像素是二维图像中的正方形,在二维网格中具有位置和单一颜色值,而体素是三维模型中的立方体,在三维网格中具有位置和单一颜色值。
要使用 matplotlib 表示体素,我们可以采取以下步骤 −
步骤
设置图形大小并调整子图之间和周围的填充。
在 0 和 1 之间创建随机选择数据点。
创建新图形或激活现有图形。
使用 projection='3d' 获取当前轴,如有必要创建一个。
使用绘制一组填充体素voxels() 方法。
要显示图形,请使用 show() 方法。
示例
import numpy as np import matplotlib.pyplot as plt # 设置图形大小 plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True # 0 和 1 之间的随机数据点 data = np.random.choice([0, 1], size=(5, 7, 9), p=[0.65, 0.35]) # 创建新图形 fig = plt.figure() # 轴3D 投影 ax = fig.gca(projection='3d') # 绘制体素 ax.voxels(data, edgecolor="k", facecolors='green') # 显示绘图 plt.show()
输出
它将产生以下输出 −