我试着在一个Jupyter笔记本上制作每秒钟更新一次的情节。现在,我有一个简单的代码可以工作:
%matplotlib inline
import time
import pylab as plt
import numpy as np
from IPython import display
for i in range(10):
plt.close()
a = np.random.randint(100,size=100)
b = np.random.randint(100,size=100)
fig, ax = plt.subplots(2,1)
ax[0].plot(a)
ax[0].set_title('A')
ax[1].plot(b)
ax[1].set_title('B')
display.clear_output(wait=True)
display.display(plt.gcf())
time.sleep(1.0)
它更新了我每秒钟所创造的情节。然而,在最后,还有一个额外的副本:
它为什么要这样做?我怎么才能不发生这种事呢?提前谢谢你。在
设置
inline
后端,以便在每个单元完成执行时,将显示单元中创建的任何matplotlib绘图。在使用
display
函数显示图形一次,然后内联后端将再次自动显示该图形。在防止这种情况的最简单方法是在单元格中的代码末尾添加
plt.close()
。在相关问题 更多 >
编程相关推荐