关于numpy数组的3D可视化¶
通过`mlab`的一系列函数,可以对numpy进行数据可视化。
mlab`函数将numpy数组作为输入,描述数据的``x`, y
, z
坐标,并以此构建成熟的可视化:如果有需要,它们可以完成data source数据源层级、filter滤波层级以及visualization module可视化模块层级的创建。与matplotlib的pylab类似,它们的创建过程可以通过关键字参数进行调整。此外,它们都可以返回创建的可视化模块对应的对象,因此可以通过修改它们的属性对可视化进行修改。
备注
这一节,我们仅列出不同的函数。对于每一个函数的具体用法请参考`mlab-reference`,在这份指南的最后,我们将附上图像和案例。
0D数据 和 1D数据¶
points3d 方法 |
points3d`方法
它将显示数据所给位置的图形(如点状,可以是其他形状),其位置信息由numpy数组给定,坐标由``x`, |
plot3d 方法 |
plot3d`方法将绘制线,数据``x`, |
2D数据¶
imshow方法 |
imshow 可以将2D数组可视化成一张图像。 |
surf 方法 |
surf方法将2D数组平铺成一张毯子,并用z坐标表示高度。 |
contour_surf 方法 |
`contour_surf`将使用2D数组绘制等高线,并用一个坐标表示等高线的高度。 |
mesh 方法 |
mesh`方法用于绘制面绘制,由3个2D数组给定, ``x`, |
barchart方法 |
`barchart`方法将对数组或者对一系列给定的坐标点进行可视化。例如,柱状图中,x,y,z表示坐标,s表示高度。该函数通用性较强,可以接受2D或3D数据,也可以接受点云。 |
triangular_mesh 方法 |
triangular_mesh 用于绘制三角形网格,其顶点由``x``, |
3D数据¶
coutour3d方法 |
contour3d 方法用于绘制3D体数据的等值面。 |
quiver3d 方法 |
quiver3d 方法将为数据绘制箭头。 |
flow 方法 |
flow方法用于绘制粒子的轨迹,它由三个3D数组给定。 |
slice 方法 |
volume_slice 方法用于绘制一个可交互的平面,它可以对体数据进行切片。 译者注:volume_slice 更多是一种可视化的辅助手段,如医学影像,体数据核磁等的可视化,生成一个可灵活控制的组织切面方便观察。 |
备注
如果要对可视化有更多要求,丰富其细节则需要自己配置pipeline管线:从data sources数据源层级到filter滤波层级,再到module可视化模块层级进行逐层搭建。相关内容请参考下面的章节,controlling-the-pipeline-with-mlab-scripts`和`mlab-case-studies。