掌握数据可视化利器:韦恩图绘制方法详解
- 看不见的线
- 1621
- 2024-05-06 09:43:17
- 原创
在数据分析和可视化中,韦恩图也叫温氏图、维恩图、范氏图,是一种用于展示集合之间的交集和并集关系的图形。
韦恩图通常由一组圆形或椭圆形区域组成,每个区域代表一个集合,而集合之间的重叠部分则表示它们的交集。
下面让我们一起学习如何使用R语言绘制韦恩图。
示例数据(data1.csv)
数据为丰度/表达量矩阵,表格需要带表头和列名,每一列为样本名,每一行为各种指标数据名,如OTU,基因ID,代谢物名称等。

韦恩图绘制示例
#读取本地数据并查看
dat <- read.csv("data1.csv", header = TRUE,check.names = F)
head(dat)

#加载R包
# install.packages("tidyverse")
# install.packages("ggvenn")
library(tidyverse)
library(ggvenn)
library(RColorBrewer)
#数据预处理
#将数据框dat中的第一列列名替换为"Gene"
colnames(dat)[1] <- "Gene"
head(dat)

#将数据从宽表格转换为长表格
dat_longer <- pivot_longer(dat,-Gene)

#提取数值不等于0的行
dat_filter <- filter(dat_longer,value != 0)

#提取每个样本中存在的基因ID
S1 <- filter(dat_filter,name == "S1")$Gene
S2 <- filter(dat_filter,name == "S2")$Gene
S3 <- filter(dat_filter,name == "S3")$Gene
S4 <- filter(dat_filter,name == "S4")$Gene
S5 <- filter(dat_filter,name == "S5")$Gene
S6 <- filter(dat_filter,name == "S6")$Gene
S7 <- filter(dat_filter,name == "S7")$Gene
#生成列表(Venn图绘制输入数据)
venn_list <- list(S1=S1, S2=S2, S3=S3,S4=S4, S5=S5, S6=S6,S7=S7)

#绘制venn图
# ggvenn包可用于绘制2-4个集合的韦恩图
#二元韦恩图
ggvenn(venn_list, #数据列表
columns = c("S1","S2"), #指定需要比较的数据集
show_percentage = T, #显示每一组的百分比
digits = 1, #百分比的小数点位数
fill_color = c("#E41A1C", "#1E90FF") #韦恩图的填充颜色
)

#三元韦恩图
ggvenn(venn_list, #数据列表
columns = c("S1","S2","S3"),
show_percentage = T, #显示每一组的百分比
digits = 1, #百分比的小数点位数
fill_color = c("#E41A1C", "#1E90FF", "#FF8C00"))

#四元韦恩图
ggvenn(venn_list, #数据列表
columns = c("S1","S2","S3","S4"),
show_percentage = T, #显示每一组的百分比
digits = 1, #百分比的小数点位数
fill_color = c("#D95F02", "#7570B3", "#E7298A", "#7FC97F"))

# venn包可用于绘制2-7个集合的韦恩图
# install.packages("venn")
library(venn)
#五元韦恩图
venn(venn_list[1:5],
zcolor = brewer.pal(5,"Dark2"), #填充颜色设置
box = F #是否展示方框
)

#六元韦恩图
venn(venn_list[1:6],
zcolor = brewer.pal(6,"Dark2"),
box = F #是否展示方框
)

#七元韦恩图
venn(venn_list[1:7],
zcolor = brewer.pal(7,"Dark2"),
box = F #是否展示方框
)

推荐课程
【课程】微生物比较基因组精品系列课——全套自学必入的系统课程
课程链接:微生物比较基因组精品系列课【全套】
【课程】铜绿假单胞菌基因组研究和分子分型实战
课程链接:铜绿假单胞菌基因组研究和分子分型实战
【课程】微生物比较基因组与群体进化——基因组变异专题研究
课程链接:微生物比较基因组与群体进化
【课程】微生物分子分型-MLST课程——分型全套(含理论、软件、方法)
课程链接:微生物分子分型-MLST课程
【课程】基因组结构分析神器Easyfig实操精品课
【课程】BRIG绘图——结构比较专题2
【课程】肺炎克雷伯菌基因组学研究综合指南
课程链接:肺炎克雷伯菌基因组学研究综合指南
【课程】微生物基因组生信必学课程
课程链接:微生物基因组生信分析必学课程
【课程】微生物生防菌研究
课程链接:生防菌的系统化研究
专题材料
【资料】耐药专题材料
【资料】生防专题材料
请添加唯那生物技术客服小唯的微信号winnerbio01,备注“耐药专题”或“生防专题”,立马获取。
更多专题推荐
1、生信技能课专辑
2、耐药毒力专题
3、肺炎克雷伯菌专题
4、密码子偏好性专题
7、软件脚本分享
9、知识干货
10、分泌系统
11、软件下载
12、书籍下载
-
点赞 (0人)
- 收藏 (0人)