我有以下代码。
sim = simulator()
fig, ax = plt.subplots()
scat = ax.scatter(sim.XY[:,0],sim.XY[:,1])
def animate(i):
sim.run()
scat.set_offsets(sim.XY) # update the data.
return scat
ani = FuncAnimation(fig, animate, interval=10, blit=True, save_count=50)
"sim "对象方法 "sim.run() "更新了sim.XY,这是(100,2)数组。
在我的第三行之后,我得到了一个预期的散点图。
但是当我尝试制作动画时(从第5行开始向下),我得到了一个错误信息,说:"你是谁?谁能帮帮我。
Traceback (most recent call last):
File "C:\Users\anaconda3\lib\site-packages\matplotlib\cbook\__init__.py", line 216, in process
func(*args, **kwargs)
File "C:\Users\anaconda3\lib\site-packages\matplotlib\animation.py", line 953, in _start
self._init_draw()
File "C:\Users\\anaconda3\lib\site-packages\matplotlib\animation.py", line 1732, in _init_draw
self._draw_frame(next(self.new_frame_seq()))
File "C:\Users\anaconda3\lib\site-packages\matplotlib\animation.py", line 1761, in _draw_frame
key=lambda x: x.get_zorder())
TypeError: 'PathCollection' object is not iterable
我观察到的是,如果我设置blit=True,动画不工作,我得到了错误。如果不设置这个参数,动画就能正常工作。谁能解释一下这个参数的作用