繁体   English   中英

如何更改 sklearn.metrics 中的 plot_confusion_matrix 默认图形大小 package

[英]How to change plot_confusion_matrix default figure size in sklearn.metrics package

我尝试使用 sklearn.metrics.plot_confusion_matrix plot 混淆矩阵与 Jupyter notebook package,但默认图形尺寸有点小。 我在绘图之前添加了 plt.figure(figsize=(20, 20)) ,但图形大小没有随着 output 文本“图形大小 1440x1440 和 0 轴”而改变。 如何更改图形大小?

%matplotlib inline
from sklearn.ensemble import GradientBoostingClassifier
from sklearn.metrics import plot_confusion_matrix
from matplotlib import pyplot as plt

plt.figure(figsize=(20, 20))
clf = GradientBoostingClassifier(random_state=42)
clf.fit(X_train, y_train)
plot_confusion_matrix(clf, X_test, y_test, cmap=plt.cm.Blues)
plt.title('Confusion matrix')
plt.show()

就像这个图像

我不知道为什么 BigBen 将其作为评论而不是答案发布,但我几乎错过了看到它。 这是一个答案,所以未来的围观者不会犯我几乎犯的同样错误!

fig, ax = plt.subplots(figsize=(10, 10))
plot_confusion_matrix(your_model, X_test, y_test, ax=ax)

我使用set_figwidthset_figheight来指定图形大小

from sklearn.metrics import confusion_matrix, ConfusionMatrixDisplay  
import matplotlib.pyplot as plt 
disp = ConfusionMatrixDisplay.from_predictions(
                  [0,1,1,0,1], 
                  [0,1,0,1,0], 
                  labels=[1,0],
                  cmap=plt.cm.Blues,
                  display_labels=['Good','Bad'], 
                  values_format='',  
) 
fig = disp.ax_.get_figure() 
fig.set_figwidth(3)
fig.set_figheight(3)  

ConfusionMatrixDisplay在可视化混淆矩阵时比plot_confusion_matrix提供更多的控制和灵活性。 更多信息: 文档

from sklearn.metrics import ConfusionMatrixDisplay  
y_true = [0,1,1,0,1]
y_pred = [0,1,0,1,0]
labels = ['Good','Bad'] # 0: Good and 1: Bad
disp = ConfusionMatrixDisplay.from_predictions(
                                              y_true, 
                                              y_pred, 
                                              display_labels=labels, 
                                              cmap=plt.cm.Blues
                                              ) 
fig = disp.figure_
fig.set_figwidth(10)
fig.set_figheight(10) 
fig.suptitle('Plot of confusion matrix')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM