利用UpsetR画图
2022-07-21 本文已影响0人
队长的生物实验室
对于数据集合的可视化,韦恩图(venn diagram)是一种方式,一般集合不超过5个的时候,可视化效果还是不错的;但超过5个的时候,就会显得杂乱无章。UpsetR完美地解决了这一问题,简单好用清晰易懂,这里只介绍我比较常用的参数,做个记录,供大家参考。
输入文件
不同组别下差异基因列表

安装
install.packages(UpSetR)
使用
data <- read.csv("DEGs.csv",header=T)
setbarcolor <- c("#2e409a","#942d8d","#d75427","#006b7b","#4da0a0","#9b3a74")#设置色条颜色
upset(fromList(data),nsets=6,sets.bar.color = setbarcolor,
queries = list(list(query = intersects,params = list("A","B","C"),
color="Red",active = T)),
text.scale = c(1.5,3,2,1.5,2,2),mb.ratio = c(0.70,0.30),
point.size = 3,line.size = 1)

参数
nsets: 最多展示多少个集合数据。毕竟原来有20多种电影类型,放不完的
nintersects: 展示多少交集。
mb.ratio:控制上方条形图以及下方点图的比例。
order.by: 交集如何排序。这里先根据freq,然后根据degree
decreasing:变量如何排序。这里表示freq降序,degree升序
keep.order: keep.order按照sets参数的顺序排序
number.angles: 调整柱形图上数字角度
point.size , line.size , #点和线的大小
text_scale ,图上各部分文字大小
main.bar.color = "#2a83a2", #柱状图颜色
sets.bar.color = "#3b7960"#横向柱状图颜色
为了更好的理解text_scale表示的部分,借用其他人的一幅图,如下:
