首页 / 文章汇 / 语言学习 / R语言

掌握数据可视化利器:韦恩图绘制方法详解

  • 看不见的线
  • 33
  • 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实操精品课

课程链接:基因组结构分析神器Easyfig实操精品课

【课程】BRIG绘图——结构比较专题2

课程链接:走进比较基因组,BRIG软件带你轻松玩绘图

【课程】肺炎克雷伯菌基因组学研究综合指南

课程链接:肺炎克雷伯菌基因组学研究综合指南

【课程】微生物基因组生信必学课程

课程链接:微生物基因组生信分析必学课程

【课程】微生物生防菌研究

课程链接:生防菌的系统化研究

专题材料

【资料】耐药专题材料

【资料】生防专题材料

请添加唯那生物技术客服小唯的微信号winnerbio01,备注“耐药专题”或“生防专题”,立马获取。

更多专题推荐

1、生信技能课专辑

2、耐药毒力专题

3、肺炎克雷伯菌专题

4、密码子偏好性专题

5、Easyfig相关问答

6、MLST-cgMLST

7、软件脚本分享

8、微生物基因组研究文章

9、知识干货

10、分泌系统

11、软件下载

12、书籍下载

  • 点赞 (0人)
  • 收藏 (0人)
看不见的线
  • 课程数:
  • 文章数:
  • 学习人数: 0
关注
--- 作者文章 ---
  • 暂无内容
作者课程
  • 暂无内容
相关好课严选

官方微信公众号

客服热线:15618809518

【勤学如春起之苗,不见其增日有所长。假以时日,你定会为你的努力学习而倍感骄傲,加油!】