美文网首页生物信息小白热图
R绘制维恩图 —— ggvenn

R绘制维恩图 —— ggvenn

作者: Wei_Sun | 来源:发表于2022-04-20 01:34 被阅读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)
    

    引用转载请注明出处,如有错误敬请指出。

    相关文章

      网友评论

        本文标题:R绘制维恩图 —— ggvenn

        本文链接:https://www.haomeiwen.com/subject/tnhmertx.html