首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >ViDGER--直观地可视化差异基因表达结果

ViDGER--直观地可视化差异基因表达结果

作者头像
作图丫
发布2022-03-28 14:58:24
发布2022-03-28 14:58:24
9560
举报
文章被收录于专栏:作图丫作图丫

导语

GUIDE ╲

进行差异基因表达 (DGE) 是 RNA 测序 (RNA-seq) 数据最常见的应用之一。

背景介绍

差异基因表达 (DGE) 是 RNA 测序 (RNA-seq) 数据最常见的应用之一。 由于对RNA-seq数据进行分析的工具种类繁多以及得到的结果文件中提供了大量信息,导致对DGE 结果的解释可能不直观且耗时。在这里,小编给大家介绍一个 R 包 ViDGER,包含九个函数,这些函数可以进行信息丰富的可视化,用于解释来自三个广泛使用的差异表达工具 Cuffdiff、DESeq2 和 edgeR 的 DGE 结果。

R包安装

代码语言:javascript
复制
if (!requireNamespace("BiocManager", quietly=TRUE))
    install.packages("BiocManager")
BiocManager::install("vidger")
##新版 
if (!require("devtools")) install.packages("devtools")
devtools::install_github("btmonier/vidger", ref = "devel")

可视化展示

01

boxplot

使用 vsBoxPlot() 函数确定 FPKM 或 CPM 值的分布(修改type,可以选择Cuffdiff、DESeq2 和 edgeR方法)

代码语言:javascript
复制
vsBoxPlot(
    data = df.cuff, d.factor = NULL, type = 'cuffdiff', title = TRUE, 
    legend = TRUE, grid = TRUE
)
代码语言:javascript
复制
data("df.edger")
vsBoxPlot(
   data = df.edger, d.factor = NULL, type = "edger", title = TRUE,
   legend = TRUE, grid = TRUE, aes = "boxdot"
)
代码语言:javascript
复制
data("df.edger")
##画小提琴
vsBoxPlot(
   data = df.edger, d.factor = NULL, type = "edger", title = TRUE,
   legend = TRUE, grid = TRUE, aes = "viosumm"
)
代码语言:javascript
复制
data("df.edger")
##颜色设置
vsBoxPlot(
   data = df.edger, d.factor = NULL, type = "edger", title = TRUE,
   legend = TRUE, grid = TRUE, aes = "viosumm", fill.color = "Paired"
)

02

scatter plot

基本散点图函数 vsScatterPlot()

代码语言:javascript
复制
vsScatterPlot(
    x = 'hESC', y = 'iPS', data = df.cuff, type = 'cuffdiff',
    d.factor = NULL, title = TRUE, grid = TRUE
)

vsScatterMatrix()是vsScatterPlot() 函数的扩展

代码语言:javascript
复制
vsScatterMatrix(
    data = df.cuff, d.factor = NULL, type = 'cuffdiff', 
    comp = NULL, title = TRUE, grid = TRUE, man.title = NULL
)

03

差异基因表达矩阵

使用 vsDEGMatrix() 函数可视化每个实验处理水平的差异表达基因 (DEG) 的数量。

代码语言:javascript
复制
vsDEGMatrix(
    data = df.deseq, padj = 0.05, d.factor = 'condition', 
    type = 'deseq', title = TRUE, legend = TRUE, grid = TRUE
)

04

MA Plots

vsMAPlot() 根据基因表达值可视化两个样本之间的差异

代码语言:javascript
复制
vsMAPlot(
    x = 'treated_paired.end', y = 'untreated_paired.end', 
    data = df.deseq, d.factor = 'condition', type = 'deseq', 
    padj = 0.05, y.lim = NULL, lfc = NULL, title = TRUE, 
    legend = TRUE, grid = TRUE
)
代码语言:javascript
复制
 vsMAMatrix(
    data = df.cuff, d.factor = NULL, type = 'cuffdiff', 
    padj = 0.05, y.lim = NULL, lfc = 1, title = TRUE, 
    grid = TRUE, counts = TRUE, data.return = FALSE
)

05

volcano plots

使用 vsVolcano() 函数进行可视化,根据基因表达值可视化两个样本之间的方差,其中计算的 p 值(y 轴)的 -log10 是针对 log2 变化(x 轴)绘制的。

代码语言:javascript
复制
vsVolcano(
    x = 'iPS', y = 'hESC', data = df.cuff, d.factor = NULL, 
    type = 'cuffdiff', padj = 0.05, x.lim = NULL, lfc = NULL, 
    title = TRUE, legend = TRUE, grid = TRUE, data.return = FALSE
)
代码语言:javascript
复制
vsVolcanoMatrix(
    data = df.cuff, d.factor = NULL, type = 'cuffdiff', 
    padj = 0.05, x.lim = NULL, lfc = NULL, title = TRUE, 
    legend = TRUE, grid = TRUE, counts = TRUE
)

06

highlight数据点

代码语言:javascript
复制
data("df.cuff")
hl <- c(
  "XLOC_000033",
  "XLOC_000099",
  "XLOC_001414",
  "XLOC_001409"
)
vsScatterPlot(
    x = "hESC", y = "iPS", data = df.cuff, d.factor = NULL,
    type = "cuffdiff", title = TRUE, grid = TRUE, highlight = hl
)
代码语言:javascript
复制
hl <- c(
  "FBgn0036248",
  "FBgn0026573",
  "FBgn0259742",
  "FBgn0038961",
  "FBgn0038928"
)
vsVolcano(
    x = "treated_paired.end", y = "untreated_paired.end",
    data = df.deseq, d.factor = "condition",
    type = "deseq", padj = 0.05, x.lim = NULL, lfc = NULL,
    title = TRUE, grid = TRUE, data.return = FALSE, highlight = hl
)

小编总结

ViDGER包封装了多种绘图函数,基本可以满足我们对差异基因可视化的各种需求!大家快快拿去试试吧!

END

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-09-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作图丫 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档