资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

r语言go气泡图 r语言 气泡图

R语言可视化之ggplot2——KEGG通路富集分析

之前分享了如何用ggplot2可视化GO分析的结果。既然做了GO,当然少不了KEGG了。

我们提供的服务有:成都网站设计、成都网站制作、微信公众号开发、网站优化、网站认证、阜康ssl等。为上千余家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的阜康网站制作公司

同样的,我们从 DAVID 获取KEGG pathway的结果。

对于KEGG,我比较喜欢做气泡图,这样用两种形式的图结合在一起,效果更丰富更好看一点。

r语言气泡图对数据格式的要求

利用R语言堆叠图,我们可以将一个项目中所有样品的物种组成展示出来。

下面介绍如何利用R语言进行物种组成分析和可视化。过程分为以下几步:

1)模拟丰度矩阵;

2)模拟分组;

3)标准化丰度;

4)调整格式;

5)ggplot2绘制堆叠图、冲积图、分面、分组、堆叠面积图。

如何用R语言画气泡图

坐标为x,y的点图 点的size 用另一变量Z控制。

ggplot(data=,aes(x= ,y= ))+geom_point(size= )

《R语言实战》自学笔记66-气泡图

数据准备

气泡图(bubble plot):在二维散点图的基础上,用点的大小来代表第三个变量的值。

symbols()函数来创建气泡图。该函数可以在指定的(x, y)坐标上绘制圆圈图、方形图、星形图、温度计图和箱线图。

symbols(x, y, circle=radius)

其中x、y和radius是需要设定的向量,分别表示x、y坐标和圆圈半径。

你可能想用面积而不是半径来表示第三个变量,那么按照圆圈半径的公式(r = /πA )变换即可:

symbols(x, y, circle=sqrt(z/pi))

一般来说,统计人员使用R时都倾向于避免用气泡图,原因和避免使用饼图一样:相比对长度的判断,人们对体积/面积的判断通常更困难。

参考资料:

【R语言】解决GO富集分析绘图,标签重叠问题

前面我给大家详细介绍过

☞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富集分析视频讲解

R数据可视化7:气泡图 Bubble Plot

气泡图(Bubble Plot)就是由一个个像气泡元素组成的图,和普通的散点图不同,该图可以展示三维甚至四维信息,如下图: 点的位置即其横纵坐标分别代表了Weight和Height,气泡的大小代表了Age,颜色代表了不同个体。

再举几个例子:

上面用了不同形式展示了GO或其他富集的结果。上图和右下图中,我们用颜色代表GO的类别,用横纵坐标代表p-value和z-score,用大小代表富集的基因Count。左下图我们用颜色代表p-value,用大小代表GeneCount,横坐标代表GeneRatio,纵坐标代表具体的类别。

从上述例子中可以发现用气泡图我们能展示更多的数据信息。 随着多组学研究的涌现,我们急需在同一张图表理展现多维的数据,气泡图就是一个不错的选择。

1)需要什么格式的数据

根据最终想要在气泡图上展示数据的维度以确定数据的格式。

本次用一个来自于GOplo包的数据EC,该数据为RNA-seq的下游分析数据。

该数据标准化处理后进行统计分析以确定了差异表达基因。 使用DAVID功能注释工具对差异表达基因(调整后的p值0.05)进行基因注释富集分析。

由于本次将使用两个包一个是GOplot专门用于转录组数据的下游展示,还有一个是我们常用的画图包ggplot2, 需要注意的是用于ggplot2的作图数据还要基于circ略作修改,具体见下文。

2)如何作图

GOplot 包提供了直接做气泡图的方法:

略调整参数之后可以对图的布局、颜色等进行调整:

然后,我们来看一看用常见的包ggplot2应该如何做该图。

首先我们要对数据处理一下,剔除一些不必要的信息:

稍作改变,去除图例添加facet。

往期 R数据可视化 分享

R数据可视化6: 面积图 Area Chart

R数据可视化5: 热图 Heatmap

R数据可视化4: PCA和PCoA图

R数据可视化3: 直方/条形图

R数据可视化2: 箱形图 Boxplot

R数据可视化1: 火山图


当前题目:r语言go气泡图 r语言 气泡图
分享URL:http://cdkjz.cn/article/hpcgec.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220