1. 数据格式:矩阵

包括行号和列号

使用R语言进行聚类分析:热点图+横向聚类图+纵向聚类图_聚类分析

2. 热点图+聚类

# 热点图
heatmap(Amat)

使用R语言进行聚类分析:热点图+横向聚类图+纵向聚类图_数据格式_02

3. 纵向聚类图1

# 横向聚类1
library(amap)
clu <- hclusterpar(Amat)
plot(clu,sub="",hang = -1,xlab = NA,ylab = NA,main = NA)

使用R语言进行聚类分析:热点图+横向聚类图+纵向聚类图_聚类分析_03

4. 纵向聚类图2

# 横向聚类
library(cluster)
agnx <- agnes(Amat,method = "complete")
pltree(agnx)

使用R语言进行聚类分析:热点图+横向聚类图+纵向聚类图_数据格式_04

5. 横向聚类图

# 纵向聚类
dagn <- as.dendrogram(as.hclust(agnx))
plot(dagn, horiz = TRUE, center = TRUE,
nodePar = list(lab.cex = 0.6, lab.col = "forest green", pch = NA))

使用R语言进行聚类分析:热点图+横向聚类图+纵向聚类图_数据格式_05

6. 拓展:家系划分

关于拓展,你有什么想到的呢?

如果根据系谱,构建A矩阵,然后将相关的个体提取出来,划分家系,这不就是聚类分析灵活的例子么?

如果根据基因组信息,构建G矩阵或者H矩阵,然后将感兴趣的个体提取出来,划分家系,指导育种选配,不也是一个方向么?

这部分,我们下回再聊。