Skip to content

Latest commit

 

History

History
195 lines (153 loc) · 108 KB

README.md

File metadata and controls

195 lines (153 loc) · 108 KB

PCAGO

PCAGO is an interactive web service that allows analysis of RNA-Seq read count data with principal component analysis (PCA) and agglomerative clustering. The tool also includes features like read count normalization, filtering read counts by gene annotation and various visualization options.

Running

You have following options to run PCAGO:

  • Use our servers (PCAGO Stable or PCAGO Development Version)
  • Use a standalone desktop application
  • Run the PCAGO server on one of your servers or your local computer
  • Use our Docker Image (recommended)

Run via Docker

Big thanks go out to Lasse Faber!

Local machine

docker run -p 8000:8000 --user $(id -u):$(id -g) --rm -it mhoelzer/pcago:1.0--c1e506c ./run_packrat.sh

Server

Run the docker container in the same way like above and additionally connect to the server with port forwarding.

ssh -L 8000:127.0.0.1:8000 your@your.server.com

In both cases you will then be able to access the PCAGO-Server via the following address in your browser: 127.0.0.1:8000.

Using the standalone application

Download the PCAGO-Electron here. This application wraps a PCAGO-server within an Electron application.

Running manually

Open a R console in the PCAGO folder and run

shiny::runApp()

**Note: ** If you use packrat (see below), you have to run

source('packrat/init.R')
shiny::runApp()

Requirements

Following packages are required to run PCAGO if the dependencies are already installed:

  • R version 3.4.3 (2017-11-30) or higher
  • ffmpeg (Debian/Ubuntu: ffmpeg)
  • libmariadb (Debian/Ubuntu: libmariadb2)

Following packages are required to install PCAGO if the required libraries have to be installed

  • libcurl dev package (Debian/Ubuntu: libcurl4-openssl-dev)
  • xml2-config dev package (Debian/Ubuntu: libxml2-dev)
  • openssl dev package (Debian/Ubuntu: libssl-dev)
  • mariadb dev package (Debian/Ubuntu: libmariadb-client-lgpl-dev)
  • cairo2 dev package (Debian/Ubuntu: libcairo2-dev)
  • GTK2 dev package (Debian/Ubuntu: libgtk2.0-dev)
  • XVFB package (Debian/Ubuntu: xvfb)
  • xAuth package (Debian/Ubuntu: xauth)
  • xfonts dev package (Debian/Ubuntu: xfonts-baselibgtk2.0-dev)
  • xfonts base package (Debian/Ubuntu: xfonts-base)
  • libxt dev package (Debian/Ubuntu: libxt-dev)

PCAGO also requires several R packages (see table below). You can either install those packages manually or by using the package management system packrat.

Using packrat

Packrat is a package management system that allows creating snapshots of the libraries used for development of the application. This prevents breakage introduced by newer library versions. To use packrat, follow these steps:

  1. Download the package sources
  2. Unpack them into the packrat directory within the PCAGO project folder
  3. Start R within the project directory
  4. Run source('packrat/init.R')

**Important note: ** source('packrat/init.R') must be always called before starting PCAGO to enable packrat. If you want to automate this process or want to deploy a server using Shiny Server, create a file .Rprofile that contains source('packrat/init.R') in the PCAGO directory.

**Important note: ** If the installation of the dependencies failed for any reason source('packrat/init.R') will not continue the installation of the library. Additionally run packrat::restore() to continue the dependency installation.

**Tip: ** You can copy the packrat directory to other computers running the same operating system to skip the building times. This will likely not work if you copy data between different distributions or different versions of the same distribution.

Installing requirements manually

If you do not want to use packrat, you can install the dependencies manually. Please note that newer library versions might break functionality. Following command installs all dependencies:

