什么是热图
当我有一个二维矩阵,例如:TCGA-97-7938-01ATCGA-55-7574-01ATCGA-05-4250-01ATCGA-95-A4VK-01ATCGA-97-A4M6-01A
TSPAN65.207884.414375.875945.048486.7465
TNMD-1.82696-6.55213-4.05143-5.51472-3.93795
DPM14.47213.9884.990233.578924.2579
SCYL33.994453.578443.009754.429264.62895
C1orf1122.187512.794383.10662.255672.56278
这是一个TCGA肺腺癌的基因表达谱(logCPM,前5个基因、5个样本)。我想以直观的方式观察这个二维矩阵,怎么办?
这个时候就要用到热图了。这个矩阵的热图(前50个基因、50个样本):
图一
细心的看官会看出来这个热图跟在文献中见到的热图有点不一样,在文献中见到的热图是这样的:
图二
这是为什么呢?原来在 图一 中直接看很难看出什么信息,有人就想啊,能不能对行和列进行排序,把相似的排到一起 这样不就能直观地反应信息了吗?当然排序的方法有很多,你可以自己排,也可以使用聚类的方法。所谓聚类的方法 就是对行列(可以都聚类,也可以只对行聚类,或者只对列聚类)进行聚类,把聚到同一类的放到一起。 图二 就是对 样本和基因都进行了层次聚类,距离较近的放到一起。
R语言如何画热图
R语言能画热图的方法有很多,本文介绍如何使用 ph