我理解如何在mayavi中绘制数据网格的轮廓,如下所示:
from mayavi import mlab
mlab.contour3d(my_data_grid)
但是,我很好奇这个函数的其他签名是什么:
mlab.contour3d(x, y, z, my_data_grid)
docs说:
如果传递4个数组(x,y,z,scalars),则第一个数组给出3个数组 箭头的位置,最后一个标量值。
什么是"箭头"?我还没有找到任何示例,当我尝试用我的数据集调用它时,我得到了一个段落错误,因此无法进行测试。
编辑:那么我现在理解了mlab期望x,y和z的格式,并且我能够让它工作。但是,没有箭头!我假设这是文档中的错误...
答案 0 :(得分:1)
这不是文档中的错误,而是描述函数的一种看似尴尬的方式。来自同一文件contour3d
:
绘制作为参数提供的3D数据量的等值面
并且声明(加粗矿井):
然后假定x,y和z数组是由numpy.mgrid生成的,换句话说,它们是3D数组,位置位于3D正交且规则间隔的网格上空间中最近邻居匹配阵列中的最近邻居。该函数建立一个标量场,假设这些点是规则间隔的。
“箭头”似乎是一种有点尴尬的说法,x
,y
和z
是`
3D阵列,其位置位于3D正交且定期 间隔网格
将“建立标量场”功能作为等值面,有效地“连接点(位置)”。