# CRAN packages
install.packages(c("svglite", "scales", "fastcluster", "gplots", "amap", "dendextend", "VennDiagram", "futile.logger", "plot3D", "scatterplot3d", "ggplot2", "RColorBrewer", "openxlsx", "Cairo", "reshape2", "R6", "matrixStats", "colourpicker", "shinyjs", "shinyBS", "DT", "htmltools", "markdown", "shiny"))

# BioConductor packages. Install them from source, so known bugs with newer R versions can be avoided.
source("https://bioconductor.org/biocLite.R")
biocLite(c("ctc", "GO.db", "GenomicFeatures", "AnnotationDbi", "AnnotationHub", "biomaRt", "rtracklayer", "DESeq2", "SummarizedExperiment", "DelayedArray", "Biobase", "GenomicRanges", "GenomeInfoDb", "IRanges", "S4Vectors", "BiocGenerics"), type = "source")

R packages

Package Author URL License Version
rmarkdown JJ Allaire [aut], Yihui Xie [aut, cre] (0000-0003-0645-5666), Jonathan McPherson [aut], Javier Luraschi [aut], Kevin Ushey [aut], Aron Atkins [aut], Hadley Wickham [aut], Joe Cheng [aut], Winston Chang [aut], Jeff Allen [ctb], Roy Storey [ctb], Rob Hyndman [ctb], Ruben Arslan [ctb], RStudio, Inc. [cph], jQuery Foundation [cph] (jQuery library), jQuery contributors [ctb, cph] (jQuery library; authors listed in inst/rmd/h/jquery-AUTHORS.txt), jQuery UI contributors [ctb, cph] (jQuery UI library; authors listed in inst/rmd/h/jqueryui-AUTHORS.txt), Mark Otto [ctb] (Bootstrap library), Jacob Thornton [ctb] (Bootstrap library), Bootstrap contributors [ctb] (Bootstrap library), Twitter, Inc [cph] (Bootstrap library), Alexander Farkas [ctb, cph] (html5shiv library), Scott Jehl [ctb, cph] (Respond.js library), Ivan Sagalaev [ctb, cph] (highlight.js library), Greg Franko [ctb, cph] (tocify library), John MacFarlane [ctb, cph] (Pandoc templates), Google, Inc. [ctb, cph] (ioslides library), Dave Raggett [ctb] (slidy library), W3C [cph] (slidy library), Dave Gandy [ctb, cph] (Font-Awesome), Ben Sperry [ctb] (Ionicons), Drifty [cph] (Ionicons), Aidan Lister [ctb, cph] (jQuery StickyTabs) http://rmarkdown.rstudio.com GPL-3 1.8
knitr Yihui Xie [aut, cre], Adam Vogt [ctb], Alastair Andrew [ctb], Alex Zvoleff [ctb], Andre Simon [ctb] (the CSS files under inst/themes/ were derived from the Highlight package http://www.andre-simon.de), Aron Atkins [ctb], Aaron Wolen [ctb], Ashley Manton [ctb], Ben Baumer [ctb], Brian Diggs [ctb], Cassio Pereira [ctb], David Robinson [ctb], Donald Arseneau [ctb, cph] (the framed package at inst/misc/framed.sty), Doug Hemken [ctb], Duncan Murdoch [ctb], Fabian Hirschmann [ctb], Fitch Simeon [ctb], Forest Fang [ctb], Frank E Harrell Jr [ctb] (the Sweavel package at inst/misc/Sweavel.sty), Garrick Aden-Buie [ctb], Gregoire Detrez [ctb], Hadley Wickham [ctb], Heewon Jeon [ctb], Henrik Bengtsson [ctb], Hiroaki Yutani [ctb], Ian Lyttle [ctb], Hodges Daniel [ctb], Jake Burkhead [ctb], James Manton [ctb], Jared Lander [ctb], Jason Punyon [ctb], Javier Luraschi [ctb], Jeff Arnold [ctb], Jeremy Ashkenas [ctb, cph] (the CSS file at inst/misc/docco-classic.css), Jeremy Stephens [ctb], Jim Hester [ctb], Joe Cheng [ctb], Johannes Ranke [ctb], John Honaker [ctb], John Muschelli [ctb], Jonathan Keane [ctb], JJ Allaire [ctb], Johan Toloe [ctb], Joseph Larmarange [ctb], Julien Barnier [ctb], Kaiyin Zhong [ctb], Kamil Slowikowski [ctb], Karl Forner [ctb], Kevin K. Smith [ctb], Kirill Mueller [ctb], Kohske Takahashi [ctb], Michael Friendly [ctb], Michal Bojanowski [ctb], Michel Kuhlmann [ctb], Nacho Caballero [ctb], Nick Salkowski [ctb], Noam Ross [ctb], Qiang Li [ctb], Ramnath Vaidyanathan [ctb], Richard Cotton [ctb], Robert Krzyzanowski [ctb], Romain Francois [ctb], Scott Kostyshak [ctb], Sebastian Meyer [ctb], Sietse Brouwer [ctb], Simon de Bernard [ctb], Sylvain Rousseau [ctb], Taiyun Wei [ctb], Thibaut Assus [ctb], Thibaut Lamadon [ctb], Thomas Leeper [ctb], Tom Torsney-Weir [ctb], Trevor Davis [ctb], Viktoras Veitas [ctb], Weicheng Zhu [ctb], Wush Wu [ctb], Zachary Foster [ctb] https://yihui.name/knitr/ GPL 1.17
svglite Hadley Wickham [aut], Lionel Henry [aut, cre], T Jake Luciani [aut], Matthieu Decorde [aut], Vaudor Lise [aut], Tony Plate [ctb] (Early line dashing code), David Gohel [ctb] (Line dashing code and raster code), Yixuan Qiu [ctb] (Improved styles; polypath implementation), Håkon Malmedal [ctb] (Opacity code), RStudio [cph] https://github.com/r-lib/svglite GPL (>= 2) 1.2.1
scales Hadley Wickham [aut, cre], RStudio [cph] https://github.com/hadley/scales MIT + file LICENSE 0.5.0
fastcluster Daniel Müllner [aut, cph, cre] http://danifold.net/fastcluster.html FreeBSD ; GPL-2 ; file LICENSE 1.1.24
gplots Gregory R. Warnes, Ben Bolker, Lodewijk Bonebakker, Robert Gentleman, Wolfgang Huber Andy Liaw, Thomas Lumley, Martin Maechler, Arni Magnusson, Steffen Moeller, Marc Schwartz, Bill Venables GPL-2 3.0.1
ctc Antoine Lucas antoinelucas@gmail.com, Laurent Gautier laurent@cbs.dtu.dk http://antoinelucas.free.fr/ctc GPL-2 1.52.0
amap Antoine Lucas http://mulcyber.toulouse.inra.fr/projects/amap/ GPL 0.8-14
dendextend Tal Galili [aut, cre, cph] (https://www.r-statistics.com), Gavin Simpson [ctb], Gregory Jefferis [aut, ctb] (imported code from his dendroextras package), Marco Gallotta [ctb] (a.k.a: marcog), Johan Renaudie [ctb] (https://github.com/plannapus), The R Core Team [ctb] (Thanks for the Infastructure, and code in the examples), Kurt Hornik [ctb], Uwe Ligges [ctb], Andrej-Nikolai Spiess [ctb], Steve Horvath [ctb], Peter Langfelder [ctb], skullkey [ctb], Mark Van Der Loo [ctb] (https://github.com/markvanderloo d3dendrogram), Andrie de Vries [ctb] (ggdendro author), Zuguang Gu [ctb] (circlize author), Cath [ctb] (https://github.com/CathG), John Ma [ctb] (https://github.com/JohnMCMa), Yoav Benjamini [ths] https://github.com/talgalili/dendextend/, https://cran.r-project.org/package=dendextend, https://www.r-statistics.com/tag/dendextend/, https://academic.oup.com/bioinformatics/article/31/22/3718/240978/dendextend-an-R-package-for-visualizing-adjusting GPL-2 ; GPL-3 1.6.0
VennDiagram Hanbo Chen GPL-2 1.6.18
futile.logger Brian Lee Yung Rowe LGPL-3 1.4.3
plot3D Karline Soetaert karline.soetaert@nioz.nl GPL (>= 3.0) 1.1.1
scatterplot3d Uwe Ligges ligges@statistik.tu-dortmund.de, Martin Maechler, Sarah Schnackenberg GPL-2 0.3-40
ggplot2 Hadley Wickham [aut, cre], Winston Chang [aut], RStudio [cph] http://ggplot2.tidyverse.org, https://github.com/tidyverse/ggplot2 GPL-2 ; file LICENSE 2.2.1
RColorBrewer Erich Neuwirth [aut, cre] Apache License 2.0 1.1-2
openxlsx Alexander Walker [aut, cre], Luca Braglia [ctb] https://github.com/awalker89/openxlsx GPL-3 4.0.17
GO.db Marc Carlson Artistic-2.0 3.5.0
GenomicFeatures M. Carlson, H. Pagès, P. Aboyoun, S. Falcon, M. Morgan, D. Sarkar, M. Lawrence Artistic-2.0 1.30.0
AnnotationDbi Hervé Pagès, Marc Carlson, Seth Falcon, Nianhua Li Artistic-2.0 1.40.0
AnnotationHub Martin Morgan [cre], Marc Carlson [ctb], Dan Tenenbaum [ctb], Sonali Arora [ctb] Artistic-2.0 2.10.1
biomaRt Steffen Durinck [aut], Wolfgang Huber [aut], Sean Davis [ctb], Francois Pepin [ctb], Vince S Buffalo [ctb], Mike Smith [ctb, cre] Artistic-2.0 2.34.1
rtracklayer Michael Lawrence, Vince Carey, Robert Gentleman Artistic-2.0 + file LICENSE 1.38.2
Cairo Simon Urbanek Simon.Urbanek@r-project.org, Jeffrey Horner jeff.horner@vanderbilt.edu http://www.rforge.net/Cairo/ GPL-2 1.5-9
reshape2 Hadley Wickham h.wickham@gmail.com https://github.com/hadley/reshape MIT + file LICENSE 1.4.3
R6 Winston Chang [aut, cre] https://github.com/wch/R6/ MIT + file LICENSE 2.2.2
DESeq2 Michael Love, Simon Anders, Wolfgang Huber https://github.com/mikelove/DESeq2 LGPL (>= 3) 1.18.1
SummarizedExperiment Martin Morgan, Valerie Obenchain, Jim Hester, Hervé Pagès Artistic-2.0 1.8.1
DelayedArray Hervé Pagès Artistic-2.0 0.4.1
matrixStats Henrik Bengtsson [aut, cre, cph], Hector Corrada Bravo [ctb], Robert Gentleman [ctb], Ola Hossjer [ctb], Harris Jaffee [ctb], Dongcan Jiang [ctb], Peter Langfelder [ctb] https://github.com/HenrikBengtsson/matrixStats Artistic-2.0 0.52.2
Biobase R. Gentleman, V. Carey, M. Morgan, S. Falcon Artistic-2.0 2.38.0
GenomicRanges P. Aboyoun, H. Pagès, and M. Lawrence Artistic-2.0 1.30.0
GenomeInfoDb Sonali Arora, Martin Morgan, Marc Carlson, H. Pagès Artistic-2.0 1.14.0
IRanges H. Pagès, P. Aboyoun and M. Lawrence Artistic-2.0 2.12.0
S4Vectors H. Pagès, M. Lawrence and P. Aboyoun Artistic-2.0 0.16.0
BiocGenerics The Bioconductor Dev Team Artistic-2.0 0.24.0
colourpicker Dean Attali [aut, cre], David Griswold [ctb] https://github.com/daattali/colourpicker MIT + file LICENSE 1.0
shinyjs Dean Attali [aut, cre] http://deanattali.com/shinyjs AGPL-3 0.9.1
shinyBS Eric Bailey https://ebailey78.github.io/shinyBS GPL-3 0.61
DT Yihui Xie [aut, cre], Joe Cheng [ctb], JJ Allaire [ctb], jQuery contributors [ctb, cph] (jQuery in htmlwidgets/lib), SpryMedia Limited [ctb, cph] (DataTables in htmlwidgets/lib), Brian Reavis [ctb, cph] (selectize.js in htmlwidgets/lib), Leon Gersen [ctb, cph] (noUiSlider in htmlwidgets/lib), Bartek Szopka [ctb, cph] (jquery.highlight.js in htmlwidgets/lib), RStudio Inc [cph] http://rstudio.github.io/DT GPL-3 ; file LICENSE 0.2
htmltools RStudio, Inc. https://github.com/rstudio/htmltools GPL (>= 2) 0.3.6
markdown JJ Allaire [aut], Jeffrey Horner [aut], Henrik Bengtsson [ctb], Jim Hester [ctb], Yixuan Qiu [ctb], Kohske Takahashi [ctb], Adam November [ctb], Nacho Caballero [ctb], Jeroen Ooms [ctb], Thomas Leeper [ctb], Joe Cheng [ctb], Andrzej Oles [ctb], Vicent Marti [aut, cph] (The Sundown library), Natacha Porte [aut, cph] (The Sundown library), RStudio [cph], Yihui Xie [cre, ctb] https://github.com/rstudio/markdown GPL-2 0.8
shiny Winston Chang [aut, cre], Joe Cheng [aut], JJ Allaire [aut], Yihui Xie [aut], Jonathan McPherson [aut], RStudio [cph], jQuery Foundation [cph] (jQuery library and jQuery UI library), jQuery contributors [ctb, cph] (jQuery library; authors listed in inst/www/shared/jquery-AUTHORS.txt), jQuery UI contributors [ctb, cph] (jQuery UI library; authors listed in inst/www/shared/jqueryui/AUTHORS.txt), Mark Otto [ctb] (Bootstrap library), Jacob Thornton [ctb] (Bootstrap library), Bootstrap contributors [ctb] (Bootstrap library), Twitter, Inc [cph] (Bootstrap library), Alexander Farkas [ctb, cph] (html5shiv library), Scott Jehl [ctb, cph] (Respond.js library), Stefan Petre [ctb, cph] (Bootstrap-datepicker library), Andrew Rowls [ctb, cph] (Bootstrap-datepicker library), Dave Gandy [ctb, cph] (Font-Awesome font), Brian Reavis [ctb, cph] (selectize.js library), Kristopher Michael Kowal [ctb, cph] (es5-shim library), es5-shim contributors [ctb, cph] (es5-shim library), Denis Ineshin [ctb, cph] (ion.rangeSlider library), Sami Samhuri [ctb, cph] (Javascript strftime library), SpryMedia Limited [ctb, cph] (DataTables library), John Fraser [ctb, cph] (showdown.js library), John Gruber [ctb, cph] (showdown.js library), Ivan Sagalaev [ctb, cph] (highlight.js library), R Core Team [ctb, cph] (tar implementation from R) http://shiny.rstudio.com GPL-3 ; file LICENSE 1.0.5

Required packages

Updating this README file

This README file is autogenerated using RMarkdown. Please don’t forget to run PCAGO once before rebuilding this README.

Note: You cannot use RStudio as RStudio’s RMarkdown builder runs in a separate environment!

# Run PCAGO once
shiny::runApp()
# Cancel with Ctrl + C
# Build the README file
rmarkdown::render("README.Rmd")

Credits

Uses code from https://github.com/daattali/advanced-shiny by Dean Attali. Licensed under the MIT license.