UpSet|多集合可视化,韦恩图?upSet!

介绍一个R包UpSetR,专门用来集合可视化,当多集合的韦恩图不容易看的时候,就是它大展身手的时候了。

一 载入R包 数据

#安装及加载R包#install.packages("UpSetR")library(UpSetR) #载入数据集data <- read.csv("upSet.csv",header=TRUE)#先大致浏览一下该数据集,数据集太长,就只看前几列head(data,6)

二 upSet集合可视化

使用UpsetR包里面的upset()函数绘制集合可视化图形。

1. 基本参数

upset(data, sets = c("Action", "Adventure", "Comedy", "Drama", "Fantasy" , "Children","Crime"),#查看特定的几个集合 mb.ratio = c(0.55, 0.45),#控制上方条形图以及下方点图的比例 order.by = "freq", #如何排序,这里freq表示从大到小排序展示 keep.order = TRUE, #keep.order按照sets参数的顺序排序 number.angles = 30, #调整柱形图上数字角度 point.size = 2, line.size = 1, #点和线的大小 mainbar.y.label = "Genre Intersections", sets.x.label = "Movies Per Genre", #坐标轴名称 text.scale = c(1.3, 1.3, 1, 1, 1.5, 1)) #六个数字,分别控制c(intersection size title, intersection size tick labels, set size title, set size tick labels, set names, numbers above bars)

2)queries参数

queries参数分为四个部分:query, param, color, active;

query: 指定哪个query,UpSetR有内置,也可以自定义;

param: list, query作用于哪个交集

color:每个query都是一个list,里面可以设置颜色,没设置的话将调用包里默认的调色板;

active:被指定的条形图:TRUE显示颜色,FALSE在条形图顶端显示三角形;

upset(data, main.bar.color = "black",
     queries = list(list(query = intersects,   #UpSetR 内置的intersects query
                         params = list("Drama"), ##指定作用的交集
                         color = "red", ##设置颜色,未设置会调用默认调色板
                         active = F,   # TRUE:条形图被颜色覆盖,FALSE:条形图顶端显示三角形
                         query.name = "Drama"), # 添加query图例
                    list(query = intersects,  params = list("Action", "Drama"),
                         active =T,
                         query.name = "Emotional action"),
                    list(query = intersects,  params = list("Drama", "Comedy","Action"),
                         color = "orange", active = T)),
     query.legend = "top")

可以看到 list("Drama") ,list("Action", "Drama") 和 list("Drama", "Comedy", "Action") 均根据 color 设置 显示了不同的颜色。

3)attribute.plots参数

添加属性图,内置有柱形图、散点图、热图等

3.1 添加柱形图和散点图

upset(data, main.bar.color = "black",
     queries = list(list(query = intersects, params = list("Drama"), color = "red",
                         active = F,  query.name = "Drama"),
                    list(query = intersects,  params = list("Action", "Drama"),
                         active =T,query.name = "Emotional action"),
                    list(query = intersects,  params = list("Drama", "Comedy","Action"),
                         color = "orange", active = T)),  
     attribute.plots = list(gridrows = 45, #添加属性图
                            plots = list(
                                list(plot = scatter_plot, #散点图
                                     x = "ReleaseDate", y = "AvgRating", #横纵轴的变
                                     queries = T), #T 则显示出上面queries定义的颜色
                                list(plot = histogram, x = "ReleaseDate", queries = F)),
                            ncols = 2), # 添加的图分两列
     query.legend = "top") #query图例在最上方

3.2 添加箱线图

每次最多添加两个箱线图

upset(data, boxplot.summary = c("AvgRating", "ReleaseDate"))

三、参考资料

Index of /web/packages/UpSetR/vignettes

◆ ◆ ◆  ◆ ◆

精心整理(含图版)|你要的全拿走!有备无患 (R统计,ggplot2绘图,生信图形可视化汇总)

(0)

