ggalign
一个 R 语言绘图工具 ggplot2
的高级扩展,它专注于在多个图形之间对齐观察值,利用 vctrs 包中的“number of observations”或 NROW()
函数,确保图形组织的一致性。无论是自包含排序图形的对齐,还是在多个图形中应用一致的分组和排序(如 k-means 聚类),ggalign
都可以帮助简化这一过程。
安装
两种方式,分别对应安装稳定版本和开发版本:
# CRAN
install.packages("ggalign")
# 或者 github
# install.packages("remotes")
remotes::install_github("Yunuuuu/ggalign")
使用
如果熟悉ggplot2
的语法,那么上手使用ggalign
将很容易。下面将介绍使用 ggalign
中的 ggheatmap
等实现热图可视化,用来简单理解其功能
加载工具、创建数据
library(ggalign)
set.seed(123)
small_mat <- matrix(rnorm(81), nrow = 9)
rownames(small_mat) <- paste0("row", seq_len(nrow(small_mat)))
colnames(small_mat) <- paste0("column", seq_len(ncol(small_mat)))
head(small_mat)
可以看到,
ggalign
所需的输入数据格式,很符合人们容易理解的热图绘制逻辑
带有聚类分支树的热图
# initialize the heatmap layout, we can regard it as a normal ggplot object
ggheatmap(small_mat) +
# we can directly modify geoms, scales and other ggplot2 components
scale_fill_viridis_c() +
# add annotation in the top
hmanno("top") +
<