使用ComplexHeatmap绘制复杂热图|Note1:简介

complexheat.jpg

写在前面

作为目前最常见的一种可视化手段,热图因其丰富的色彩变化和生动饱满的信息表达被广泛应用于各种大数据分析场景。ComplexHeatmap包提供了一种高度灵活的方式来安排多个热图,并支持自定义的注释图形。所以,开个新坑,慢更ComplexHeatmap使用指南。如果觉得更新太慢可以直接看原教程,链接放文末。

ComplexHeatmap使用指南

Make Complex Heatmaps

1.简介

复杂的热图可以有效地可视化不同数据源之间的关联,并揭示潜在的模式。ComplexHeatmap包提供了一种高度灵活的方式来安排多个热图,并支持自定义的注释图形。

1.1 总体设计

单个热图由热图体和热图组件组成。可以按行和列分割热图主体。热图组件包括标题、树状图、矩阵名称和热图注释,它们被放置在heatmap主体的四边。热图组件根据热图主体重新排序或拆分。

General design

ComplexHeatmap包是以面向对象的方式实现的。为了描述热图列表,有以下:

  • Heatmap class: 单个热图,包含热图主体、行/列名称、标题、树状图和行/列注释。
  • HeatmapList class: 热图和热图注释的列表。
  • HeatmapAnnotation class: 定义行注释和列注释的列表。热图标注可以是热图的组成部分,也可以像热图一样独立存在。

还有几个内部类:

  • SingleAnnotation class: 定义单行注释或单列注释。 HeatmapAnnotation 对象包含一个 SingleAnnotation 对象列.
  • ColorMapping class: 从值映射到颜色。主矩阵和注释的颜色映射由ColorMapping类控制。
  • AnnotationFunction class: 构造用户定义的注释。这是创建用户定义注释图形的基础。

1.2 接下来的章节简介

  • A Single Heatmap

介绍单个热图的配置

  • Heatmap Annotations

介绍了热图标注的概念,并演示了如何进行简单标注和复杂标注。此外,本章还解释了列注释和行注释之间的区别。

  • A List of Heatmaps

介绍如何连接热图列表和注释,以及如何应用调整来保持热图的对应关系。

  • Legends

介绍如何配置热图图例和标注图例,以及如何创建自定义图例。

  • Heatmap Decoration

介绍在热图生成后,在热图中添加更多自定义图形的方法。

  • OncoPrint

介绍如何制作oncoPrints以及如何集成从ComplexHeatmaponcoPrints的其他功能。

  • UpSet plot

介绍述如何制作增强的 Upset plots.

  • Other High-level Plots

介绍在ComplexHeatmap中实现的用于特定用途的函数,例如可视化分发版。

  • Integrate with other packages

介绍其他包是如何与ComplexHeatmap集成的。目前,作者演示了gridtextpheatmap这两个包。

  • Interactive heatmap

介绍述如何使热图具有交互性。

  • More Examples

演示更多模拟和真实世界的例子。

参考资料

  1. https://github.com/jokergoo/ComplexHeatmap
  2. https://jokergoo.github.io/ComplexHeatmap-reference/book/index.html

往期内容:

survminer | 生存分析及其可视化

ggcorrplot | 简单的相关性热图绘制

ggpubr|让数据可视化更加优雅

ggsci | 让你的配色Nature化

你可能感兴趣的:(使用ComplexHeatmap绘制复杂热图|Note1:简介)