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