今天小果看到一个有趣的GO富集分析结果的展示形式,通过火柴杆图来展示GO富集结果,做了一下尝试,代码如下:
- 安装需要的R包
install.packages(“ggplot2”)
install.packages(“cowplot”)
install.packages(“tidyverse”)
install.packages(“ggsci”)
- 载入需要的R包
library(ggplot2)
library(cowplot)
library(tidyverse)
library(ggsci)
- 代码展示
#读取数据
df<-read.table(“Go.txt”,header=T,sep=”\t”)
#对数据通过Ontology,value进行排序
df<-arrange(df,Ontology,value)
#确定因子顺序
df$name<-factor(df$name,levels=df$name,order=T)
#开始绘图
ggplot(df,aes(x=name,y=value))+
geom_segment(aes(x=name,
xend=name,
y=0,
yend=value))+
geom_point(aes(x=name,y=value,color=Ontology),size=5)+
scale_color_npg()+
labs(x=”Term_name”,y=” Gene count”,title=”Matchstick_plot”)+
scale_y_continuous(expand = c(0,0),
limits = c(0,90),
labels = c(0,25,50,75,90))+
coord_flip()+
theme_classic()+
theme(axis.text.x = element_text(angle=90,hjust=0.9,face=”bold”,size=9),
axis.text.y = element_text(face=”bold”,size=9),
plot.title = element_text(hjust=0.5))
ggplot(df,aes(x=name,y=value))+
geom_segment(aes(x=name,
xend=name,
y=0,
yend=value))+
geom_point(aes(x=name,y=value,color=Ontology),size=5)+
scale_color_npg()+
labs(x=”Term_name”,y=” Gene count”,title = “Matchstick_plot”)+
scale_y_continuous(expand = c(0,0),
limits = c(0,90),
labels = c(0,25,50,75,90))+
theme_classic()+
theme(axis.text.x = element_text(angle=90,hjust=0.99,face=”bold”,size=9),
axis.text.y = element_text(face=”bold”,size=9),
plot.title=element_text(hjust=0.5))
最终小果还是绘制出了火柴杆图,看起来效果还不错,有需要的可以借鉴学习,小果今天的分享就到这里奥,GO富集分析的结果可以通过不同的方式来展示。