2 回答
TA贡献1817条经验 获得超14个赞
尝试使用 matplotlib qt 后端:
%matplotlib qt
或者如果您正在运行 .py 文件
from IPython import get_ipython
get_ipython().run_line_magic('matplotlib', 'qt')
然后创建全局axe对象ax = plt.axes() 并最终使用它来绘制您的图:
def plot_stuff():
ax.clear()
x = np.linspace(-10, 10, 50)
ax.plot(x, np.sin(x))
如果您想绘制预测值,您可以创建一些自定义指标功能,这些功能将简单地返回y_true或y_pred值。并使用TensorBoard回调来绘制它。
TA贡献1829条经验 获得超4个赞
这对我有用:
plt.show(block=False)
进而
def cb(x, y_true):
def _(batch, logs):
s,e=batch*batch_size,(batch+1)*batch_size
y_pred = model.predict(
x[s:e],
batch_size=batch_size
)
plt.clf()
plt.plot(y_true[s:e], label='true')
plt.plot(y_pred, label='pred')
plt.axis([0, batch_size, -1, 1])
plt.legend()
plt.draw()
plt.pause(0.0001)
return _
cb_plot=keras.callbacks.LambdaCallback(on_batch_end=cb(train_X,train_y))
添加回答
举报