You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中调整混淆矩阵热力图的统一颜色刻度(0-100)

统一混淆矩阵颜色刻度的调整方法

你遇到的问题是因为ConfusionMatrixDisplay默认会根据当前混淆矩阵的数值范围自动适配颜色映射,导致不同总和的矩阵之间,相同颜色可能对应不同数值。要让所有混淆矩阵的颜色强度统一基于0-100的尺度,只需要在plot()方法里手动指定vmin和vmax参数即可:

修改后的代码如下:

import matplotlib.pyplot as plt
from sklearn.datasets import make_classification
from sklearn.metrics import confusion_matrix, ConfusionMatrixDisplay

cm = confusion_matrix(y_true, y_pred, labels=["Up", "Down"])
disp = ConfusionMatrixDisplay(confusion_matrix=cm,display_labels=["Up", "Down"])
# 固定颜色映射的范围为0到100
disp.plot(cmap="OrRd", vmin=0, vmax=100)
plt.show()
  • vmin=0:强制颜色映射的最小值对应数值0
  • vmax=100:强制颜色映射的最大值对应数值100

这样不管每个混淆矩阵的数值总和是多少,颜色强度都会严格按照0-100的尺度来对应,数值22和32的颜色自然会有明显差异,所有矩阵的颜色标尺也能保持一致。

内容的提问来源于stack exchange,提问作者Farid

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 16:30:58