十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
之前分享了如何用ggplot2可视化GO分析的结果。既然做了GO,当然少不了KEGG了。
创新互联专注为客户提供全方位的互联网综合服务,包含不限于成都做网站、成都网站设计、景泰网络推广、重庆小程序开发公司、景泰网络营销、景泰企业策划、景泰品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供景泰建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com
同样的,我们从 DAVID 获取KEGG pathway的结果。
对于KEGG,我比较喜欢做气泡图,这样用两种形式的图结合在一起,效果更丰富更好看一点。
之前的步骤参考:
用David得到了数据,接下来画几张美丽的图。GO有三个部分,BP,CC, MF。一般我们使用BP。但是这里我们想把三个部分都展示在图片当中。
单细胞富集分析系列:
单细胞富集分析我最常用的是 分组GSVA ,但最近用到了GO分析,就复习一下GO和KEGG富集分析及绘图。
载入无比熟悉的pbmc.3k数据集 (已注释好,数据准备见 monocle )
pbmc3k数据集只有1个样本,没办法区分HC和病例组。
若有分组,可以使用subset函数将某种细胞取出,来做这种细胞病例组和对照组相比的差异基因和富集分析
之所以长短不齐不按顺序是因为没有排序
排完续之后再画p值就是按顺序的了
附: 单细胞测序数据的差异表达分析方法总结
当富集分析完成,拿到如下的分析结果后,就可以进行作图了。
富集分析结果的可视化无非就是柱状图和气泡图,但是公司默认出图实在是太丑,所以还是自己动手修改修改。
一、常规柱状图(ggplot2)
横轴为gene counts,或者用-logP也行,填充相应的用P值或者gene counts。ggplot画图的好处就是可以进行很多调整。
二、常规气泡图(ggplot2)
气泡图与柱状图如出一辙,只是在展示方式上出现了差别。一个用geom_bar()函数,气泡图类似于散点图用geom_point()函数。
三、上下调同时展示(ggplot2)
很多时候研究者拿到差异基因后,上下调基因是分别富集的,在展示上需要同时体现二者,我们之前提到metascape可以做到: 转录组不求人系列(十二): Cell文章最喜欢用的差异基因GO、KEGG富集分析工具 ,除此之外,之前讲过的气泡图也可以展现多组的结果: 复现《nature communications》图表(四):ggplot画多组富集气泡图 。这里我们继续提供一种bar图的展示方式。将down的数值调整为负,做一列分组,就可以展示了。
当然了,以上所说的可视化还是比较常规,在基础上可以自己做调整。也有一些文章总是标新立意,有很多奇特的展现方式,我们会在之后的系列中讲解。
前面我给大家详细介绍过
☞GO简介及GO富集结果解读
☞四种GO富集柱形图、气泡图解读
☞GO富集分析四种风格展示结果—柱形图,气泡图
☞KEGG富集分析—柱形图,气泡图,通路图
☞ DAVID GO和KEGG富集分析及结果可视化
也用视频给大家介绍过
☞ GO和KEGG富集分析视频讲解
最近有粉丝反映说,利用clusterProfiler这个包绘制GO富集分析气泡图和柱形图的时候,发现GO条目的名字都重叠在一起了。
气泡图
柱形图
这个图别说美观了,简直不忍直视。经过我的认真研究,发现跟R版本有关。前面我给大家展示的基本都是R 3.6.3做出来的图。很多粉丝可能用的都是最新版本的R 4.1.2。
我们知道R的版本在不停的更新,相应的R包也在不停的更新。我把绘制气泡图和柱形图相关的函数拿出来认真的研究了一下,终于发现的症结所在。
dotplot这个函数,多了个 label_format 参数
我们来看看这个参数究竟是干什么用的,看看参数说明
label_format :
a numeric value sets wrap length, alternatively a custom function to format axis labels. by default wraps names longer that 30 characters
原来这个参数默认值是30,当标签的长度大于30个字符就会被折叠,用多行来展示。既然问题找到了,我们就来调节一下这个参数,把他设置成100,让我们的标签可以一行展示。
是不是还是原来的配方,还是熟悉的味道
同样的柱形图,我们也能让他恢复原来的容貌。
关于如何使用R做GO和KEGG富集分析,可参考下文
GO和KEGG富集分析视频讲解
注:1)MF和CC方法同BP,将BP改为MF,CC即可。
2)可视化中,showCategory为显示的item数,scale_y_discrete则调节label过长的情况,让图片看起来
更美观。
3)检查结果,可见geneID展示为gene symbol。
(1)在enrichGO函数中,设置readable = TRUE;
(2)用setReadable函数,对GO或者KEGG结果进行转化即可。