17 韦恩图
17.1 什么是韦恩图?
维恩图用于展示在不同的事物群组(集合)之间的数学或逻辑联系,尤其适合用来表示集合(或)类之间的”大致关系”,它也常常被用来帮助推导(或理解推导过程)关于集合运算(或类运算)的一些规律。 一般个数在2到7组之间。
17.2 绘图前的数据准备
demo数据可以在https://www.bioladder.cn/shiny/zyp/bioladder2/demoData/Venn/Venn.rar下载。
第一行为组名,必须要有,会出现在图中。每一列都是一个分组,下面的是分组里具体的内容。
17.3 R语言怎么画韦恩图
# 加载R包,没有安装请先安装 install.packages("包名")
library(venn) #韦恩图(venn 包,适用样本数 2-7)
library(VennDiagram)
# 读取数据文件
<- read.delim('https://www.bioladder.cn/shiny/zyp/bioladder2/demoData/Venn/flower.txt') # 这里读取了网络上的demo数据,将此处换成你自己电脑里的文件
venn_dat <- list(venn_dat[,1], venn_dat[,2], venn_dat[,3], venn_dat[,4], venn_dat[,5], venn_dat[,6], venn_dat[,7]) # 制作韦恩图搜所需要的列表文件
venn_list names(venn_list) <- colnames(venn_dat[1:7]) # 把列名赋值给列表的key值
= purrr::map(venn_list,na.omit) # 删除列表中每个向量中的NA
venn_list
#作图
venn(venn_list,
zcolor='style', # 调整颜色,style是默认颜色,bw是无颜色,当然也可以自定义颜色
opacity = 0.3, # 调整颜色透明度
box = F, # 是否添加边框
ilcs = 0.5, # 数字大小
sncs = 1 # 组名字体大小
)
# 更多参数 ?venn查看
# 查看交集详情,并导出结果
<- get.venn.partitions(venn_list)
inter for (i in 1:nrow(inter)) inter[i,'values'] <- paste(inter[[i,'..values..']], collapse = '|')
<- subset(inter, select = -..values.. )
inter <- subset(inter, select = -..set.. )
inter write.table(inter, "result.csv", row.names = FALSE, sep = ',', quote = FALSE)
17.4 BioLadder生信云平台在线绘制韦恩图
不想写代码?可以用BioLadder生信云平台在线绘制韦恩图。
免费使用,登录后畅享40+模块