This is a test version of Biostars. For the public version, visit https://www.biostars.org.
EnhancedVolcano, selectLab highlights nothing

Would somebody look at my code and point me in the right direction? Without the "selectLab" line, I can label the genes but I only want to highlight a few select genes.

I installed this package today with devtools:

devtools::install_github('kevinblighe/EnhancedVolcano')

 

EnhancedVolcano(mydata,
                lab = mydata$gene,
                x = 'log2FoldChange',
                y = 'padj',
                selectLab = c("CRNN"),
                pCutoff = 0.05,
                FCcutoff = 1.5,
                xlim = c(min(mydata[,"log2FoldChange"], na.rm=TRUE),
                         max(mydata[,"log2FoldChange"], na.rm=TRUE)),
                ylim = c(0, max(-log10(mydata[,"padj"]), na.rm=TRUE)),
                                axisLabSize = 18,
                title = 'cx vs tum',
                subtitle = '',
                legendPosition = 'right',
                legendLabSize = 12,
                legendIconSize = 4.0,
                drawConnectors = TRUE,
                widthConnectors = 0.2,
                colConnectors = 'grey30',
                transcriptPointSize = 1.0,
                transcriptLabSize = 3.5,
                transcriptLabCol = 'black',
                transcriptLabFace = 'bold',
                boxedlabels = TRUE,
                colAlpha = 4/5,
                xlab = bquote(~Log[2]~ "fold change"),
                ylab = bquote(~-Log[10]~adjusted~italic(P)),
                border=full
                )

R version 3.4.4 (2018-03-15)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 16.04.4 LTS

Matrix products: default
BLAS: /usr/lib/libblas/libblas.so.3.6.0
LAPACK: /usr/lib/lapack/liblapack.so.3.6.0

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C               LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8    LC_PAPER=en_US.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C             LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] calibrate_1.7.2       MASS_7.3-50           EnhancedVolcano_1.1.3 ggrepel_0.8.1         ggplot2_3.1.1.9000   

loaded via a namespace (and not attached):
 [1] Rcpp_1.0.1        pillar_1.3.1      compiler_3.4.4    remotes_2.0.4     prettyunits_1.0.2 tools_3.4.4      
 [7] testthat_2.1.1    digest_0.6.18     pkgbuild_1.0.3    pkgload_1.0.2     memoise_1.1.0     tibble_2.1.1     
[13] gtable_0.3.0      pkgconfig_2.0.2   rlang_0.3.4       cli_1.1.0         rstudioapi_0.10   yaml_2.2.0       
[19] withr_2.1.2       dplyr_0.8.0.1     fs_1.3.1          desc_1.2.0        devtools_2.0.2    rprojroot_1.3-2  
[25] grid_3.4.4        tidyselect_0.2.5  glue_1.3.1        R6_2.4.0          processx_3.3.1    sessioninfo_1.1.1
[31] purrr_0.3.2       callr_3.2.0       magrittr_1.5      usethis_1.5.0     scales_1.0.0      backports_1.1.4  
[37] ps_1.3.0          assertthat_0.2.1  colorspace_1.4-1  labeling_0.3      lazyeval_0.2.2    munsell_0.5.0    
[43] crayon_1.3.4
rna-seq

EnhancedVolcano should have been a tag in your question. That would probably have alerted its developer, Kevin Blighe

1 answer

Hey, for selectLab to function correctly, CRNN has to definitely be a member of mydata$gene. Also check that mydata$gene is encoded as a character vector.

What does grepl("CRNN", mydata$gene) return? It should return the index at which CRNN resides in mydata$gene

Also, I know that I have a part in the vignette for plotting the negative log10 of the adjusted p-values, but the general practice is to plot the nominal p-values. See here: https://support.bioconductor.org/p/120639/#120674

Log in to answer this question.