前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >增强火山图,要不要试一下?

增强火山图,要不要试一下?

作者头像
生信宝典
发布2019-06-26 23:27:11
2.4K0
发布2019-06-26 23:27:11
举报
文章被收录于专栏:生信宝典生信宝典

包作者:Kevin Blighe撰文:协和医学院 苑晓梅编辑:生信宝典 时间:2019-06-03

前言

最近道听途说EnhancedVolcano绘制火山图的方便性,所以本人就根据其说明文档进行操作。但在操作过程中发现,其shape功能并没有在help文档中找到,经过搜索在github上看到了以下的答复 。。。(说明整个文档功能并没有完全开发,需进行选择)

1 Introduction

火山图是可视化差异表达分析结果的有效方法。这次更新的EnhancedVolcano目的就是两个(1)使转录本基因名称的显示更加的合理化,避免出现相互重叠的现象;(2)允许用户通过颜色,形状和阴影参数配置在同一绘图空间中识别多达3种不同类型的属性。

2 Installation

2.1 1. 下载安装包

代码语言:javascript
复制
# if (!requireNamespace('BiocManager', quietly = TRUE))
#    install.packages('BiocManager')
# BiocManager::install('EnhancedVolcano')
if (!requireNamespace('devtools', quietly = TRUE))
   install.packages('devtools')
devtools::install_github('kevinblighe/EnhancedVolcano')

2.2 2. 加载R包

代码语言:javascript
复制
 library(EnhancedVolcano)

3 开始

作者使用该流程: RNA-seq workflow: gene-level exploratory analysis and differential expression。具体来说,我们将加载airway数据,其中不同的气道平滑肌细胞用地塞米松治疗。

代码语言:javascript
复制
library(airway)
library(magrittr)

data('airway')
# %<>%复合赋值操作符, 功能与 %>% 基本是一样的,但多了一项额外的操作,就是把结果写到左侧对象。
# 对dex列进行relevel,再把revel后的结果赋值到airway$dex。
airway$dex %<>% relevel('untrt')

使用DESeq2进行差异表达,以创建两组结果(DESeq2差异基因分析和批次效应移除):

代码语言:javascript
复制
  library('DESeq2')

  dds <- DESeqDataSet(airway, design = ~ cell + dex)
  dds <- DESeq(dds, betaPrior=FALSE)
  # compare trt & untrt
  res1 <- results(dds,
    contrast = c('dex','trt','untrt'))
  # shrink log2 fold change
  res1 <- lfcShrink(dds,
    contrast = c('dex','trt','untrt'), res=res1)
  # compare different cells
  res2 <- results(dds,
    contrast = c('cell', 'N061011', 'N61311'))
  res2 <- lfcShrink(dds,
    contrast = c('cell', 'N061011', 'N61311'), res=res2)

查看下数据结构

代码语言:javascript
复制
head res1
代码语言:javascript
复制
log2 fold change (MAP): dex trt vs untrt 
Wald test p-value: dex trt vs untrt 
DataFrame with 6 rows and 6 columns
                         baseMean      log2FoldChange              lfcSE
                        <numeric>           <numeric>          <numeric>
ENSG00000000003  708.602169691234  -0.374152710396614 0.0988428916720785
ENSG00000000005                 0                  NA                 NA
ENSG00000000419  520.297900552084   0.202062036081026  0.109739490807055
ENSG00000000457  237.163036796015  0.0361672062398394  0.138337785736641
ENSG00000000460  57.9326331250967 -0.0844566831590659  0.249890471495246
ENSG00000000938 0.318098378392895 -0.0841390331826692  0.151334283397515
                              stat               pvalue                padj
                         <numeric>            <numeric>           <numeric>
