R语言绘制维恩图ggvenn
Wei_Sun 人气:0引言
韦恩图,Venn diagram,常用图的一种,用来展示集合之间的特异性和共同性。现在有很多在线的网站都可以绘制,但是R来画也方便,其中ggvenn是基于ggplot2的专门绘制韦恩图的R包。
官方网站:https://github.com/yanlinlin82/ggvenn
1.安装
ggvenn在CRAN上,直接用Install.packages就可以完成安装:
> install.packages("ggvenn") > library(ggvenn)
2.基础用法
ggvenn支持list和data.frame两种数据格式。这里以三个基因文件为例:
读取三个基因文件:
> set1<-read.csv("gene_a.csv") > set2<-read.csv("gene_b.csv") > set3<-read.csv("gene_c.csv")
提取每个文件的基因id,创建list:
> dat <- list( A = set1$gene_id, B = set2$gene_id, C = set3$gene_id)
绘图:
> ggvenn(dat)
绘制部分list:
> ggvenn(dat, c("A", "B"))
3.图形美化
填充
- fill_color:填充颜色
- fill_alpha:填充透明度
边框
- stroke_color:边框颜色
- stroke_alpha:边框透明度
- stroke_size:边框粗细
- stroke_linetype:边框线的类型
集合名
- set_name_color:集合名颜色
- set_name_size:集合名字号
集合内文本
- text_color:文本颜色
- text_size:文本字号
百分比
- show_percentage:TRUE or FALSE
> ggvenn(dat,show_percentage = T, stroke_color = "white", stroke_size = 0.5, fill_color = c("#E41A1C","#1E90FF","#FF8C00"), set_name_color =c("#E41A1C","#1E90FF","#FF8C00"), set_name_size = 15,text_size=6)
4.提取交集部分并输出
> A_B <- as.data.frame(intersect(set1$gene_id, set2$gene_id)) > write.csv(A_B,"A_B_common_gene.csv",row.names = F)
加载全部内容