如何在Google CoLab中动态(循环)显示图像?
问题描述
我一直在尝试使用pylot/matplotlib来显示循环中更改的图像,但我一直无法使任何内容正常工作。我基本上无法更新正在显示的图像。以下是复制该问题的代码:
f = plt.figure(1)
ax = plt.gca()
show_obj= ax.imshow(np.random.randn(28,28))
for i in range(10):
print(i)
# None of these 3 options work
if True:
# the image does not update
show_obj.set_data(np.random.randn(28,28))
f.canvas.draw()
if False:
# image does not update
ax.clear()
ax.imshow(np.random.rand(28,28))
pass
if False:
# starts drawing new axes
f = plt.figure(1)
ax = plt.gca()
ax.imshow(np.random.rand(28,28))
plt.show()
解决方案
我测试此代码,它可以正常工作。
from IPython.display import clear_output
import matplotlib.pyplot as plt
from numpy.random import randn
from time import sleep
for i in range(5):
clear_output()
plt.imshow(randn(28, 28))
plt.show()
sleep(1)
相关文章