ENSG00000000003   -3.7877506903658 0.000152017272634539 0.00128363812227422
ENSG00000000005                 NA                   NA                  NA
ENSG00000000419   1.84294384315416   0.0653372100766985    0.19654584069126
ENSG00000000457  0.264356843264039    0.791504963002101   0.911458000845921
ENSG00000000460 -0.307052600205469    0.758803335537917   0.895034449952733
ENSG00000000938  -0.39379516719652    0.693732272741941                  NA

3.1 绘制最基本的火山图

对于最基本的火山图,只需要一个数据框或测试结果矩阵,包含转录本名称,log2FC以及adjusted或unajusted的P值。 log2FC的默认cut-off值是 > | 2 |; P值的默认cut-off值为10e-6。

代码语言:javascript
复制
EnhancedVolcano(res1,
   # 基因名字
    lab = rownames(res1),
    x = 'log2FoldChange',
    y = 'pvalue',
    xlim = c(-5, 8))

图例:NS-非显著基因;Log2 FC倍数大于阈值的基因;P 统计显著的基因;P & Log2 FC 差异基因

4 高级功能

默认情况下,EnhancedVolcano将仅尝试标记设置的阈值筛选出的差异基因,即p CutoffFC cutoff。 此外,它只会标记可以合理地适合绘图空间的基因。 用户可以选择性地提供他/她希望在图中标记的转录本名称的矢量(as selectLab)。

在这个例子中,还修改了点和标签大小,帮助改善清晰度,保障更多的转录本进入差异分析中。

代码语言:javascript
复制
  EnhancedVolcano(res2,
    lab = rownames(res2),
    x = 'log2FoldChange',
    y = 'pvalue',
    xlim = c(-8, 8),
    title = 'N061011 versus N61311',
    pCutoff = 10e-16,
    FCcutoff = 1.5,
    transcriptPointSize = 1.5,
    transcriptLabSize = 3.0)

4.2 调整点的颜色和透明度

默认配色方案可能不是每个人都喜欢。 在这里,只有通过log2FC和P值筛选的差异转录本都是红色的,其他一切都是黑色的。 还调整’alpha’的值,它控制绘制点的透明度:1 = 100%不透明; 0 = 100%透明

代码语言:javascript
复制
  EnhancedVolcano(res2,
    lab = rownames(res2),
    x = 'log2FoldChange',
    y = 'pvalue',
    xlim = c(-8, 8),
    title = 'N061011 versus N61311',
    pCutoff = 10e-16,
    FCcutoff = 1.5,
    transcriptPointSize = 1.5,
    transcriptLabSize = 3.0,
    # Colour shading for plotted points, corresponding to < abs(FCcutoff) && > pCutoff, 
    # > abs(FCcutoff), < pCutoff, > abs(FCcutoff) && < pCutoff. 
    # 无显著,倍数大(左下、右下),P小 (中上), 显著差异
    # > DEFAULT = c("grey30", "forestgreen", "royalblue", "red2").
    col=c('black', 'black', 'black', 'red3'),
    colAlpha = 1)

4.3 调整绘制点的形状

它可以帮助将不同的点绘制成不同的形状。 默认形状是圆形。 用户可以通过shape参数指定形状,该参数接受单个或四个可能的值:如果有四个值,则这些值将映射到也由颜色指定的标准名称; 如果是单个值,则所有点都用此值绘制。

For more information on shape encoding search online at ggplot2 Quick Reference: shape

代码语言:javascript
复制
 EnhancedVolcano(res2,
    lab = rownames(res2),
    x = 'log2FoldChange',
    y = 'pvalue',
    xlim = c(-8, 8),
    title = 'N061011 versus N61311',
    pCutoff = 10e-16,
    FCcutoff = 1.5,
    transcriptPointSize = 3.0,
    transcriptLabSize = 3.0,
    shape = 8,
    colAlpha = 1)

    # 注意Bioconductor版本该处shape功能并不能用,需要安装github的开发版

调整画图点的形状

