Seaborn 热力图清晰度优化:解决类别过多导致的模糊问题
Seaborn 热力图清晰度优化:解决类别过多导致的模糊问题
在使用 Seaborn 绘制混淆矩阵热力图时,如果类别数目过多,可能会导致热力图过于密集,难以清晰辨认。本文将提供代码示例,介绍如何通过调整热力图大小和字体大小等方法,解决此问题,让热力图更加清晰易读。
问题:
当类别数目较多时,Seaborn 热力图可能会变得过于密集,难以看清各个方框中的数值。
解决方案:
可以通过以下方法优化热力图,使其更加清晰:
- 调整热力图大小: 使用
plt.figure(figsize=(width, height))方法调整热力图的大小,使其能够容纳更多内容。 - 调整字体大小: 使用
annot_kws={'size': fontsize}参数调整热力图中方框内数字的字体大小。 - 调整轴标签和标题字体大小: 使用
fontsize参数调整plt.xlabel、plt.ylabel和plt.title的字体大小。
代码示例:
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
# 读取保存的csv文件
cm_df = pd.read_csv(r'C:\Users\New\Desktop\周会\横向会议纪要\cm2023-07-13_11-00-44.csv', index_col=0)
cm_df.columns = range(0, 156)
cm_df.index = range(0, 156)
# 绘制热力图
plt.figure(figsize=(12, 10))
sns.heatmap(cm_df, annot=True, cmap='Blues', fmt='d', cbar=False, square=True, linewidths=0.5, annot_kws={'size': 8})
plt.xlabel('Predicted Label', fontsize=12)
plt.ylabel('True Label', fontsize=12)
plt.title('Confusion Matrix Heatmap', fontsize=14)
plt.show()
在这个代码中,我们通过 figsize 参数调整了热力图的大小为 12x10,通过 annot_kws 参数调整了热力图中方框内数字的字体大小为 8,通过 fontsize 参数调整了 x 轴、y 轴标签和标题的字体大小为 12 和 14。
通过以上调整,您可以轻松解决类别过多导致的热力图模糊问题,使其更加清晰易读。
原文地址: https://www.cveoy.top/t/topic/pKhh 著作权归作者所有。请勿转载和采集!