Python plt.show()之后,程序阻塞的问题

问题情景

import matplotlib.pyplot as plt

epoch = [0,1,2]
loss = [0,1,0]

plt.plot(epoch,loss)
plt.show()
print(x)

做神经网络训练时,会期望一边执行程序,一边能看到相应的loss变化。
执行类似上述功能的代码时,plt.show()之后的代码在关闭figure之后才会继续执行,这样就会导致我们训练被中断,在上述代码中的体现为“print(x)”在plt.show()显示的figure窗口关闭后才会被执行。
因此,这里找了个方案来解决这个问题。

解决方案

使用plt.savefig(),可以把每个epoch-loss图保存到本地,而不中断程序

import matplotlib.pyplot as plt

epoch = [0,1,2]
loss = [0,1,0]

plt.plot(epoch,loss)
epoch = len(loss)
filePath = './checkpoints/lossMap/' + str(epoch) + '_loss'
plt.savefig(filePath)
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值