Enrichment plot的另一种展示
上图大家都不陌生,GSEA分析出来的一个结果图。这里想像大家介绍的不是这个图是什么意思,而是这个图换一种形式展示!
#安装R包
library(plyr)
library(ggplot2)
library(grid)
library(gridExtra)
#设置工作目录
setwd("C:\\Users\\lexb4\\Desktop\\singleGene\\21.multipleGSEA")
#获取目录下的所有xls文件
files=grep(".xls",dir(),value=T)#读取每个文件
data = lapply(files,read.delim)
names(data) = files
该目录下的所有文件
以其中一个文件为例
dataSet = ldply(data, data.frame)
#将文件后缀删掉
dataSet$pathway = gsub(".xls","",dataSet$.id)
gseaCol=c("#58CDD9","#7A142C","#5D90BA","#431A3D","#91612D","#6E568C","#E0367A","#D8D155","#64495D","#7CC767","#223D6C","#D20A13","#FFD121","#088247","#11AA4D")
pGsea=ggplot(dataSet,aes(x=RANK.IN.GENE.LIST,y=RUNNING.ES,colour=pathway,group=pathway))+geom_line(size = 1.5) + scale_color_manual(values = gseaCol[1:nrow(dataSet)]) + labs(x = "", y = "Enrichment Score", title = "") +scale_x_continuous(expand = c(0, 0)) + scale_y_continuous(expand = c(0, 0),limits = c(min(dataSet$RUNNING.ES - 0.02), max(dataSet$RUNNING.ES + 0.02))) + theme_bw() +theme(panel.grid = element_blank(),panel.border = element_blank(),axis.line = element_line(colour = "black"),axis.line.x = element_blank(),axis.ticks.x = element_blank(),axis.text.x = element_blank(),legend.position = c(0,0),legend.justification = c(0,0),legend.background = element_blank(),legend.key = element_blank(),legend.key.size=unit(0.8,'cm')) + geom_hline(yintercept = 0) + guides(colour = guide_legend(title = NULL)) pGene=ggplot(dataSet,aes(RANK.IN.GENE.LIST,pathway,colour=pathway))+
geom_tile()+scale_color_manual(values = gseaCol[1:nrow(dataSet)]) + labs(x = "high expression<----------->low expression", y = "", title = "") + scale_x_discrete(expand = c(0, 0)) + scale_y_discrete(expand = c(0, 0)) + theme_bw() +theme(panel.grid = element_blank(),axis.line.y = element_blank(),axis.ticks.y = element_blank(),axis.text.y = element_blank(),panel.border = element_blank(),axis.line = element_line(colour = "black") ) + guides(color=FALSE)gGsea = ggplot_gtable(ggplot_build(pGsea))
gGene = ggplot_gtable(ggplot_build(pGene))
maxWidth = grid::unit.pmax(gGsea$widths, gGene$widths)
gGsea$widths = as.list(maxWidth)
gGene$widths = as.list(maxWidth)
dev.off()
#将图形可视化,保存在"multipleGSEA.pdf"
pdf(‘multipleGSEA.pdf’, #输出图片的文件
width=7, #设置输出图片高度
height=5.5) #设置输出图片高度
par(mar=c(5,5,2,5))
grid.arrange(arrangeGrob(gGsea,gGene,nrow=2,heights=c(.8,.3)))
dev.off()
如何去解释上图呢?
不同的颜色代表不同的通路,纵轴是每个基因对应的ES,而横轴代表gene。如果该基因在该通路上富集,则在图中出现。如果不在通路上富集则表现为空。这里我不进行详细的解释,如果有不明白的,可以直接留言。
Enrichment plot的另一种展示相关推荐
- html正方形对话框素材,10种展示效果的弹出层对话框插件method.js
一款10种展示效果的弹出层对话框插件method.js,可以点击演示页面的10个按钮分别查看不同的弹窗效果,基本上该有的弹窗特效都有了,喜欢的童鞋请收下吧. 查看演示 下载资源: 68 次 下载资源 ...
- 关于表关联数据几种展示方法
我们一般在数据库用主外建关联多张表,下面就是给大家演示当两张表关联的时候的几种展现方式: 查询到表关联数据大致可以分为两类 一.封装一个实体类 封装一个实体类就是把两张表的数据都封装到一个实体类里,然 ...
- Calcite执行计划的四种展示格式
文章目录 前言 格式 Text/String XML JSON DOT 属性级别 前言 我们知道Calcite会将SQL为RelNode构成的执行计划,为了分析执行计划,经常会使用RelOptUtil ...
- css3实现文字闪烁效果的三种展示方式
转载自:http://www.fly63.com/article/detial/616 文字闪烁效果一: 通过改变透明度来实现文字的渐变闪烁,效果如下: 文字带渐变效果的闪烁: <div cla ...
- css3 卡片亮光_9种纯CSS3人物信息卡片动态展示效果
通常在一些网站的网页上需要展示人物的个人信息,人物信息卡片是其中的一种展示方式,所以这一次给大家带来<9种纯CSS3人物信息卡片动态展示效果>.先上页面截图: 源代码下载: 9种纯CSS3 ...
- 10家不同商店50种不同商品销售量预测数据
预测10家商店未来三个月50种商品的销售量 一.前言 目前拥有10家店50种商品过去5年内的销售量,尝试通过建立ARIMAL,回归,GBDT模型来预测未来一年的销量 时间序列提供了预测未来价值的机会. ...
- 一篇文章让你学会绘画十一种常见数据分析图(折线图,直方图,散点图,雷达图等等)
本篇博文主要内容ython Pyplot中的十一个常用绘图,包括参数说明,代码,运行结果. 有问题可以+Q180096010一起交流学习~ 目录 1. 折线图 plt.plot绘制折线图代码展示: 2 ...
- (深入理解)matplotlib的交互模式(block,interactive,ion,ioff,draw,show,plot等的区别)
文章目录 interactive,ion,ioff draw,show,plot draw show,plot 拓展 import matplotlib.pyplot as plt import nu ...
- matlab plot绘图函数官方详解
plot: 二维线图函数 语法 plot(X,Y) plot(X,Y,LineSpec) plot(X1,Y1,...,Xn,Yn) plot(X1,Y1,LineSpec1,...,Xn,Yn,Li ...
最新文章
- suse linux 命令 收藏
- 《数据结构与算法 C语言版》—— 2.5上机实验
- 路由表及路由的选择算法
- centos打显卡驱动命令_在Linux系统下安装Nvidia官方显卡驱动的方法
- 【算法系列之万字总结常用的查找算法,持续补充更新中】
- 最新版本sublime text3注册码
- 初学 Delphi 嵌入汇编[26] - 大小写字母转换
- 结对编程:黄金点游戏
- POJ2481-Cows【树状数组】
- 23、java中的网编基础
- PHP框架有没有前途?是否适用于复杂的web开发框架
- TCP的可靠传输実现
- 深入Managed DirectX9
- 如何查看微信小程序服务器域名并且修改
- 合成孔径 saft matlab,合成孔径聚焦超声成像系统的计算机仿真
- 关于Mifare Classic Tool (MTC)工具的秘钥包
- python计算平均分
- 如何通过域名访问服务器文件,如何通过域名访问云服务器
- 【产品志】显示器的选购
- 云服务器运维兼职,云服务器的维护工作主要有哪些?