如何仅放大Seaborn热力图(混淆矩阵)的数值文本?
仅放大混淆矩阵中数值的解决方案
要单独放大混淆矩阵内的数值,无需改变标题、坐标轴标签等元素的大小,只需利用Seaborn heatmap函数的annot_kws参数,专门控制标注文本的样式即可。
修改后的完整代码如下:
import seaborn as sn import pandas as pd import matplotlib.pyplot as plt import numpy as np array = [[1779, 17, 6, 2, 1], [7, 348, 15, 0, 0], [11, 29, 930, 13, 16], [0, 0, 24, 160, 9], [1, 5, 20, 13, 256] ] df_cm = pd.DataFrame(array, index = ['No DR', 'Mild', 'Moderate', 'Severe', 'Proliferative' ], columns = ['No DR', 'Mild', 'Moderate', 'Severe', 'Proliferative' ]) plt.figure(figsize = (20,10)) # 添加annot_kws参数单独设置数值字体大小 hmap = sn.heatmap(df_cm, annot=True, fmt='g', cmap="Blues", annot_kws={'size': 20}) plt.title('VGG16 Base Model', fontsize = 20, pad=20) plt.xlabel('Predicted Class', fontsize = 15, labelpad=20) plt.ylabel('Actual Class', fontsize = 15, labelpad=20) plt.show()
关键说明
annot_kws={'size': 20}:这个参数专门针对annot=True时的标注文本生效,其中size值可以根据需求调整(比如改成25、18等),直到矩阵内的数值清晰易读。- 标题、坐标轴标签的字体大小依然按照原本设置的
fontsize参数保持不变,不会受到annot_kws的影响。
内容的提问来源于stack exchange,提问作者imdatyaa
相关产品推荐
相关产品推荐

