Animation matplotlib.pyplot.pause对于较小的值太慢

Animation matplotlib.pyplot.pause对于较小的值太慢,animation,matplotlib,Animation,Matplotlib,我想把动画一个接一个地画成点。我的代码是 import matplotlib.pyplot as plt data = [[i, i] for i in range(100)] plt.axis([0, 100, 0, 100]) for point in data: plt.plot(point[0], point[1], 'o') plt.pause(1e-10) plt.show() 但是暂停(秒)似乎无法处理一秒钟的小部分。如果参数很小,它等待的时间比我传递给它的参数

我想把动画一个接一个地画成点。我的代码是

import matplotlib.pyplot as plt

data = [[i, i] for i in range(100)]
plt.axis([0, 100, 0, 100])
for point in data:
    plt.plot(point[0], point[1], 'o')
    plt.pause(1e-10)
plt.show()
但是
暂停(秒)
似乎无法处理一秒钟的小部分。如果参数很小,它等待的时间比我传递给它的参数要长得多。有没有办法让它按预期工作

我知道警察说

这可以用于原始动画。有关更复杂的动画,请参见matplotlib.animation。 这个函数是实验性的;其行为可能会在将来的版本中更改或扩展


我想你可能错过了与你的问题有关的最重要的部分:

如果有一个活动地物,它将在 暂停和GUI事件循环(如果有)将在暂停期间运行


我可以想象暂停时间可能在
1e-10
秒左右,只是必须将点绘制到图形上,这比时间间隔要长。

问题不在于matplotlib,而在于
1e-10
。我相信它是圆的。。。我建议使用更高精度的数据类型。如果您希望实现更快的动画效果,可以跳过某些点的打印,例如,对数据中的点[::5](每五分之一个值打印一次)。