我使用python中的mayavi来可视化一些数据。我在三维空间中有一个曲面,我想把一个图像映射到它上面。我看了mayavi文档,所有我能找到的是这个,这真的没有帮助我太多。以前有人做过这样的事吗?
我发现mesh
函数实际上确实采用scalars
参数,然后根据所选择的颜色映射对表面上相应的点进行着色。然而,我仍然不知道如何将任意RGB图像映射到表面。
我猜你没有看到"3D绘图的Python脚本"这一章。有一个可以在python内部使用的mayavi命令集合。例如"numpy数组的3D绘图函数"一节。如果您遵循链接,您会发现一些关于函数的描述和每个函数的小示例。
根据您的情况,您应该服用mesh
或surf
。两个函数是相等的,但又不同。例如,surf
函数更像是mesh
的子函数,这是我的观点。你不需要定义x和y坐标,你只需要二维数组中的z坐标。如果你想使用mesh
,你必须传递所有三个坐标(x,y,z)作为2D数组。
我建议检查一下例子。
这是你问题的答案吗?也许你应该更具体地说明你想做什么。
祝您节日愉快。