我正在使用for循环来计算20x20矩阵的每个节点的值并将数据存储在
中MM = []
我想为结果设置动画,我的代码如下所示:
ax = plt.subplot(111)
for i in range(60):
x = MM[i]
ax.contourf(X,Y,x, cmap = cm.hot)
plt.draw()
plt.show()
问题是它只显示MM [-1]。 我已经查看了这里给出的示例,但无法弄清楚如何使其工作。 谢谢。
答案 0 :(得分:0)
您的问题可能是由于您运行Matplotlib以及您正在使用的图形backend。以下示例适用于IPython。请注意,我调用ion()将交互模式设置为on。
from matplotlib import pyplot as plt
import numpy as np
x = y = np.arange(-3.0, 3.01, 0.025)
X, Y = np.meshgrid(x, y)
plt.ion()
ax = plt.subplot(111)
for i in range(1,20):
Z1 = plt.mlab.bivariate_normal(X, Y, 0.5+i*0.1, 0.5, 1, 1)
ax.contourf(x,y,Z1, cmap = plt.cm.hot)
plt.draw()
plt.show()
信息here应该可以帮助您运行动画。