我正在使用mayavi通过使用功能mlab.mesh(...)
绘制一些3D数据。它基本上可以用,但是一旦我尝试通过使用mlab.axes()
向绘图中添加一些轴,它就无法使用。
例如,如果我尝试运行以下代码
import numpy as np
from mayavi import mlab
a = np.linspace(np.pi,2*np.pi,500)
b = np.linspace(0,np.pi,500)
a, b = np.meshgrid(a, b)
c = np.sin(a*b)
mlab.figure(1, fgcolor=(0, 0, 0), bgcolor=(1, 1, 1))
pts = mlab.mesh(a, b, c)
mlab.axes(xlabel='x')
mlab.show()
首先弹出一个窗口
例外 在/Users/.../.conda/envs/testMayavi02/lib/python2.7/site-packages/tvtk/tvtk_base.py:569中 TypeError:SetInputData参数1:方法需要vtkDataSet,提供了vtkPolyDataNormals。 (在_wrap_call中)
当我关闭该窗口时,输出显示
找不到记录器“ mayavi.core.common”的处理程序 2019-05-08 13:43:48.778 python [11868:843741] modalSession已过早退出-检查对endModalSession的可重入调用: 对象:,特征:范围,特征值通知处理程序中发生异常,旧值:[0 0 0 0 0 0 0],新值:[3.14159265 6.283185310。3.14159265 -1。 1.] 追溯(最近一次通话): 在调用中的文件“ /Users/.../.conda/envs/testMayavi02/lib/python2.7/site-packages/traits/trait_notifiers.py”第394行 self.handler(* args) 特征通知处理程序中发生异常。 _extent_changed中的文件“ /Users/.../.conda/envs/testMayavi02/lib/python2.7/site-packages/mayavi/tools/decorations.py”,第373行 请检查日志文件以获取详细信息。 axes.module_manager.source.outputs [0] .bounds AttributeError:“ PolyDataNormals”对象没有属性“ bounds”
有人可以帮助我让mlab.axes()运行吗?