代码语言:javascript
复制
  EnhancedVolcano(res2,
    lab = rownames(res2),
    x = 'log2FoldChange',
    y = 'pvalue',
    xlim = c(-8, 8),
    title = 'N061011 versus N61311',
    pCutoff = 10e-16,
    FCcutoff = 1.5,
    transcriptPointSize = 2.0,
    transcriptLabSize = 3.0,
    # 同上面col
    # 无显著,倍数大(左下、右下),P小 (中上), 显著差异
    shape = c(1, 4, 23, 25),
    colAlpha = 1)

4.4 调整cut-off线并添加额外的阈值线

cut-off线可以通过以下参数进行调整。 “cutoffLineType”以下参数进行修改:“blank”, “solid”, “dashed”, “dotted”, “dotdash”, “longdash”, “twodash”;cutoff线的颜色和粗细可以通过 ‘cutoffLineCol’ 和 ‘cutoffLineWidth’进行修改,如果不需要该cut-off线,可以设置“cutoffLineType=“blank” or cutoffLineWidth=0.”

也可以通过参数‘hline’ and ‘vline’ 显示其他的cut-off线;

代码语言:javascript
复制
  EnhancedVolcano(res2,
    lab = rownames(res2),
    x = 'log2FoldChange',
    y = 'pvalue',
    xlim = c(-6, 6),
    title = 'N061011 versus N61311',
    pCutoff = 10e-12,
    FCcutoff = 1.5,
    transcriptPointSize = 1.5,
    transcriptLabSize = 3.0,
    colAlpha = 1,
    # 取消cutoff线
    cutoffLineType = 'blank',
    cutoffLineCol = 'black',
    cutoffLineWidth = 0.8,
    hline = c(10e-12, 10e-36, 10e-60, 10e-84),
    hlineCol = c('grey0', 'grey25','grey50','grey75'),
    hlineType = 'longdash',
    hlineWidth = 0.8,
    gridlines.major = FALSE,
    gridlines.minor = FALSE)

4.5 调整图例位置,大小和文本

代码语言:javascript
复制
 EnhancedVolcano(res2,
    lab = rownames(res2),
    x = 'log2FoldChange',
    y = 'pvalue',
    xlim = c(-6, 6),
    pCutoff = 10e-12,
    FCcutoff = 1.5,
    cutoffLineType = 'twodash',
    cutoffLineWidth = 0.8,
    transcriptPointSize = 3.0,
    transcriptLabSize = 4.0,
    colAlpha = 1,
    legend=c('NS','Log (base 2) fold-change','P value', 'P value & Log (base 2) fold-change'),
    legendPosition = 'right',
    legendLabSize = 16,
    legendIconSize = 5.0)

4.6 绘制调整后的p值

作者通过 bquote 函数修改轴标题

代码语言:javascript
复制
  EnhancedVolcano(res2,
    lab = rownames(res2),
    x = 'log2FoldChange',
    y = 'padj',
    xlim=c(-6,6),
    xlab = bquote(~Log[2]~ 'fold change'),
    ylab = bquote(~-Log[10]~adjusted~italic(P)),
    pCutoff = 0.0001,
    FCcutoff = 1.0,
    transcriptLabSize = 4.0,
    colAlpha = 1,
    legend=c('NS','Log2 FC','Adjusted p-value','Adjusted p-value & Log2 FC'),
    legendPosition = 'bottom',
    legendLabSize = 10,
    legendIconSize = 3.0)

4.7 通过添加连接线来添加更多标签

为了标记更多点,可以通过短线连接标签, 这些连接线的宽度和颜色也可以分别用widthConnectorscolConnectors进行修改;

