Skip to content
🌈 Interactive analysis of metagenomics data
R CSS Other
Branch: master
Clone or download
Latest commit 81d784d Sep 5, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
R Update manual and screenshots Sep 5, 2019
inst Update docker README Apr 18, 2019
man Update documentation Apr 18, 2019
vignettes Update manual and screenshots Sep 5, 2019
.Rbuildignore Exclude .travis.yml Apr 18, 2019
.gitignore Sort saample set names Oct 4, 2017
.travis.yml Update .travis.yml Jun 27, 2017
DESCRIPTION Update to v1.0 Sep 5, 2019
NAMESPACE Update documentation Apr 18, 2019 Update manual and screenshots Sep 5, 2019
pavian.Rproj Updated docs and added back vignettes Nov 5, 2017

Pavian is a interactive browser application for analyzing and visualization metagenomics classification results from classifiers such as Kraken, Centrifuge and MetaPhlAn. Pavian also provides an alignment viewer for validation of matches to a particular genome.

For more information look at the preprint at . Please cite the preprint if you use Pavian in your research.

You can try out Pavian at

Installation and deployment

Pavian is a R package, and thus requires R to run. Look here for how to install R. On Windows, you probably need to install Rtools. On Ubuntu, install r-base-dev. Once you started R, the following commands will install the package:

if (!require(remotes)) { install.packages("remotes") }

To run Pavian from R, type


Pavian will then be available at in the web browser of you choice.

Alternatively, you can install and test Pavian with the following command:

shiny::runGitHub("fbreitwieser/pavian", subdir = "inst/shinyapp")

To try out Pavian, load the example files directly from the interface.

Installing Rsamtools

The alignment viewer uses Rsamtools. To install this package from Bioconductor, use the following commands

if (!requireNamespace("BiocManager", quietly = TRUE))


Docker image

As an alternative to installing Pavian in R, a Docker image is available at florianbw/pavian. When you run this docker image, Pavian will start automatically on port 80, which you need to make available to the hosting machine. On the shell, you can pull the image and remap the Docker port to port 5000 with the following commands:

docker pull 'florianbw/pavian'
docker run --rm -p 5000:80 florianbw/pavian



Build Status

Supported formats

pavian natively supports the Kraken and MetaPhlAn-style report formats. In extension, you can use Centrifuge results by running centrifuge-kreport on Centrifuge output files, and Kaiju results by running kraken-report on Kaiju output files (see issue #11)

Error: Maximum upload size exceeded The maximum upload size is defined by the option shiny.maxRequestSize. To increase it to 500 MB, for example, type the following before pavian::runApp():


If your BAM file contains the unaligned reads, you can decrease the file size before uploading by getting rid of non-aligned reads using samtools view -F4.


We'd like to thank the creators, contributors and maintainers of several packages without whom Pavian wouldn't exist:

  • Winston Chang, Hadley Wickham, Joe Cheng, JJ Allaire and all other developers at Rstudio and outside who contribute to the amazing set of packages behind shiny and the tidyverse (shiny, shinydashboard, DT, dplyr, plyr, htmltools, htmlwidgets, rmarkdown, knitr, ggplot2, rappdirs)
  • Mike Bostock and all developers behind the amazong D3 visualization library
  • Dean Atali for the shinyjs R package
  • dreamR developers for the shinyWidgets R package
  • Jonathan Owen for rhandsontable widget, based on the handsontable javascript library
  • M. Morgan and the other developers behind Rsamtools, as well as Heng Li and the other developers behind samtools
  • Christopher Garund and the other developers behind networkD3, on which sankeyD3 is based
  • The developers of jstree, on which shinyFileTree is based
You can’t perform that action at this time.