这是我的代码来绘制我的模型精度/损失。
import matplotlib.pyplot as plt
train_acc, = np.array(hist.history.get('acc'))
val_acc, = np.array(hist.history.get('val_acc'))
plt.figure()
epochs=np.arange(len(train_acc))
plt_train_acc = plt.plot(epochs,train_acc,'r',label='Train_Acc')
plt_val_acc = plt.plot(epochs,val_acc,'b',label='Val_Acc')
plt.title('Acc Trends')
plt.ylabel('Acc')
plt.xlabel('Epochs')
plt.legend( [plt_train_acc,plt_val_acc],
[train_acc,val_acc], )
plt.savefig("trendsPlot.jpg")
plt.show()
但我得到“类型错误:'bool' object is not callable”错误(对于plt.legend行)
3条答案
按热度按时间mo49yndu1#
我不知道为什么,但我也不得不面对同样的问题,有时当使用'
Jupiter notebook
',我不得不重新启动内核再次使用。可以使用subplots
的object
轴,示例代码如下。vwhgwdsa2#
我通过重新安装“SciPy”解决了这个问题。它不仅解决了上面的问题,还解决了我不能导入“海运”和“失踪”的问题。
顺便说一下,我很困惑,他们只发生在'jupyter笔记本',但不是在'spyder'和'pycharm'。
91zkwejq3#
发生这种情况的原因是你错误地使用了plt.legend=而不是plt.legend()在过去,这将导致函数被分配给你第一次输入的值,并将函数更改为变量,这就是为什么它说函数是一个bool变量,不可调用,据我所知,修复它的唯一方法是重新启动内核重置模块。