matplotlib.animation无效

时间:2015-03-05 01:49:17

标签: python animation matplotlib

所以我一直在尝试生成动态更新的图表,向我展示几个数据集作为散点图。我有两个大小相同的列表col1和col2,每个位置都包含列表。并非所有这些列表都相同,但len(col1[i]) = len(col2[i])

所以这就是我到目前为止所尝试的:

fig = plt.figure()
ax = fig.add_subplot(1,1,1)    
def animate(i):
        x=col1[i]
        y=col2[i]
        ax.clear()
        ax.scatter(x, y)
a = anim.FuncAnimation(fig, animate, frames=200, repeat=False)
plt.show()

当我scatter(col1[0],col2[0])时,我看到以下内容:

out1

这是我想看到的第一张图片,然后是scatter(col1[1],col2[1])的相应图片,依此类推。

这就是我每次都得到的:

Output

我注意到该程序仍在运行,所以我认为该图可能仍在使用相同的“图像”进行更新。

我的代码中遗漏了什么?

编辑:第二张图片也是我分散绘制所有内容时得到的图像

1 个答案:

答案 0 :(得分:0)

原来代码是正确的,我认为图像是图中更新点之间的间隔太快,因此第二张图像就显示了。

通过将interval选项设置为50 msecs

来修复

a = anim.FuncAnimation(fig, animate, interval=50)

(直接替换这行修复它。)