相关推荐

  • 韦恩图绘制工具推荐

    在数据可视化的时候,对于两个分类或者多个数据集来进行交集和并集可视化经常要用到韦恩图(Venn)来进行展示.对于韦恩图可视化,网上还是有很多相关的工具的.但是韦恩图绘制工具的,图形调整度没那么自由,进 ...

  • R数据可视化 | PowerBI星球

    自从有了R,限制你的只是你的想象力! 在PowerBI默认的可视化对象中,还有个R视觉对象,点击并不能像其他可视化一样直接使用,不过你若就此放过,可能就与一个强大的工具插肩而过. 下面带你一步步走进R ...

  • Power Query中的Transform怎么用?

    今天我们我们聊一下Power Query(以下简称PQ)中 的Transform系列函数 为什么我们要说他,因为他常用-- 在PQ中同一个函数因为前缀不同,用法也不同,具体目前PQ有如下: 整体不会讲 ...

  • 英国学校这种“把善意可视化”的方式,值得我们学习借鉴!

    这周六,安可同学丞丞(Kevin)的妈妈知道安可姥姥姥爷来英国了,就邀请我们去他们家做客.之前我的一篇文章说到丞丞妈妈和我都是湖北人,而且我们很多理念都一致,所以两家来往比较多.不过这一次,我发现了& ...

  • Upset plot展示韦恩图

    前文写道:对于集合的可视化,大多数使用的是韦恩图.一般集合不超过5个的时候,韦恩图可视化效果往往还是很不错的(无论是视觉效果,还是理解数据).对于多余5个集合的数据,建议使用集合可视化神包:UpSet ...

  • 当韦恩图和upset都不能满足我的可视化要求

    当韦恩图和upset都不能满足我的可视化要求

  • 【R分享|实战】维恩图(Venn)&集合图(Upset)的选择与绘制

    " 不求做的最好,但求做的更好."   --科白君 "R实战"专题·第19篇   编辑 | 科白维尼   4344字 |11分钟阅读 本期推送内容 在进行数据的 ...

  • WonderfulVenn - 操作简便到极致的可交互的韦恩图工具,支持2~6个集合

    只要拖拖拖,就能画Venn,支持最高6组数据, 还能交互操作. 写在前面 今天在测序行业爆料微信群,看到有两三人推了Venn图绘制的R包,强大,无话可说.见Y蜀黍公众号.但是相比之下,R包是需要使用者 ...

  • 爬山的骑行者——动态的可视化进度图

    这个图表可能会又一次刷新你的三观!真是只有想不到,没有做不到!先什么也别说,上图看看再说,如下图1所示. 图1 在目标曲线上有两个骑车的小人,其中灰色骑行者代表按计划进度的执行者,而绿色骑行者代表实际 ...

  • 技术贴 | 快速绘制韦恩图——TBtool

    本文由沐子星根据实践经验而整理,希望对大家有帮助. 原创微文,欢迎转发转载. 导读 韦恩图是科研中常见的一种图形,直观的展示出两组或者多组数据集之间的关系(交集和并集).今天推荐一款做韦恩图的软件-- ...

  • 韦恩图的在线绘制网站,必备!

    看到下面这个图,想必大家不会陌生,都能想到是韦恩图嘛,毕竟是科研文章中最常见的图形了,可以表示多个数据集之间的交互作用.但是具体怎么画呢?很复杂吗?其实不需要用R语言,只要几个简单的在线网站就可以搞定 ...

  • Python操作Excel制作可视化数据图,实现自动化办公

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 以下文章来源于IT入门 安装 操作一个简单的Excel文档 操作注释及代码: 操作完成后,数 ...

  • 画韦恩图那么容易,为什么拿到指定元素却有问题

    学员交流群有提问,说他虽然会绘制韦恩图了,但是想提取图中指定的元素,自己弄的代码非常笨拙,感觉是R语言学的不够好,希望我可以秀一秀高阶代码.恰好今天没有什么可以分享的,就写这个教程吧! 首先设置4个随 ...