我正在尝试使用for循环实时绘制图形。 我有以下简单的代码:
import matplotlib.pyplot as plt
plt.ion()
plt.figure()
for i in range(100):
plt.plot([i], [i], 'o')
plt.draw()
plt.pause(0.0001)
这段代码在计算完成前不会显示图形,这不是我想要的。我希望它可以在每次循环之后绘制图形。如果将
plt.draw()
替换为plt.show
,则可以实时输出多个图形,但我希望它们都出现在同一张图中。有什么想法吗?编辑:
我下载了带有Anaconda的PyCharm,一切正常。我猜这是Spyder的问题,因为我尝试过几个不同版本的Spyder,但没有成功。如果有人知道在Spyder中引起此问题的原因,请告诉我!
plt.figure()
后加上plt.show()
。 - Ben<matplotlib.figure.Figure at 0xa4e77f0>
,代码的评估与 - Alexpython script.py
吗?还是在Ipython终端内部调用%run
? - Ben