摘要
在生物信息學、數據挖掘等領域的集合分析中,傳統 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