我一直在尝试运行以下 python 代码(来自 Enthought 的网站)来测试 Enthought 的 Mayavi 模块的动画功能。
from mayavi import mlab
import numpy
n_mer, n_long = 6, 11
pi = numpy.pi
dphi = pi/1000.0
phi = numpy.arange(0.0, 2*pi + 0.5*dphi, dphi, 'd')
mu = phi*n_mer
x = numpy.cos(mu)*(1+numpy.cos(n_long*mu/n_mer)*0.5)
y = numpy.sin(mu)*(1+numpy.cos(n_long*mu/n_mer)*0.5)
z = numpy.sin(n_long*mu/n_mer)*0.5
# View it.
l = mlab.plot3d(x, y, z, numpy.sin(mu), tube_radius=0.025, colormap='Spectral')
# Now animate the data.
ms = l.mlab_source
for i in range(10):
x = numpy.cos(mu)*(1+numpy.cos(n_long*mu/n_mer +
numpy.pi*(i+1)/5.)*0.5)
scalars = numpy.sin(mu + numpy.pi*(i+1)/5.)
ms.set(x=x, scalars=scalars)
但是,执行后,什么也没有发生。它运行没有错误,但只有 TVTK 场景窗口弹出空白 - 没有图像,没有动画。问题可能出在 Mayavi 模块导入上吗?网站上的示例以:from enthought.mayavi import mlab 开头,而我有:from mayavi import mlab “enthought.mayavi”导入字符串对我不起作用。我使用的 Mayavi 是 pip 安装。
我应该怎么做才能解决这个问题?我正在使用 Mac OSX 10.8.2。提前致谢。