代码语言:javascript
复制
  EnhancedVolcano(res2,
    lab = rownames(res2),
    x = 'log2FoldChange',
    y = 'pvalue',
    xlim = c(-6,6),
    xlab = bquote(~Log[2]~ 'fold change'),
    pCutoff = 10e-14,
    FCcutoff = 2.0,
    transcriptPointSize = 3.0,
    transcriptLabSize = 4.0,
    colAlpha = 1,
    legend=c('NS','Log (base 2) fold-change','P value', 'P value & Log (base 2) fold-change'),
    legendPosition = 'right',
    legendLabSize = 12,
    legendIconSize = 4.0,
    drawConnectors = TRUE,
    widthConnectors = 0.2,
    colConnectors = 'grey30')

4.8 仅标记关键转录本

在许多情况下,人们可能只希望标记他们感兴趣的关键转录本。 因此,可以通过selectLab参数提要标记的转录本的名字。当然,只有通过差异基因阈值筛选的名字才会被标记。

代码语言:javascript
复制
 EnhancedVolcano(res2,
    lab = rownames(res2),
    x = 'log2FoldChange',
    y = 'pvalue',
    ## 标记目标基因
    selectLab = c('ENSG00000106565','ENSG00000187758'),
    xlim = c(-6,7),
    xlab = bquote(~Log[2]~ 'fold change'),
    pCutoff = 10e-14,
    FCcutoff = 2.0,
    transcriptPointSize = 3.0,
    transcriptLabSize = 5.0,
    shape = c(4, 35, 17, 18),
    colAlpha = 1,
    legend=c('NS','Log (base 2) fold-change','P value','P value & Log (base 2) fold-change'),
    legendPosition = 'right',
    legendLabSize = 14,
    legendIconSize = 5.0)

4.9 给标签加框

代码语言:javascript
复制
  EnhancedVolcano(res2,
    lab = rownames(res2),
    x = 'log2FoldChange',
    y = 'pvalue',
    selectLab = c('ENSG00000106565','ENSG00000187758',
      'ENSG00000230795', 'ENSG00000164530',
      'ENSG00000143153'),
    xlim = c(-5.5,8),
    xlab = bquote(~Log[2]~ 'fold change'),
    pCutoff = 10e-14,
    FCcutoff = 2.0,
    transcriptPointSize = 3.0,
    transcriptLabSize = 5.0,
    transcriptLabCol = 'black',
    transcriptLabFace = 'bold',
    # 加框
    boxedlabels = TRUE,
    colAlpha = 4/5,
    legend=c('NS','Log (base 2) fold-change','P value','P value & Log (base 2) fold-change'),
    legendPosition = 'right',
    legendLabSize = 14,
    legendIconSize = 4.0,
    drawConnectors = TRUE,
    widthConnectors = 1.0,
    colConnectors = 'black')

4.10 使用自定义值着色方案

在这个例子,作者希望将log2FC> 2.5的所有转录本标记为“high”,将log2FC <-2.5的转录本标记为“low”。

代码语言:javascript
复制
# create custom key-value pairs for 'high', 'low', 'mid' expression by fold-change
# 通过named vector生成自定义颜色
    # set the base colour as 'black'
    keyvals <- rep('black', nrow(res2))

    # set the base name/label as 'Mid'
    names(keyvals) <- rep('Mid', nrow(res2))

    # modify keyvals for transcripts with fold change > 2.5
    keyvals[which(res2$log2FoldChange > 2.5)] <- 'gold'
    names(keyvals)[which(res2$log2FoldChange > 2.5)] <- 'high'

    # modify keyvals for transcripts with fold change < -2.5
    keyvals[which(res2$log2FoldChange < -2.5)] <- 'royalblue'
    names(keyvals)[which(res2$log2FoldChange < -2.5)] <- 'low'

    unique(names(keyvals))
代码语言:javascript
复制
## [1] "Mid"  "low"  "high"
代码语言:javascript
复制
    unique(keyvals)
代码语言:javascript
复制
## [1] "black"     "royalblue" "gold"
代码语言:javascript
复制
 keyvals[1:20]
