我正在尝试使用Mayavi mlab库中的网格函数 - 但每次运行代码时,程序都会崩溃。
我运行的代码只是文档中给出的示例的略微修改版本。
import numpy as np
from numpy import sin, cos
from mayavi import mlab
def main():
PI = np.pi
mlab.clf()
phi, theta = np.mgrid[0:PI:11j, 0:2 * PI:11j]
x = sin(phi) * cos(theta)
y = sin(phi) * sin(theta)
z = cos(phi)
mlab.mesh(x, y, z, representation='wireframe', color=(0, 0, 0))
mlab.show()
if __name__ == '__main__':
main()
程序加载Mayavi绘图窗口,然后崩溃并出现以下错误:
我正在使用:
Windows 7 Ultimate - 64位
用于Python 2.7的Anaconda 2安装
PyCharm Community Edition 2017.1.1
我已经尝试了mlab.mesh的其他基本代码示例,结果相同。
我使用mlab.plot3d运行其他Mayavi脚本没有任何问题。
答案 0 :(得分:0)
删除representation ='wireframe'修复了我的问题。即。
mlab.mesh(x, y, z, color=(0, 0, 0))
完全有效的唯一“表示”是“表面”,这是默认的。
'mesh'和'fancymesh'都可以使用Mayavi界面生成警告。
'点'& 'wireframe'都崩溃了。
文档[here]
中描述了这些表示