R语言ggplot2画气泡图展示富集分析的结果

之前的推文介绍了画柱形图展示富集分析的结果,今天的推文介绍一下画气泡图展示富集分析结果的代码。气泡图就是散点图的一个变种。多了一个变量映射给点的大小,富集分析里通常是用来映射基因的数量。比如下图

image.png

示例数据集还是之前的KEGG富集分析结果。这次可以分享示例数据集

首先读入数据

dat<-read.table("kegg.txt",
                sep = "\t",
                header = T)

colnames(dat)

根据Corrected.P.Value筛选结果,我这里把Corrected.P.Value阈值设置为0.0001。主要是为了减少数据量。但在真实的数据了这个阈值设置为多少就得根据自己的数据情况来了。

library(tidyverse)
dat %>% filter(Corrected.P.Value<0.0001) -> dat01
dim(dat01)
dim(dat)

最基本的图

library(ggplot2)
dat01$GeneRatio<-dat01$Input.number/200
ggplot(dat01,aes(x=GeneRatio,y=Term))+
  geom_point(aes(size=Input.number,color=Corrected.P.Value))
image.png

接下来是美化

包括更改配色,给点排序 修改图例的标题等

#install.packages("paletteer")
library(paletteer)
#paletteer_c("ggthemes::Orange-Blue Diverging", 50)
ggplot(dat01,aes(x=GeneRatio,y=reorder(Term,GeneRatio)))+
  geom_point(aes(size=Input.number,color=Corrected.P.Value))+
  coord_cartesian(clip="off")+
  scale_color_paletteer_c(palette = "grDevices::topo.colors",
                          name="p.adjust")+
  theme_bw()+
  scale_size_continuous(name="Count",
                        range = c(1,10))+
  labs(y="Terms")
image.png

示例数据和代码可以在公众号小明的数据分析笔记本后台留言20220208获取

欢迎大家关注我的公众号

小明的数据分析笔记本

小明的数据分析笔记本 公众号 主要分享:1、R语言和python做数据分析和数据可视化的简单小例子;2、园艺植物相关转录组学、基因组学、群体遗传学文献阅读笔记;3、生物信息学入门学习资料及自己的学习笔记!

你可能感兴趣的:(R语言ggplot2画气泡图展示富集分析的结果)