代码语言:javascript
复制
##     Mid     Mid     Mid     Mid     Mid     Mid     Mid     Mid     Mid 
## "black" "black" "black" "black" "black" "black" "black" "black" "black" 
##     Mid     Mid     Mid     Mid     Mid     Mid     Mid     Mid     Mid 
## "black" "black" "black" "black" "black" "black" "black" "black" "black" 
##     Mid     Mid 
## "black" "black"
代码语言:javascript
复制
  p1 <- EnhancedVolcano(res2,
    lab = rownames(res2),
    x = 'log2FoldChange',
    y = 'pvalue',
    selectLab = rownames(res2)[which(names(keyvals) %in% c('high', 'low'))],
    xlim = c(-6.5,6.5),
    xlab = bquote(~Log[2]~ 'fold change'),
    title = 'Custom colour over-ride',
    pCutoff = 10e-14,
    FCcutoff = 1.0,
    transcriptPointSize = 3.5,
    transcriptLabSize = 4.5,
    shape = c(6, 4, 2, 11),
    # 自定义颜色
    colCustom = keyvals,
    colAlpha = 1,
    legendPosition = 'top',
    legendLabSize = 15,
    legendIconSize = 5.0,
    drawConnectors = TRUE,
    widthConnectors = 0.5,
    colConnectors = 'grey50',
    gridlines.major = TRUE,
    gridlines.minor = FALSE,
    border = 'partial',
    borderWidth = 1.5,
    borderColour = 'black')

  p2 <- EnhancedVolcano(res2,
    lab = rownames(res2),
    x = 'log2FoldChange',
    y = 'pvalue',
    selectLab = rownames(res2)[which(names(keyvals) %in% c('high', 'low'))],
    xlim = c(-6.5,6.5),
    xlab = bquote(~Log[2]~ 'fold change'),
    title = 'No custom colour over-ride',
    pCutoff = 10e-14,
    FCcutoff = 1.0,
    transcriptPointSize = 3.5,
    transcriptLabSize = 4.5,
    colCustom = NULL,
    colAlpha = 1,
    legendPosition = 'top',
    legendLabSize = 15,
    legendIconSize = 5.0,
    drawConnectors = FALSE,
    widthConnectors = 0.5,
    colConnectors = 'grey50',
    gridlines.major = TRUE,
    gridlines.minor = FALSE,
    border = 'full',
    borderWidth = 1.0,
    borderColour = 'black')

  library(gridExtra)
  library(grid)
  grid.arrange(p1, p2,
    ncol=2,
    top = textGrob('EnhancedVolcano',
      just = c('center'),
      gp = gpar(fontsize = 32)))
  grid.rect(gp=gpar(fill=NA))

4.11 使用自定义value对覆盖颜色和/或形状进行修改

代码语言:javascript
复制
  # define different cell-types that will be shaded
  celltype1 <- c('ENSG00000106565', 'ENSG00000002933',
    'ENSG00000165246', 'ENSG00000224114')
  celltype2 <- c('ENSG00000230795', 'ENSG00000164530',
    'ENSG00000143153', 'ENSG00000169851',
    'ENSG00000231924', 'ENSG00000145681')

  # create custom key-value pairs for different cell-types
    # set the base shape as '3'
    keyvals.shape <- rep(3, nrow(res2))

    # set the base name/label as 'PBC'
    names(keyvals.shape) <- rep('PBC', nrow(res2))

    # modify the keyvals for cell-type 1
    keyvals.shape[which(rownames(res2) %in% celltype1)] <- 17
    names(keyvals.shape)[which(rownames(res2) %in% celltype1)] <- 'Cell-type 1'

    # modify the keyvals for cell-type 2
    keyvals.shape[which(rownames(res2) %in% celltype2)] <- 64
    names(keyvals.shape)[which(rownames(res2) %in% celltype2)] <- 'Cell-type 2'

    unique(names(keyvals.shape))
代码语言:javascript
复制
## [1] "PBC"         "Cell-type 1" "Cell-type 2"
代码语言:javascript
复制
    unique(keyvals.shape)
