R绘制韦恩图

目前做Venn图的R包中,VennDiagram是常用的包,可以做2元到5元的图。下面介绍一下2元到5元venn图的做法。

1 安装包

install.packages("VennDiagram")  #安装过程中会弹出选择源,选择中国的源即可。

library (VennDiagram)   #使用VennDiagram包

2 数据

设置5个数据集,因为VennDiagram最多支持5个数据集,6元及以后的venn图此包不支持。理论上在二维平面上能做到9元韦恩图,不过6元及以上(nature上有相关的6元图的文章)的韦恩图看着实在是太乱了,画出来看着也让人头皮发麻,可视化显示并不是太好。

首先生成以下五个数据集:

A = 1:150                 #生成1-150数字组成的元素集

B = c(121:170,300:320)    #生成121-170数字和300-320数字组成的元素集

C = c(20:40,141:200)      #生成20-40数字和141-200数字组成的元素集

D = c(30:60,121:180)      #生成30-60数字和121-180数字组成的元素集

E = c(100:180)            #生成100-180数字组成的元素集

3 Veen R代码

# 四元Veen图
T<-venn.diagram(list(A=A,D=D,B=B,C=C),

filename=NULL,

lwd=1,#圈线粗度

lty=1, #圈线类型

col=c('#0099CC','#FF6666','#FFCC99','#0099CC'), #圈线颜色

fill=c('#0099CC','#FF6666','#FFCC99','#0099CC'), #填充颜色

cat.col=c('#0099CC','#FF6666','#FFCC99','#0099CC'),#A和B的颜色

cat.cex = 2.5,# A和B的大小

rotation.degree = 0,#旋转角度

main = "A&B&C&D",#主标题内容

main.cex = 2,#主标题大小

sub = "plot : example",#亚标题内容

sub.cex = 1,#亚标题字大小

cex=1.5,#里面交集字的大小

alpha = 0.5,#透明度

reverse=TRUE)

grid.draw(T)

来源:Veen图绘制简易代码

https://mp.weixin.qq.com/s/02Dd1q0Bxe6AkNp1Lzs2Xg

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 4月16日,美国普利策新闻奖即将揭晓。人们普遍认为,率先披露哈维韦恩斯坦丑闻的《纽约时报》与《纽约客》杂志有可能夺...
    杰罗姆阅读 8,419评论 1 6
  • 韦恩图 维恩图是用来反映不同集合之间的交集和并集情况的展示图。一般用于展示2-5个集合之间的交并关系。集合数目更多...
    生信宝典阅读 3,718评论 0 3
  • feisky云计算、虚拟化与Linux技术笔记posts - 1014, comments - 298, trac...
    不排版阅读 3,916评论 0 5
  • 不知道为什么,感觉自己好像得了一种病。一种周期性心情抑郁症。每到这种情况,痛苦不堪,不能自己。 对生活的绝望,对未...
    生活是一种心态阅读 417评论 4 0
  • 最近在学习Rxjava、Retrofit的使用,同时想到想一般项目中接口返回都是由特定格式,如java后端的Res...
    justin_crashed阅读 577评论 0 0