更改seaborn热图的xticklabels fontsize

Han*_*gzu 16 python matplotlib seaborn

这是我的问题:
我使用sns.clustermap()
图来绘制7变量的系数:

http://i4.tietuku.com/ab10ee8d1983361f.png

  • x/y tickslabel看起来很小(在我的例子中,s1,s2,... s9)

我的尝试

  • label='big ==>没效果
  • plt.tick_params(axis ='both',which ='minor',labelsize = 12)===> cbar lable已更改,但x/y轴看起来相同.

http://i11.tietuku.com/5068224d5bbc7c00.png

我的代码:

 ds =  pd.read_csv("xxxx.csv")
 corr = ds.corr().mul(100).astype(int)

 cmap = sns.diverging_palette(h_neg=210, h_pos=350, s=90, l=30, as_cmap=True)

 sns.clustermap(data=corr_s, annot=True, fmt='d',cmap = "Blues",annot_kws={"size": 16},)
Run Code Online (Sandbox Code Playgroud)

N. *_*uda 37

sns.set(font_scale=1.4)在绘制数据之前考虑调用.这将缩放图例中和轴上的所有字体.

我的情节是从这个, 在此输入图像描述

对此,

在此输入图像描述

当然,将缩放调整为您认为好的设置.

码:

sns.set(font_scale=1.4)
cmap = sns.diverging_palette(h_neg=210, h_pos=350, s=90, l=30, as_cmap=True)
sns.clustermap(data=corr, annot=True, fmt='d', cmap="Blues", annot_kws={"size": 16})
Run Code Online (Sandbox Code Playgroud)


5no*_*rre 16

或者只使用 set_xticklabels:

g = sns.clustermap(data=corr_s, annot=True, fmt='d',cmap = "Blues")
g.ax_heatmap.set_xticklabels(g.ax_heatmap.get_xmajorticklabels(), fontsize = 16)
Run Code Online (Sandbox Code Playgroud)

要为刻度标签获取不同的颜色:

import matplotlib.cm as cm
colors = cm.rainbow(np.linspace(0, 1, corr_s.shape[0]))
for i, ticklabel in enumerate(g.ax_heatmap.xaxis.get_majorticklabels()):
    ticklabel.set_color(colors[i])
Run Code Online (Sandbox Code Playgroud)