【发布时间】:2021-10-26 16:36:25
【问题描述】:
我正在尝试在同一张图像中绘制混淆矩阵,但它们的大小不同。
代码如下:
fig, ax = plt.subplots(nrows=1, ncols=2, figsize = (18,8))
fig.suptitle('Matriz de Confusão')
skplt.metrics.plot_confusion_matrix(y_test, y_pred_log, normalize=True, ax=ax[0], title=('Regressão Logística'))
skplt.metrics.plot_confusion_matrix(y_test, y_pred_tree, normalize=True, ax=ax[1], title=('Árvore de decisão'))
ax[0].xaxis.set_ticklabels(['Normal', 'Fraude']); ax[0].yaxis.set_ticklabels(['Normal', 'Fraude']);
ax[1].xaxis.set_ticklabels(['Normal', 'Fraude']); ax[1].yaxis.set_ticklabels(['Normal', 'Fraude']);
plt.show()
这就是我得到的:
如何更改第二个图的大小?
另外,如果我可以删除多余的颜色条会很好。
【问题讨论】:
-
在
fig, ax = ...之后尝试ax = ax.ravel()看看会发生什么。虽然我无法在matplotlib 3.4.3中重现此问题 -
plot_confusion_matrix有参数colorbar=False,但是,删除颜色条会改变矩阵的大小,这也是为什么你的两个绘图轴大小不同的原因。一个没有颜色条,一个有两个,所以 API 调整了它们的大小。由于这不包含完整的minimal reproducible example,因此无法重现。
标签: python matplotlib plot scikit-learn confusion-matrix