如何增大热力图X轴与Y轴的字体大小?
如何在Matplotlib与Seaborn热力图中增大X轴和Y轴字体大小?
下面提供几种实用的方法,结合你的代码示例进行修改:
方法1:全局缩放Seaborn字体(简单高效)
seaborn.set(font_scale)可以全局放大所有Seaborn生成的文本元素(包括轴刻度、标注、图例等),注意要在绘图代码前调用,否则不会生效。
修改后的完整代码:
import seaborn as sns import matplotlib.pyplot as plt # 全局设置字体缩放比例,3表示放大3倍 sns.set(font_scale=3) # 计算变量相关性 corr = data_set.corr() # 设置绘图尺寸 f, ax = plt.subplots(figsize=(40, 20)) # 自定义发散色卡 cmap = sns.diverging_palette(230, 20, as_cmap=True) # 绘制热力图(指定ax参数,确保关联到当前轴) sns.heatmap(corr, annot=True, cmap=cmap, ax=ax) # 设置标题 ax.set_title('Correlation Heat Map', weight='bold', fontsize=25) plt.show()
方法2:单独调整轴刻度字体(灵活可控)
如果只需要调整X/Y轴的刻度字体,不影响其他元素(比如热力图内的标注文字),可以用Matplotlib的tick_params方法直接设置:
import seaborn as sns import matplotlib.pyplot as plt # 计算变量相关性 corr = data_set.corr() # 设置绘图尺寸 f, ax = plt.subplots(figsize=(40, 20)) # 自定义发散色卡 cmap = sns.diverging_palette(230, 20, as_cmap=True) # 绘制热力图 sns.heatmap(corr, annot=True, cmap=cmap, ax=ax) # 设置标题 ax.set_title('Correlation Heat Map', weight='bold', fontsize=25) # 单独调整X轴和Y轴的刻度字体大小 ax.tick_params(axis='x', labelsize=25) # X轴刻度字体大小设为25 ax.tick_params(axis='y', labelsize=25) # Y轴刻度字体大小设为25 # 也可以一次性设置两者:ax.tick_params(axis='both', labelsize=25) plt.show()
方法3:自定义轴标签属性(支持更多样式)
如果需要对轴标签做额外调整(比如旋转角度、字体样式),可以直接修改轴标签的属性:
import seaborn as sns import matplotlib.pyplot as plt # 计算变量相关性 corr = data_set.corr() # 设置绘图尺寸 f, ax = plt.subplots(figsize=(40, 20)) # 自定义发散色卡 cmap = sns.diverging_palette(230, 20, as_cmap=True) # 绘制热力图 sns.heatmap(corr, annot=True, cmap=cmap, ax=ax) # 设置标题 ax.set_title('Correlation Heat Map', weight='bold', fontsize=25) # 调整X轴标签:字体大小25,旋转45度避免重叠 ax.set_xticklabels(ax.get_xticklabels(), fontsize=25, rotation=45) # 调整Y轴标签:字体大小25 ax.set_yticklabels(ax.get_yticklabels(), fontsize=25) plt.show()
各方法适用场景
- 想要整体统一调整所有Seaborn文本:选方法1
- 仅需调整轴刻度字体:选方法2
- 需要对轴标签做旋转、字体样式等自定义:选方法3
内容的提问来源于stack exchange,提问作者user20155022
相关产品推荐
相关产品推荐

