0

0

如何使用Python中的seaborn在热力图单元格注释中添加文本?

王林

王林

发布时间:2023-08-19 16:09:23

|

2117人浏览过

|

来源于tutorialspoint

转载

热力图对于识别数据中的模式和趋势非常有用,并且可以通过向单元格添加注释来进一步定制,例如文本标签或数值,这可以提供有关数据的额外信息。在本文中,我们将讨论如何使用python中的seaborn在热力图单元格注释中添加文本。我们将探讨seaborn中可用的不同方法和选项来自定义文本注释,例如更改文本的字体大小、颜色和格式。

热力图

热力图(或热图)是一种数据可视化方法,通过在二维图上使用不同颜色来表示现象的强度。颜色的色调或饱和度可能会变化,以向读者展示现象在时间和空间上的聚集或变化情况。热力图主要分为两类:聚类热力图和空间热力图。

集群热图将现象和类别显示为行和列,通过固定大小的单元矩阵来组织大小。集群的排序是有意为之的,并且有些随机,旨在通过统计研究来建议或显示。单元的尺寸完全随机,但足够大以便可读。空间热图中没有单元的概念,现象被视为不断变化的,因此大小的位置取决于其在该空间中的位置。

Seaborn

的中文翻译为:

Seaborn

Seaborn是一个用于从数据中制作图表和图形的Python包。它以matplotlib为基础,并且与pandas库很好地配合使用。

Seaborn帮助进行数据发现、可视化和理解。通过使用绘图方法处理包含完整数据集的数据框和数组,并进行必要的语义映射和统计聚合,以生成有洞察力的图表。借助其声明式、以数据集为中心的API,您可以专注于图表组件的含义,而不是渲染它们的技术细节。

立即学习Python免费学习笔记(深入)”;

使用seaborn绘制热力图的语法

sns.heatmap(dt, *, vmin=None, vmax=None, cmap=None, center=None, annot_kws=None, linewidths=0, linecolor=’white’, cbar=True, **kwargs)

Explanation

翻译成中文为:

解释

序号

属性

定义

1.

dt

它用于将2D数据集转换为ndarray。如果提供了使用pandas的DataFrame,则可以使用列数据来指定行和列。

2.

vamx和vmin

它们提供了用作色图起点的值。如果没有提供,这些值将从数据和其他关键字参数中推断出来。

3.

cmap

它定义了数据值如何映射到颜色空间。如果没有指定默认值,将取决于是否设置了中心值。

4.

center

绘制不同数据集时,这是用于设置颜色映射的中心值。如果没有给出其他参数,这个参数将改变默认的颜色映射。

5.

annot

如果annot参数的值为true,则将数据写入每个热图单元格。

6.

annot_kws

只有当annot参数的值为true时,它才定义了函数matplotlib.axes.Axes.text()的参数。

7.

linewidhts

该参数定义了每个单元格之间的分割线的宽度。

8.

linecolor

这个参数定义了每个单元格之间的分割线的颜色。

9.

cbar

它定义了我们是否需要绘制一个色条。

在热力图单元格注释中添加文本

热力图的行和列可以进行注释以提供额外的上下文。通常将annot选项设置为True以在热力图的顶部显示数据值。

Convai Technologies Inc.
Convai Technologies Inc.

对话式 AI API,用于设计游戏和支持端到端的语音交互

下载

Annot and fmt parameter

的中文翻译为:

Annot和fmt参数

  • Annot − sns.heatmap() 的 annot(注释)功能允许您在 Python seaborn 热力图中显示与每个单元格关联的数值。我们可以显示所选单元格的原始数字,或根据您的指示显示不同的数字。将 True 传递给 annot 将导致在每个热力图单元格中显示该值。

  • Fmt − annot参数仅允许将数值添加到Python热力图单元格中,而fmt参数允许添加字符串(文本)值。

在这里,创建了一个包含字符串值的2D numpy数组,并将其传递给annot。另外,字符串值"s"被传递给fmt。

Example

的中文翻译为:

示例

import numpy as n
import matplotlib.pyplot as p
import seaborn as s

# creating random data using numpy
df = n.array([[11, 12, 13, 14, 15], [16, 17, 18, 19, 20], [21, 22, 23, 24, 25]])

# creating text array using numpy
tx = n.array([['Amy', 'Bryn', 'Calis', 'Daisy', 'Eagel'], ['Fin', 'Garry', 'Hary', 'Ingleis', 'Jack'],
   ['Kim', 'Lasy', 'Mia', 'Nia', 'Olivia']])

# creating subplot
figure, axx = p.subplots()
 
# defining heatmap on current axes using seaborn 
axx = s.heatmap(df, annot=tx, fmt="")

输出

如何使用Python中的seaborn在热力图单元格注释中添加文本?

结论

在本文中,我们了解到热力图可以在二维图表中显示现象的大小,并可用于数据可视化。我们已经看到了如何使用Python的Seaborn库来定义热力图,以及定义热力图的语法和参数。最后,我们还了解了如何使用属性annot和fmt来在热力图的单元格注释中添加文本。

相关文章

python速学教程(入门到精通)
python速学教程(入门到精通)

python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Java 桌面应用开发(JavaFX 实战)
Java 桌面应用开发(JavaFX 实战)

本专题系统讲解 Java 在桌面应用开发领域的实战应用,重点围绕 JavaFX 框架,涵盖界面布局、控件使用、事件处理、FXML、样式美化(CSS)、多线程与UI响应优化,以及桌面应用的打包与发布。通过完整示例项目,帮助学习者掌握 使用 Java 构建现代化、跨平台桌面应用程序的核心能力。

61

2026.01.14

php与html混编教程大全
php与html混编教程大全

本专题整合了php和html混编相关教程,阅读专题下面的文章了解更多详细内容。

31

2026.01.13

PHP 高性能
PHP 高性能

本专题整合了PHP高性能相关教程大全,阅读专题下面的文章了解更多详细内容。

72

2026.01.13

MySQL数据库报错常见问题及解决方法大全
MySQL数据库报错常见问题及解决方法大全

本专题整合了MySQL数据库报错常见问题及解决方法,阅读专题下面的文章了解更多详细内容。

20

2026.01.13

PHP 文件上传
PHP 文件上传

本专题整合了PHP实现文件上传相关教程,阅读专题下面的文章了解更多详细内容。

21

2026.01.13

PHP缓存策略教程大全
PHP缓存策略教程大全

本专题整合了PHP缓存相关教程,阅读专题下面的文章了解更多详细内容。

7

2026.01.13

jQuery 正则表达式相关教程
jQuery 正则表达式相关教程

本专题整合了jQuery正则表达式相关教程大全,阅读专题下面的文章了解更多详细内容。

4

2026.01.13

交互式图表和动态图表教程汇总
交互式图表和动态图表教程汇总

本专题整合了交互式图表和动态图表的相关内容,阅读专题下面的文章了解更多详细内容。

49

2026.01.13

nginx配置文件详细教程
nginx配置文件详细教程

本专题整合了nginx配置文件相关教程详细汇总,阅读专题下面的文章了解更多详细内容。

11

2026.01.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号