Last data update: 2014.03.03

R: Run a shiny app, capturing results to the R session
.runAppR Documentation

Run a shiny app, capturing results to the R session

Description

This utility function launches a shiny visualization application, either in the RStudio viewer pane (if run under RStudio) or in the browser.

Usage

.runApp(app, ...)

Arguments

app

The shiny application definition, see ?shiny::runApp.

...

additional arguments passed to shiny::runApp().

Value

The return value of shiny::runApp.

Author(s)

Martin Morgan

Examples


if (interactive()) {
    require(shiny)

    app <- list(
        ui = fluidPage(
          title="Who Am I?",
          sidebarLayout(
              position="left",
              sidebarPanel(
                  h1("Your name"),
                  textInput("your_name", "Your name?", "Anonymous"),
                  actionButton("done", "Done")),
              mainPanel(
                  "Hi", textOutput("your_name", inline=TRUE))
              )),

        server = function(input, output) {
            output$your_name <- renderText(input$your_name)
            observe({
                if (input$done > 0)
                    isolate(stopApp(returnValue = input$your_name))
            })

        })

    .runApp(app)
}

Results


R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> library(interactiveDisplayBase)
Loading required package: BiocGenerics
Loading required package: parallel

Attaching package: 'BiocGenerics'

The following objects are masked from 'package:parallel':

    clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
    clusterExport, clusterMap, parApply, parCapply, parLapply,
    parLapplyLB, parRapply, parSapply, parSapplyLB

The following objects are masked from 'package:stats':

    IQR, mad, xtabs

The following objects are masked from 'package:base':

    Filter, Find, Map, Position, Reduce, anyDuplicated, append,
    as.data.frame, cbind, colnames, do.call, duplicated, eval, evalq,
    get, grep, grepl, intersect, is.unsorted, lapply, lengths, mapply,
    match, mget, order, paste, pmax, pmax.int, pmin, pmin.int, rank,
    rbind, rownames, sapply, setdiff, sort, table, tapply, union,
    unique, unsplit

> png(filename="/home/ddbj/snapshot/RGM3/R_BC/result/interactiveDisplayBase/dot_runApp.Rd_%03d_medium.png", width=480, height=480)
> ### Name: .runApp
> ### Title: Run a shiny app, capturing results to the R session
> ### Aliases: .runApp
> ### Keywords: manip
> 
> ### ** Examples
> 
> 
> #if (interactive()) {
>     require(shiny)
Loading required package: shiny
> 
>     app <- list(
+         ui = fluidPage(
+           title="Who Am I?",
+           sidebarLayout(
+               position="left",
+               sidebarPanel(
+                   h1("Your name"),
+                   textInput("your_name", "Your name?", "Anonymous"),
+                   actionButton("done", "Done")),
+               mainPanel(
+                   "Hi", textOutput("your_name", inline=TRUE))
+               )),
+ 
+         server = function(input, output) {
+             output$your_name <- renderText(input$your_name)
+             observe({
+                 if (input$done > 0)
+                     isolate(stopApp(returnValue = input$your_name))
+             })
+ 
+         })
> 
>     .runApp(app)

Listening on http://127.0.0.1:5674