在 Seaborn 热图中更改注释文本颜色

Changing annotation text color in Seaborn heat map

我想更改 seaborn 热图中注释文本的颜色。默认情况下,图中较暗区域的文本为白色。但是,我试图匹配另一个情节的风格,所以我希望文本是黑色的。

我在下面附上了我的代码示例

ax = sns.heatmap(test, annot=True, 
            fmt='.2', cmap= custom_color_map)

ax.set_title('Seaborn Confusion Matrix with labels\n\n');
ax.set_xlabel('Predicted Values')
ax.set_ylabel('Actual Values ');

## Ticket labels - List must be in alphabetical order
ax.xaxis.set_ticklabels(['0','1', '2', '3, '4'])
ax.yaxis.set_ticklabels(['0','1', '2', '3, '4'])

如您所见,对角线上的文字是白色的,因为单元格颜色较深。我想把它改成黑色。

感谢您的帮助。

您可以在 heatmap 函数的 annot_kws 参数中定义合适的样式,就像在 html.

中一样

这是一个例子:

sns.heatmap(data.corr(), cmap=”coolwarm”, annot=True, annot_kws={‘fontsize’:12, ‘fontstyle’:’italic’, ‘color’:”b”, ‘alpha’:0.6, ‘rotation’:”vertical”,’verticalalignment’:’center’, ‘backgroundcolor’:’w’})

您可以在 vii 中找到更多信息 here。 annot_kws部分.