代码语言:javascript
复制
## [1]  3 17 64
代码语言:javascript
复制
    keyvals.shape[1:20]
代码语言:javascript
复制
## PBC PBC PBC PBC PBC PBC PBC PBC PBC PBC PBC PBC PBC PBC PBC PBC PBC PBC 
##   3   3   3   3   3   3   3   3   3   3   3   3   3   3   3   3   3   3 
## PBC PBC 
##   3   3
代码语言:javascript
复制
 p1 <- EnhancedVolcano(res2,
    lab = rownames(res2),
    x = 'log2FoldChange',
    y = 'pvalue',
    selectLab = rownames(res2)[which(names(keyvals) %in% c('high', 'low'))],
    xlim = c(-6.5,6.5),
    xlab = bquote(~Log[2]~ 'fold change'),
    title = 'Custom shape over-ride',
    pCutoff = 10e-14,
    FCcutoff = 1.0,
    transcriptPointSize = 3.5,
    transcriptLabSize = 4.5,
    shapeCustom = keyvals.shape,
    colCustom = NULL,
    colAlpha = 1,
    legendLabSize = 15,
    legendPosition = 'left',
    legendIconSize = 5.0,
    drawConnectors = TRUE,
    widthConnectors = 0.5,
    colConnectors = 'grey50',
    gridlines.major = TRUE,
    gridlines.minor = FALSE,
    border = 'partial',
    borderWidth = 1.5,
    borderColour = 'black')

  # create custom key-value pairs for 'high', 'low', 'mid' expression by fold-change
    # set the base colour as 'black'
    keyvals.colour <- rep('black', nrow(res2))

    # set the base name/label as 'Mid'
    names(keyvals.colour) <- rep('Mid', nrow(res2))

    # modify keyvals for transcripts with fold change > 2.5
    keyvals.colour[which(res2$log2FoldChange > 2.5)] <- 'gold'
    names(keyvals.colour)[which(res2$log2FoldChange > 2.5)] <- 'high'

    # modify keyvals for transcripts with fold change < -2.5
    keyvals.colour[which(res2$log2FoldChange < -2.5)] <- 'royalblue'
    names(keyvals.colour)[which(res2$log2FoldChange < -2.5)] <- 'low'

    unique(names(keyvals.colour))
代码语言:javascript
复制
## [1] "Mid"  "low"  "high"
代码语言:javascript
复制
    unique(keyvals.colour)
代码语言:javascript
复制
## [1] "black"     "royalblue" "gold"
代码语言:javascript
复制
p2 <- EnhancedVolcano(res2,
    lab = rownames(res2),
    x = 'log2FoldChange',
    y = 'pvalue',
    selectLab = rownames(res2)[which(names(keyvals) %in% c('High', 'Low'))],
    xlim = c(-6.5,6.5),
    xlab = bquote(~Log[2]~ 'fold change'),
    title = 'Custom shape & colour over-ride',
    pCutoff = 10e-14,
    FCcutoff = 1.0,
    transcriptPointSize = 5.5,
    transcriptLabSize = 0.0,
    shapeCustom = keyvals.shape,
    colCustom = keyvals.colour,
    colAlpha = 1,
    legendPosition = 'top',
    legendLabSize = 15,
    legendIconSize = 5.0,
    drawConnectors = TRUE,
    widthConnectors = 0.5,
    colConnectors = 'grey50',
    gridlines.major = TRUE,
    gridlines.minor = FALSE,
    border = 'full',
    borderWidth = 1.0,
    borderColour = 'black')

  library(gridExtra)
  library(grid)
  grid.arrange(p1, p2,
    ncol=2,
    top = textGrob('EnhancedVolcano',
      just = c('center'),
      gp = gpar(fontsize = 32)))
  grid.rect(gp=gpar(fill=NA))

4.12 Shade 指定的转录本

