Python 数据可视化:Seaborn 聚类热图
Seaborn 库中的 clustermap 函数用于创建聚类热图,将样本按相似性聚类并以矩阵形式展示。支持行/列聚类、距离度量方法选择及颜色映射自定义。通过 iris 数据集演示了基础用法、布局调整、标签添加、颜色映射更换及标准化处理等场景,帮助直观理解数据间的相似性和差异性。

Seaborn 库中的 clustermap 函数用于创建聚类热图,将样本按相似性聚类并以矩阵形式展示。支持行/列聚类、距离度量方法选择及颜色映射自定义。通过 iris 数据集演示了基础用法、布局调整、标签添加、颜色映射更换及标准化处理等场景,帮助直观理解数据间的相似性和差异性。

sns.clustermap 是 Seaborn 库中用于创建聚类热图的函数,该函数能够将数据集中的样本按照相似性进行聚类,并将聚类结果以矩阵的形式展示出来。
该函数主要用于绘制聚类热图,通过颜色深浅来表示数据值的大小或类别,从而直观地展示数据间的相似性和差异性。在聚类热图中,每个样本被表示为一个方块,方块的颜色表示样本的特征值,方块的位置表示样本的聚类结果。
使用 sns.clustermap 需要注意数据集的大小和复杂性,因为聚类分析可能需要较长的计算时间。可以根据需要对聚类热图进行进一步的自定义,如设置颜色映射、调整标签等。sns.clustermap 函数返回的是一个 ClusterGrid 对象,该对象包含了热图和聚类树等组件,可以通过该对象进行进一步的自定义和修改。
import seaborn as sns
# 加载 iris 数据集
iris = sns.load_dataset("iris")
# 将 species 列从 iris 数据集中弹出,并赋值给 species 变量
species = iris.pop("species")
# 使用 seaborn 库中的 clustermap 函数,对 iris 数据集进行聚类分析
sns.clustermap(iris)

sns.clustermap(
iris,
figsize=(7, 5),
row_cluster=False,
dendrogram_ratio=(.1, .2),
cbar_pos=(0, .2, .03, .4)
)

# 创建一个字典,将 species 中的唯一值映射到"rbg"中的颜色
lut = dict(zip(species.unique(), "rbg"))
# 将 species 中的值映射到 lut 中的颜色
row_colors = species.map(lut)
# 使用 seaborn 的 clustermap 函数绘制聚类图,并将 species 的颜色映射到行颜色
sns.clustermap(iris, row_colors=row_colors)

# 使用 seaborn 库中的 clustermap 函数绘制聚类热图
# iris 为数据集,cmap 为颜色映射,vmin 和 vmax 为颜色映射的最小值和最大值
sns.clustermap(iris, cmap="mako", vmin=0, vmax=10)

# 使用 seaborn 库中的 clustermap 函数,对 iris 数据集进行聚类分析
# metric 参数指定聚类时使用的距离度量方式,这里使用相关系数
# method 参数指定聚类时使用的聚类方法,这里使用单链接法
sns.clustermap(iris, metric="correlation", method="single")

# 使用 seaborn 库中的 clustermap 函数对 iris 数据集进行聚类分析,并将标准化后的数据绘制成热图
sns.clustermap(iris, standard_scale=1)

# 使用 seaborn 库中的 clustermap 函数绘制聚类热图
# iris 为数据集,z_score 为 0 表示不进行标准化,cmap 为"vlag"表示使用 vlag 颜色映射,center 为 0 表示将数据集中的数值中心化
sns.clustermap(iris, z_score=0, cmap="vlag", center=0)


微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online