Skip to content

embl-cba/shinyHTM

Repository files navigation

shinyHTM

How to cite

  • Hugo Botelho, Christian Tischer, Aliaksandr Halavatyi, Margarida Amaral, Rainer Pepperkok. shinyHTM - Interactive High-Throughput Microscopy Analysis. Zenodo. http://doi.org/10.5281/zenodo.2594651

Exploring High Throughput Microscopy data with Shiny, Plotly and Fiji

One of the biggest challenges in High Throughput Microscopy is the visualization, inspection and quality control of the large datasets that are usually produced. Nevertheless, these tasks are crucial for assessing the quality of the data and ensure that biologically meaningful quantitative data is extracted.

What is shinyHTM?

An interactive web-based tool which uses the R shiny package to inspect, plot and visualize high throughput microscopy data and images.

The goal: to be an experimentation platform for a possible improvement of Christian Tischer's HTM Explorer. Namely by implementing:

  • Expand plotting capabilities
  • Enhanced interactivity
  • More user friendliness
  • Better interaction with Fiji
  • ...

This is a personal project of mine and pretty much a work in progress.

The app runs in a browser window like so:

snapshot

Main features

  • Configuration of customized multiwell plates
  • Interactive scatter plots, jitter plots and heatmaps
  • Click any data point to open the raw image in Fiji
  • Hover mouse over plot to read the data
  • Show all data points or only individual plates
  • Contains a sample dataset
  • Data normalization
  • Treatment summary

Requirements

  • R or RStudio
  • A "tidy" *csv file (e.g. a CellProfiler output file)
  • Optional: microscopy images and Fiji

Running shinyHTM [Windows]

  • Make sure your computer is online
  • Install the following packages (only required on the first time you run shinyHTM)
install.packages(c("shiny","shinyalert","plotly","shinyjs","xlsx", "tcltk", "RJSONIO", "rjson", "DT"))
  • Type the following commands:
library(shiny)
runGitHub("shinyHTM", "embl-cba")
  • This will run the latest version of shinyHTM
  • Sample datasets are provided here.

Running shinyHTM [MacOS]

shinyHTM requires an updated X11 window manager on MacOS.

  • Make sure your computer is online
  • When running shinyHTM for the first time (or after a system update) download and install XQuartz from here.
  • Run XQuartz
  • Run R by typing in the command r
  • Install the following packages (only required on the first time you run shinyHTM)
install.packages(c("shiny","shinyalert","plotly","shinyjs","xlsx", "tcltk", "RJSONIO", "rjson", "DT"))
  • Type the following commands:
library(shiny)
runGitHub("shinyHTM", "embl-cba")
  • This will run the latest version of shinyHTM
  • Sample datasets are provided here.

Testing

Tests for some shinyHTM features are available for development purposes.
Tests are available in the ./tests folder, require the testthat package and do not require the shiny app to be running.
To run all tests do the following:

# install.packages("testthat")
setwd("c:/yourfolderhere/shinyhtm/tests")       # adjust
source("testthat.R")