此功能最适用于仅显示1或2个关键转录本。用户可以使用’shapeCustom’参数来更识别不同类型的转录本。

代码语言:javascript
复制
  # define different cell-types that will be shaded
  celltype1 <- c('ENSG00000106565', 'ENSG00000002933')
  celltype2 <- c('ENSG00000230795', 'ENSG00000164530')
代码语言:javascript
复制
p1 <- EnhancedVolcano(res2,
    lab = rownames(res2),
    x = 'log2FoldChange',
    y = 'pvalue',
    selectLab = celltype1,
    xlim = c(-6.5,6.5),
    xlab = bquote(~Log[2]~ 'fold change'),
    title = 'Shading cell-type 1',
    pCutoff = 10e-14,
    FCcutoff = 1.0,
    transcriptPointSize = 8.0,
    transcriptLabSize = 5.0,
    transcriptLabCol = 'purple',
    transcriptLabFace = 'bold',
    boxedlabels = TRUE,
    shape = 42,
    # 自定义颜色
    colCustom = keyvals,
    colAlpha = 1,
    legendPosition = 'top',
    legendLabSize = 15,
    legendIconSize = 5.0,
   # 自定义标签的背景
    shade = celltype1,
    shadeLabel = 'Cell-type I',
    shadeAlpha = 1/2,
    shadeFill = 'purple',
    shadeSize = 1,
    shadeBins = 5,
    drawConnectors = TRUE,
    widthConnectors = 1.0,
    colConnectors = 'grey30',
    gridlines.major = TRUE,
    gridlines.minor = FALSE,
    border = 'partial',
    borderWidth = 1.5,
    borderColour = 'black')

  p2 <- EnhancedVolcano(res2,
    lab = rownames(res2),
    x = 'log2FoldChange',
    y = 'pvalue',
    selectLab = celltype2,
    xlim = c(-6.5,6.5),
    xlab = bquote(~Log[2]~ 'fold change'),
    title = 'Shading cell-type 2',
    pCutoff = 10e-14,
    FCcutoff = 1.0,
    transcriptLabSize = 5.0,
    transcriptLabCol = 'forestgreen',
    transcriptLabFace = 'bold',
    # 自定义形状
    shapeCustom = keyvals.shape,
    colCustom = keyvals.colour,
    colAlpha = 1,
    legendPosition = 'top',
    transcriptPointSize = 4.0,
    legendLabSize = 15,
    legendIconSize = 5.0,
    shade = celltype2,
    shadeLabel = 'Cell-type II',
    shadeAlpha = 1/2,
    shadeFill = 'forestgreen',
    shadeSize = 1,
    shadeBins = 5,
    drawConnectors = TRUE,
    widthConnectors = 1.0,
    colConnectors = 'grey30',
    gridlines.major = TRUE,
    gridlines.minor = FALSE,
    border = 'full',
    borderWidth = 1.0,
    borderColour = 'black')

  library(gridExtra)
  library(grid)
  grid.arrange(p1, p2,
    ncol=2,
    top = textGrob('EnhancedVolcano',
      just = c('center'),
      gp = gpar(fontsize = 32)))
  grid.rect(gp=gpar(fill=NA))

5 Session info

