R实用绘图--韦恩图
创作时间:
作者:
@小白创作中心
R实用绘图--韦恩图
引用
CSDN
1.
https://blog.csdn.net/weixin_46587777/article/details/138032158
今天带领大家绘制的是韦恩图(Venn diagram),韦恩图属于关系型图表,通过圆圈与圆圈之间的重叠关系,来表示集合与集合之间的相交关系。
一般来说韦恩图只适用于小于等于5个集合的场景,如果集合过多,一方面是不美观,另一方面是常用的R包也不支持。这种情况可以考虑花瓣图或者Upset图等,后续我们都会更新。
数据准备
在这里我准备了四个数值型元素的集合,在R中用向量表示就可以。你也可以采用字符型等其他元素集合。
# 设置不一样的抽样种子,获得4个不一样的集合
# 并把结果固定下来
set.seed(123)
part1 <- sample(1:300,size = 100,replace = F)
set.seed(456)
part2 <- sample(1:300,size = 100,replace = F)
set.seed(666)
part3 <- sample(1:300,size = 100,replace = F)
set.seed(888)
part4 <- sample(1:300,size = 100,replace = F)
查看交集
# 查看四个集合的交集元素
intersect(intersect(part1,part2),intersect(part3,part4))
绘图并保存
# 加载ggvenn包--绘图用
library(ggvenn)
# 加载RColorBrewer--生成颜色用
library(RColorBrewer)
# 把四个集合的向量合并成一个列表
# 注意这里的PART1、PART2、PART3、PART4就是后续展现在图里的集合名称
vennlist1 <- list(PART1=part1,PART2=part2,PART3=part3,PART4=part4)
# 绘制韦恩图
p <- ggvenn(vennlist1,
fill_color=c(brewer.pal(8, 'Set2')[2:5]), # 设置填充颜色
stroke_size=0.5, # 集合圆圈的线宽
set_name_size=3.3, # 集合名称的文本大小
digits = 0, # 小数点后保留位数
show_percentage = F # 是否展示每一部分所占的百分比
)
p
ggsave("venn.pdf",p,width = 4,height = 4)
绘图效果
绘图效果
系列文章
R实用绘图--相关性热图
热门推荐
HDMI线与其他视频线有什么区别
1吨黄金、1吨美元、1吨人民币:聪明人的选择竟是它?
山海经异兽描述,《山海经》奇兽揭秘:异兽图鉴大解析
深入探讨“moment”一词的多重含义与生活应用
邻居安装监控,侵犯隐私权了吗?
扣非净资产收益率的计算方法详解
如何查询电脑支持最大单条内存大小
糖尿病人想要吃米饭不升高血糖?记住“5件事”,可以放心吃
糖尿病人为什么主食吃糙米更适宜?
贷款额度的影响因素有哪些?长沙个人贷款,影响贷款额度的因素有哪些?
什么是部队文职?有没有编制?是铁饭碗吗?月薪过万
[新界面] 接在其他路由器下怎么使用?
西游记之外:东游记、南游记和北游记里的神魔传奇
都熟知西游记,那东游记、南游记和北游记又是什么书
哪里可以看到守正创新提升质量效益的成功案例?
怎样识别假性近视散光
长安逸动发动机空转无法加速的原因及解决方法
王勃《滕王阁序》的写作背景
急性肠胃炎恢复期可以吃辣的吗
小孩感冒吃什么比较好?饮食推荐懒人包
Stable Diffusion WebUI v1.8.0重大更新!
什么是A股市场:中国大陆股票市场的基本概念
拍卖房屋有租赁关系怎么解决
南航和北航哪个大学好?专业实力和分数对比,考不上北航首选南航
贲门痉挛症状有哪些
电脑刷新率144黑屏怎么解决?如何调整设置?
多焦点菲涅尔透镜设计原理与实践
全网都在嚼的“干巴酸奶”,究竟是个啥?
最新欧空局Sentinel-2卫星数据下载教程(哨兵1、2、3、5P、6系列)
北宋名将狄青:功勋卓著的军旅生涯