A Shiny App for comparison of samples
PlotsOfData visualizes data and statistics to enable the comparison of (experimental) conditions. The philosophy of the approach is that plotting the raw data (instead of a summary) improves transparency and interpretation (see also this blog). To further facilitate the comparison, summary statistics (mean, median, boxplot) and inferential statistics (confidence intervals) can be added. The user has full control over the visibility of the raw data and statistics by adjustment of the transparency (alpha). Details are described in a publication
Bootstrapping is used to calculate the (asymmetric) 95% CI of medians. More information in this blog
The data can be supplied in spreadsheet/long format (e.g. by copy-pasting from excel) or in tidy format. For more information on the conversion of spreadsheet data to tidy data see this blog.
The plot can be saved as a PDF file, which can be opened and edited with Adobe Illustrator to allow for fine adjustments of the lay-out.
Running the App
Currently, the app can only run from R/Rstudio.
Give it a quick try by running it directly from Github. In the command line (in R or Rstudio) type shiny::runGitHub('PlotsOfData', 'JoachimGoedhart')
Or download it to use it offline:
-download the app.R and csv files with example data.
-Run RStudio and load app.R
-Select 'Run All' (shortcut is command-option-R on a Mac) or click on "Run App" (upper right button on the window)
This should launch a web browser with the Shiny app. Note that the app depends on several R packages that need to be installed (shiny, ggplot2, dplyr, tidyr, readr, magrittr, ggbeeswarm, readxl, RCurl) Run this command in R/Rstudio to download and install all the packages at once: -install.packages("shiny", "ggplot2", "dplyr", "tidyr", "readr", "readxl", "magrittr", "DT", "ggbeeswarm", "RCurl")
Videos that highlight several of the features of PlotsOfData are available on YouTube
Some aspects of the app are explained in blogs at The Node
PlotsOfData is inspired on BoxPlotR. See this link for background information on boxplots.
The code for the shiny app is partially derived from ggplotGUI by Gert Stulp
The colorblind safe palettes were developed by Paul Tol.
PlotsOfData is created and maintained by Joachim Goedhart (@joachimgoedhart)and Marten Postma