導(dǎo)讀
利用富集分析,我們可以把很多看著雜亂的差異基因總結(jié)出一個(gè)比較整體反應(yīng)事件發(fā)生的概述性的句子轴术。
例如:TP53信號(hào)通路和胃癌的發(fā)生有關(guān)难衰。而不是說BAX、BID逗栽、ABL1盖袭、ATM、BCL2彼宠、BOK鳄虱、CDKN1A這7個(gè)基因和胃癌的發(fā)生有關(guān)系。
GO和KEGG就是基于不同的分類思想而儲(chǔ)存的基因相關(guān)功能的數(shù)據(jù)庫(kù)凭峡。
GO數(shù)據(jù)庫(kù):全稱是Gene Ontology(基因本體)拙已,他們把基因的功能分成了三個(gè)部分分別是:細(xì)胞組分(cellular component, CC)、分子功能(molecular function, MF)想罕、生物過程(biological process, BP)悠栓。利用GO數(shù)據(jù)庫(kù),我們就可以得到我們的目標(biāo)基因在CC, MF和BP三個(gè)層面上按价,主要和什么有關(guān)惭适。
KEGG數(shù)據(jù)庫(kù):除了對(duì)基因本身功能的注釋,我們也知道基因會(huì)參與人體的各個(gè)通路楼镐,基于人體通路而形成的數(shù)據(jù)庫(kù)就是通路相關(guān)的數(shù)據(jù)庫(kù)癞志。
一、DAVID網(wǎng)站做富集分析
DAVID官網(wǎng):https://david.ncifcrf.gov/
二框产、整理數(shù)據(jù)
DAVID富集分析結(jié)果可保存為.txt文件凄杯,然后用excel打開整理。
其中%列代表 Fold Enrichment秉宿,注意畫圖前需要將表頭的%更改為Fold_Enrichment
經(jīng)過排序篩選后戒突,復(fù)制需要繪圖的數(shù)據(jù)(你所關(guān)注的通路),粘貼至新建的KEGG.txt文件和GO.txt中并保存描睦。
三膊存、ggplot包繪制KEGG氣泡圖
#########################################
### KEGG Pathway Plot ###
## 2021.11.17 ##
######################################
library(dplyr)
library(ggplot2)
library(ggrepel)
setwd("D:/Your/Working/Directory/")
#載入數(shù)據(jù)
KEGG_dataset <- read.table(file ="KEGG.txt",
header = TRUE, sep = "\t")
#按照PValue從低到高排序[升序]
KEGG_dataset <- arrange(KEGG_dataset,KEGG_dataset[,4])
#Pathway列最好轉(zhuǎn)化成因子型,否則作圖時(shí)ggplot2會(huì)將所有Pathway按字母順序重排序
#將Pathway列轉(zhuǎn)化為因子型
KEGG_dataset$Term <- factor(KEGG_dataset$Term,levels = rev(KEGG_dataset$Term))
#圖片背景設(shè)定
mytheme <- theme(axis.title=element_text(face="bold", size=14,colour = 'black'), #坐標(biāo)軸標(biāo)題
axis.text=element_text(face="bold", size=14,colour = 'black'), #坐標(biāo)軸標(biāo)簽
axis.line = element_line(size=0.5, colour = 'black'), #軸線
panel.background = element_rect(color='black'), #繪圖區(qū)邊框
legend.key = element_blank() #關(guān)閉圖例邊框
)
#繪制KEGG氣泡圖
p <- ggplot(KEGG_dataset,aes(x=Fold_Enrichment,y=Term,colour=-1*log10(PValue),size=Count))+
geom_point()+
scale_size(range=c(2, 8))+
scale_colour_gradient(low = "blue",high = "red")+
theme_bw()+
ylab("KEGG Pathway Terms")+
xlab("Fold Enrichment")+
labs(color=expression(-log[10](PValue)))+
theme(legend.title=element_text(size=14), legend.text = element_text(size=14))+
theme(axis.title.y = element_text(margin = margin(r = 50)),axis.title.x = element_text(margin = margin(t = 20)))+
theme(axis.text.x = element_text(face ="bold",color="black",angle=0,vjust=1))
plot <- p+mytheme
plot
#保存圖片
ggsave(plot,filename = "KEGG.pdf",width = 10,height = 6,dpi=300)
ggsave(plot,filename = "KEGG.png",width = 10,height = 6,dpi=300)
三忱叭、ggplot包繪制GO條形圖
#########################################
### GO Pathway Plot ###
## 2021.11.24 ##
######################################
setwd("D:/Your/Working/Directory/")
getwd()
dat = read.table("GO.txt",header = T,sep = "\t")
library(ggplot2)#沒有自己安裝 install.package("ggplot2")
p <- ggplot(dat,aes(y=Fold_Enrichment,x=Term,fill=PValue)) +
geom_bar(stat="identity",position = "dodge") +
facet_grid(Category~.,scales = "free",space = "free") +
coord_flip() +
theme_bw() +
theme(plot.title = element_text(hjust = 0.5),
strip.text.y = element_text(size = 14),
legend.position="right",
legend.title = element_text(size=18),
legend.text = element_text(size=14),
axis.text.x = element_text(size=14),
axis.text.y = element_text(size=18),
axis.title.x = element_text(size=14),
axis.title.y = element_text(size=14))
p
ggsave(p,filename = "GO.pdf",width = 10,height = 7,dpi=300)
ggsave(p,filename = "GO.jpg",width = 10,height = 7,dpi=300)