美文网首页收藏
R Venn.diagram设置背景透明

R Venn.diagram设置背景透明

作者: 11的雾 | 来源:发表于2022-03-10 22:04 被阅读0次

    我们都知道,在一般的ggplot2绘图中我们可以设置bg=“transparent”来使图片背景透明,但是venn diagram中却不能实现。对,没法设置背景透明

    尝试设置bg="transparent"无效,而alpha是指圈圈里面填充颜色的透明度,需要先设置fill的颜色,如果无颜色填充,则该参数无效。参数范围0-1,1表示完全透明。

    这里介绍另个一个画venn图的包:ggvenn就可以设置背景透明:

    if (!require(devtools)) install.packages("devtools")
    devtools::install_github("yanlinlin82/ggvenn")
    
    library(ggvenn)
    

    它可以将最终的图转换为ggplot2的形式,就可以用ggsave("test.png",p,dpi = 600, bg = "transparent")来设置背景透明了。
    它也有一些不方便的地方,比如
    不能改变圈的颜色,只能设置透明度,
    画出来的图不能根据overlap的多少调整图overlap的比例,比如下面还有0的,应该合并到一起。像第二个图一样


    ggvenn 图
    venn.diagram图

    小技巧:如何在Rstudio中直接展示venn图:

    只需要写一个小函数:

    # Helper function to display Venn diagram
    display_venn <- function(x, ...){
      library(VennDiagram)
      grid.newpage()
      venn_object <- venn.diagram(x, filename = NULL, ...)
      grid.draw(venn_object)
    }
    

    然后调用函数,将venn图的代码放进去就行了:

    display_venn(list(A=A, B=B))
    

    相关文章

      网友评论

        本文标题:R Venn.diagram设置背景透明

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