我正在使用Mayavi创建一个实时动画化的曲面图。目前我只是在制作随机二维数组。该图仅在for循环完成时显示。
我的代码如下:
import numpy as np
from mayavi import mlab
import time
height, width = 360, 640
img = np.asarray(np.random.random((height, width)))
xs = np.linspace(0,width,width)
ys = np.linspace(0,height,height)
x,y = np.meshgrid(xs, ys)
z = img
obj = mlab.mesh(x,y,z)
t = time.time()
max_framerate = 10
ms = obj.mlab_source
for i in range(1,50):
ms.z = np.asarray(np.random.random((width, height)))
# put a pause in here to control the maximum framerate
while time.time() - t < (1./max_framerate):
pass
t = time.time()
mlab.show()
您使用的是什么代码编辑器?当我在IDLE for Python 2.7中运行这段代码时,它会随着每次迭代而更新,正如你所期望的那样。然而,我遇到了你在Enthought Canopy代码编辑器中描述的问题。我不知道这是什么原因。