如何在Seaborn中更改标签刻度颜色

时间:2018-09-18 18:47:47

标签: python seaborn

我有一个令人难忘的情节,我想为其创建自定义刻度标签颜色。

代码是:

short_cols = ['col_1', 'col_2', 'col_3', 'col_4', 'col_5', 'col_6', 'col_7', 'col_8', 'col_9', 'col_10', 'col_11', 'col_12', 'col_13', 'col_14', 'col_15', 'col_16', 'col_17', 'col_18', 'col_19']

fig, ax = plt.subplots(figsize=(13,10)) 
sns.heatmap(jr_matrix, 
            center=0, 
            cmap="vlag", 
            linewidths=.75, 
            ax=ax,
            norm=LogNorm(vmin=jr_matrix.min(), vmax=jr_matrix.max()))
ax.set_xticklabels(short_cols, rotation=90, size=14, labelcolor='red')
ax.set_yticklabels(short_cols, rotation=0, size=14)

情节看起来像这样:

enter image description here

short_cols中的某些项目之间有一定的分组,这样可以将它们设置为相同的颜色。

我的问题是,如何调整刻度标签的颜色,以便可以在绘图中反映这种关联。

例如,假设组为:

group1 = ['col_1', 'col_2', 'col_3']
group2 = ['col_4', 'col_5']
group3 = ['col_6']
...
group7=['col_18', 'col_19']

这里的任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

confusion_M  = pd.crosstab(model1_pred.Predicted_class,model1_pred.Actual_class)
sn.set(rc={'axes.facecolor':'black', 'figure.facecolor':'black',})
fig = plt.figure(figsize=(13,10))
g= sn.heatmap(confusion_M,annot=True,cmap = "coolwarm",fmt = ".1f",annot_kws= 
{'size':100})
for tick_label in g.axes.get_yticklabels():
    tick_label.set_color("white")
    tick_label.set_fontsize("30")
fig.tight_layout()