plt.ion()画动态图

前言

在训练神经网络时,我们常常希望在图中看到loss减小的动态过程,这时我们可用plt.ion()函数打开交互式模式,在交互式模式下可动态地展示图像。
在这里插入图片描述
PS:在plt.show()之前一定不要忘了加plt.ioff(),如果不加,界面会一闪而过,并不会停留。

动态画图

import matplotlib.pyplot as plt
x = list(range(1, 21))  # epoch array
loss = [2 / (i**2) for i in x]  # loss values array
plt.ion()
for i in range(1, len(x)):
    ix = x[:i]
    iy = loss[:i]
    plt.cla()
    plt.title("loss")
    plt.plot(ix, iy)
    plt.xlabel("epoch")
    plt.ylabel("loss")
    plt.pause(0.5)
plt.ioff()
plt.show()

动态地展示多张图片

    f, a = plt.subplots(1, 1, figsize=(5, 5))
    plt.ion()
    for imgPath in imglist:
        img = cv.imread(imgPath)
        a.imshow(img); a.set_xticks(()); a.set_yticks(())
        plt.pause(0.5)

    plt.ioff()
    plt.show()

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42990464/article/details/112347386