    ## Note: the specification for S3 class "AsIs" in package 'RJSONIO' seems equivalent to one from package 'BiocGenerics': not turning on duplicate class definitions for this class.

# interactiveDisplay

interactiveDisplay

`interactiveDisplay` uses the function `display()` to host a browser based application on the fly using the Shiny package. Currently 4 Bioconductor objects: Granges, GrangesList, ExpressionSet and SummarizedExperiment are supported with tailored methods. In some cases, grid based plots are converted to SVG with the gridSVG package and additional JavaScript is appended for simple mousewheel zoom and panning. Shiny UI elements are available based on the object passed to `display()`. These allow the user to modify how the plot is displayed, and for some objects, modify or subset the data and send it back to the console.

## Methods

draw an SummarizedExperiment object

    data(se)
    display(se)

draw a GRanges object

    data(mmgr)
    display(mmgr)

draw a GRangesList object

    data(mmgrl)
    display(mmgrl)

draw an ExpressionSet object

    data(expr)
    display(expr)

## Additional Functionality

In addition to the main `display()` function, the user can send any grid based plot to the browser as a JS interactive SVG.

    library(ggplot2)
    data(mtcars)
    qp <- qplot(mpg, data = mtcars, geom = "density", fill = factor(cyl), alpha = I(0.4))
    gridsvgjs(qp)

## Acknowledgments

Shiny
Joe Cheng and Winston Chang
http://www.rstudio.com/shiny/

Force Layout
Jeff Allen
https://github.com/trestletech/shiny-sandbox/tree/master/grn

gridSVG
Simon Potter
http://sjp.co.nz/projects/gridsvg/

Zoom/Pan JavaScript libraries
John Krauss
https://github.com/talos/jquery-svgpan
Andrea Leofreddi
https://code.google.com/p/svgpan/

JavaScript Color Chooser
Jan Odvarko
http://jscolor.com/

Data-Driven Documents
Michael Bostock
http://d3js.org/