摘要
在生物信息学、数据挖掘等领域的集合分析中,传统 Venn 图在多维度数据展示时存在信息拥挤、可读性差等问题。本文基于 R 语言的 ComplexUpset 包,以基因表达研究为场景,从包安装、数据准备到可视化实现,完整演示如何制作正刊级别的集合交集图,解决多条件下差异基因(或其他数据)的交集展示难题,代码可直接复用。
一、前言
在处理多组条件下的集合数据(如不同处理组的差异基因、多批次实验的共同结果等)时,Venn 图仅适用于 3 组以内的简单交集展示,当条件数增加到 4 组及以上时,图形会变得混乱,难以直观区分各交集的具体数量和构成。
ComplexUpset 包作为 ggplot2 的扩展工具,支持多组条件的集合可视化,不仅能清晰展示各交集的样本数量,还可灵活调整图形细节(如过滤小交集、排序交集顺序),同时兼容 ggplot2 的语法,方便后续美化。本文以 “4 种处理条件下的差异基因” 为例,实战演示该包的核心用法。
二、环境准备:安装并加载所需 R 包
首先需安装 ComplexUpset 包(核心可视化工具)、ggplot2(图形基础)、dplyr(数据处理),以及 RColorBrewer(配色辅助)。若已安装过对应包,可跳过安装步骤,直接加载。
# 1. 安装所需包(未安装时执行)
if (!require("ComplexUpset")) {install.packages("ComplexUpset") # 核心集合可视化包
}
if (!require("ggplot2")) {install.packages("ggplot2") # 基础绘图包
}
if (!require("dplyr")) {install.packages("dplyr") # 数据处理包
}
if (!require("RColorBrewer")) {install.packages("RColorBrewer") # 配色包
}# 2. 加载已安装的包
library(ComplexUpset)
library(ggp