代码语言:javascript
复制
sessionInfo()
代码语言:javascript
复制
## R version 3.6.0 (2019-04-26)
## Platform: x86_64-pc-linux-gnu (64-bit)
## Running under: Ubuntu 18.04.2 LTS
## 
## Matrix products: default
## BLAS:   /home/biocbuild/bbs-3.10-bioc/R/lib/libRblas.so
## LAPACK: /home/biocbuild/bbs-3.10-bioc/R/lib/libRlapack.so
## 
## locale:
##  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
##  [3] LC_TIME=en_US.UTF-8        LC_COLLATE=C              
##  [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
##  [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
##  [9] LC_ADDRESS=C               LC_TELEPHONE=C            
## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       
## 
## attached base packages:
##  [1] grid      parallel  stats4    stats     graphics  grDevices utils    
##  [8] datasets  methods   base     
## 
## other attached packages:
##  [1] gridExtra_2.3               DESeq2_1.25.0              
##  [3] magrittr_1.5                airway_1.5.0               
##  [5] SummarizedExperiment_1.15.1 DelayedArray_0.11.0        
##  [7] BiocParallel_1.19.0         matrixStats_0.54.0         
##  [9] Biobase_2.45.0              GenomicRanges_1.37.8       
## [11] GenomeInfoDb_1.21.1         IRanges_2.19.6             
## [13] S4Vectors_0.23.6            BiocGenerics_0.31.2        
## [15] EnhancedVolcano_1.3.1       ggrepel_0.8.1              
## [17] ggplot2_3.1.1               knitr_1.23                 
## 
## loaded via a namespace (and not attached):
##  [1] bit64_0.9-7            splines_3.6.0          Formula_1.2-3         
##  [4] assertthat_0.2.1       highr_0.8              latticeExtra_0.6-28   
##  [7] blob_1.1.1             GenomeInfoDbData_1.2.1 yaml_2.2.0            
## [10] RSQLite_2.1.1          pillar_1.4.1           backports_1.1.4       
## [13] lattice_0.20-38        glue_1.3.1             digest_0.6.19         
## [16] RColorBrewer_1.1-2     XVector_0.25.0         checkmate_1.9.3       
## [19] colorspace_1.4-1       htmltools_0.3.6        Matrix_1.2-17         
## [22] plyr_1.8.4             XML_3.98-1.19          pkgconfig_2.0.2       
## [25] genefilter_1.67.1      zlibbioc_1.31.0        purrr_0.3.2           
## [28] xtable_1.8-4           scales_1.0.0           tibble_2.1.2          
## [31] htmlTable_1.13.1       annotate_1.63.0        withr_2.1.2           
## [34] nnet_7.3-12            lazyeval_0.2.2         survival_2.44-1.1     
## [37] crayon_1.3.4           memoise_1.1.0          evaluate_0.14         
## [40] MASS_7.3-51.4          foreign_0.8-71         tools_3.6.0           
## [43] data.table_1.12.2      stringr_1.4.0          locfit_1.5-9.1        
## [46] munsell_0.5.0          cluster_2.0.9          AnnotationDbi_1.47.0  
## [49] compiler_3.6.0         rlang_0.3.4            RCurl_1.95-4.12       
## [52] rstudioapi_0.10        htmlwidgets_1.3        labeling_0.3          
## [55] bitops_1.0-6           base64enc_0.1-3        rmarkdown_1.13        
## [58] gtable_0.3.0           DBI_1.0.0              R6_2.4.0              
## [61] dplyr_0.8.1            bit_1.1-14             Hmisc_4.2-0           
## [64] stringi_1.4.3          Rcpp_1.0.1             geneplotter_1.63.0    
## [67] rpart_4.1-15           acepack_1.4.1          tidyselect_0.2.5      
## [70] xfun_0.7
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-06-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信宝典 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 1 Introduction
  • 2 Installation
    • 2.1 1. 下载安装包
      • 2.2 2. 加载R包
      • 3 开始
        • 3.1 绘制最基本的火山图
        • 4 高级功能
          • 4.2 调整点的颜色和透明度
            • 4.3 调整绘制点的形状
              • 4.4 调整cut-off线并添加额外的阈值线
                • 4.5 调整图例位置,大小和文本
                  • 4.6 绘制调整后的p值
                    • 4.7 通过添加连接线来添加更多标签
                      • 4.8 仅标记关键转录本
                        • 4.9 给标签加框
                          • 4.10 使用自定义值着色方案
                            • 4.11 使用自定义value对覆盖颜色和/或形状进行修改
                            • 4.12 Shade 指定的转录本
                            • 5 Session info
                            领券
                            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档