首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用函数"annot_kws“的参数"sns.heatmap”来修改注释文本?

如何使用函数"annot_kws“的参数"sns.heatmap”来修改注释文本?
EN

Stack Overflow用户
提问于 2022-02-16 13:18:41
回答 1查看 720关注 0票数 0

如何使用"seaborn.heatmap“函数绘制这样的热图?色差由矩阵A决定,每个网格的注释由矩阵B决定。例如,如果我得到一个矩阵,我希望它的颜色按照这个矩阵的z分数来显示,但是注释仍然是矩阵本身。我知道我应该求助于参数'annot_kws',但是我应该如何编写代码呢?

EN

Stack Overflow用户

回答已采纳

发布于 2022-02-16 14:45:53

不只是设置annot=True,可以将annot=设置为与数据相同数量的数据(或2D numpy数组或列表列表)。这样,着色将使用data应用,注释将来自annot。西博恩仍然将注意使用白色文本的黑暗细胞和黑色文本的光。

annot_kws=用于更改文本属性 (通常为fontsize )。但是,如果使用了多行文本,也可以更改字体本身或对齐方式。

下面是一个使用数字1到36作为注释的示例,但是数字模10用于着色。annot_kws用于文本的放大和旋转。(注意,当注释是字符串时,还需要设置格式,例如fmt='')。

代码语言:javascript
运行
复制
import seaborn as sns
import numpy as np

a = pd.DataFrame({'count': [1, 2, 3]})

matrix_B = np.arange(1, 37).reshape(6, 6)  # used for annotations
matrix_A = (matrix_B % 10)  # used for coloring
sns.heatmap(data=matrix_A, annot=matrix_B,
            annot_kws={'size': 20, 'rotation': 45},
            square=True, cbar_kws={'label': 'last digit'})

票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71142600

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档