当我们的数据分组越来越多的时候,韦恩图解读效果不再那么一目了然了,这时候我们需要利用upsetR包,对数据进行重新操盘。
1. 安装并加载包,关于包的安装,已经讲过多次,直接上代码
2. 构建数据集,我们同要采用sample函数随机生成随机数,下面代码的意思是分别生成400,600,350,550,375,200,777个从1到1000的随机数,注意replace参数,当为TRUE,代表的是有放回的抽取,FALSE代表无放回的抽回,此处均为无放回
3.构建所需要的数据集以及定义颜色,可以看到upset函数接收的是list结构数据,同时构建了颜色的向量数据结构
注意颜色值填充也可用从red,balck等填充。
4. 一行代码出美图
结果如下:
接着重点讲解一下upset参数:
第一个参数为fromList(x):x为list对象数据
nsets: 最多展示多少个集合数据。毕竟原来有20多种电影类型,放不完的
nintersects: 展示多少交集。
mb.ratio:控制上方条形图以及下方点图的比例。
order.by:交集如何排序。这里先根据freq,然后根据degree
decreasing:变量如何排序。这里表示freq降序,degree升序
keep.order , #keep.order按照sets参数的顺序排序
number.angles, #调整柱形图上数字角度
point.size , line.size , #点和线的大小
queries接受query所组成的list。然后不同query也是一个list,这个list由查询函数,和参数组成,参数也是一个list。查询函数可以用系统自带的,也可以自己写一个。比如说这里的intersects,代表对A,B,C取交集。
比如我们想一次展示全是数据,并取A,B,C,D,E,G的交集,颜色设为红色,代码如下:
结果如下:
声明
百味科研芝士原创文章,
未经许可,严禁转载