Enrichment plot的另一種展示

2021-09-24 03:18:33 字數 3019 閱讀 9596

上圖大家都不陌生,gsea分析出來的乙個結果圖。這裡想像大家介紹的不是這個圖是什麼意思,而是這個圖換一種形式展示!

dataset = ldply(data, data.frame)

#將檔案字尾刪掉

datasetpat

hway

=gsu

b(".

xls"

,"",

data

setpathway = gsub(".xls","",dataset

pathwa

y=gs

ub("

.xls

",""

,dat

aset

.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(datasetrun

ning

.es−

0.02),

max(

data

setrunning.es - 0.02), max(dataset

runnin

g.es

−0.0

2),m

ax(d

atas

etrunning.es + 0.02))) +

theme_bw() + theme(panel.grid = element_blank()) + theme(panel.border = element_blank()) + theme(axis.line = element_line(colour = 「black」)) + theme(axis.line.x = element_blank(),axis.ticks.x = element_blank(),axis.text.x = element_blank()) +

geom_hline(yintercept = 0) + theme(legend.position = c(0,0),legend.justification = c(0,0)) + #legend注釋的位值

guides(colour = guide_legend(title = null)) + theme(legend.background = element_blank()) + theme(legend.key = element_blank())+theme(legend.key.size=unit(0.8,『cm』))

pgene=ggplot(dataset,aes(rank.in.gene.list,pathway,colour=pathway))+geom_tile()+

scale_color_manual(values = gseacol[1:nrow(dataset)]) +

labs(x = 「high expressionlow expression」, y = 「」, title = 「」) +

scale_x_discrete(expand = c(0, 0)) + scale_y_discrete(expand = c(0, 0)) +

theme_bw() + theme(panel.grid = element_blank()) + theme(panel.border = element_blank()) + theme(axis.line = element_line(colour = 「black」))+

theme(axis.line.y = element_blank(),axis.ticks.y = element_blank(),axis.text.y = element_blank())+ guides(color=false)

ggsea = ggplot_gtable(ggplot_build(pgsea))

ggene = ggplot_gtable(ggplot_build(pgene))

maxwidth = grid::unit.pmax(ggseawid

ths,

ggen

ewidths, ggene

widths

,gge

newidths)

ggseawid

ths=

as.l

ist(

maxw

idth

)gge

newidths = as.list(maxwidth) ggene

widths

=as.

list

(max

widt

h)gg

enewidths = 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()

container of 的的的原理

另外一篇,同樣精彩,揭開linux核心中container of的神秘面紗 華清遠見嵌入式學院講師。在linux 核心中有乙個大名鼎鼎的巨集container of 這個巨集是用來幹嘛的呢?我們先來看看它在核心中是怎樣定義的。呵呵,乍一看不知道是什麼東東。我們先來分析一下container of p...

存在的就是合理的,發生的即是必然的。

筆者有時候會想,什麼是對,什麼是錯?對於追求某一件事情之前首先會考慮,為什麼我要做這件事情。所以經過自我分析和生活周邊環境的總結。我認為,對於乙個人來,這是在站在個體的角度上說。什麼是對的?就是你自己覺得是對的,它就是對的。不過這個只是你自己的想法。主觀上的正確,不代表客觀上也受到了別人的認可。就拿...

Apache的rewrite的重寫相關的引數

apache mod rewrite規則重寫的標誌一覽 使用mod rewrite時常用的伺服器變數 rewriterule規則表示式的說明 匹配任何單字元 chars 匹配字串 chars chars 不匹配字串 chars text1 text2 可選擇的字串 text1或text2 匹配0到1...