所以我一直在尝试生成动态更新的图表,向我展示几个数据集作为散点图。我有两个大小相同的列表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])
时,我看到以下内容:
这是我想看到的第一张图片,然后是scatter(col1[1],col2[1])
的相应图片,依此类推。
这就是我每次都得到的:
我注意到该程序仍在运行,所以我认为该图可能仍在使用相同的“图像”进行更新。
我的代码中遗漏了什么?
编辑:第二张图片也是我分散绘制所有内容时得到的图像
答案 0 :(得分:0)
原来代码是正确的,我认为图像是图中更新点之间的间隔太快,因此第二张图像就显示了。
通过将interval选项设置为50 msecs
来修复 a = anim.FuncAnimation(fig, animate, interval=50)
(直接替换这行修复它。)