如何在Ipython Notebook中的循环中动态更新绘图?

我们可以在循环中使用display.clear_output(wait = True),display.display()和方法来迭代绘图以获得确切的输出。pl.gcf()time.sleep()

步骤

  • 使用从“标准正态”分布中绘制一个或多个样本。pylab.randn()

  • 清除接收输出的当前单元格的输出,wait = False(default value),等待清除输出,直到有新的输出可替代它为止。

  • 在所有前端中显示一个Python对象。默认情况下,所有表示形式都会被计算并发送到前端。前端可以使用该display()方法决定使用哪种表示形式以及如何使用该表示形式。pl.gcf有助于获得当前数字。

  • 要睡一会儿,请使用方法。time.sleep()

示例

import time
import pylab as pl
from IPython import display
for i in range(2):
   pl.plot(pl.randn(100))
   display.clear_output(wait=True)
   display.display(pl.gcf())
   time.sleep(1.0)
输出结果
Figure(640x480)
Figure(640x480)