| loon.shiny | R Documentation | 
shiny App Based on Interactive Loon WidgetsInteractive loon widgets displayed in a shiny app
loon.shiny(
  widgets,
  selectBy = c("byDefault", "brushing", "sweeping"),
  showWorldView = TRUE,
  plotRegionWidth = "500px",
  plotRegionHeight = "500px",
  plotRegionBackground = "gray92",
  layoutMatrix = NULL,
  nrow = NULL,
  ncol = NULL,
  widths = NULL,
  heights = NULL,
  displayedPanel = "",
  colorList = loon::l_getColorList(),
  inspectorLocation = c("auto", "auto", "60px", "20px"),
  inspectorWidth = "350px",
  inspectorHeight = "auto",
  toolboxWidth = "300px",
  toolboxLocation = c(10, -20),
  options = list(),
  ...
)
| widgets | A  | 
| selectBy | The way to brush, can be 'brushing' (keep the brush whenever the plot is updated),
'sweeping' (clear the brush whenever the plot is updated) or 'byDefault' (determined by  | 
| showWorldView | Logical; whether to show the world view. | 
| plotRegionWidth | Plot region width. Must be a valid  | 
| plotRegionHeight | Plot region height. | 
| plotRegionBackground | Plot region background color | 
| layoutMatrix | Optional layout matrix to place  | 
| nrow | Number of rows, see  | 
| ncol | Number of columns, see  | 
| widths | A unit vector giving the width of each plot. | 
| heights | A unit vector giving the height of each plot. | 
| displayedPanel | A string vector. The default is an empty string  | 
| colorList | A list of colors displayed on modify panel. | 
| inspectorLocation | A length four vector representing the distance between the
 | 
| inspectorWidth | Width of the inspector panel. | 
| inspectorHeight | Height of the inspector panel. | 
| toolboxWidth | The width of a toolbox | 
| toolboxLocation | The position of a toolbox (if any) which is
a length two numerical vector ("pixel") representing the location ( | 
| options | 
 | 
| ... | Named arguments to modify shiny app. | 
Useful hints for a loon.shiny app
The inspector can be switched either by “toggling tabpanel” in the bar menu or
the last mouse gesture input (<double-click>) on the plot region
To downlight the selected elements, one has to double click on the plot region
In loon, holding down the <shift> key while pressing the left button keeps the current selection states.
In loon.shiny app, <shift> key is replaced by a 'sticky' radiobutton. If the 'sticky' mode is on,
while sweeping, current selection states remain; else new selection will eliminate the previous selection states.
Useful hints for a loon.shiny markdown file
Based on our experience, setting 'out.width' or 'out.height' (try "10px") in the chunk could give a better layout
To modify the app size, set 'options = list(height = **, width = **)' in loon.shiny()
A shiny.appobj object that represents the loon.shiny app.
Printing the object or passing it to runApp will run the app.
## Only run this example in interactive R sessions
if(interactive()) {
  ############## Querying ##############
  lp <- with(mpg,
             l_plot(displ, hwy,
                    showItemLabels = TRUE,
                    itemLabel = with(mpg,
                      paste0("model:", manufacturer, " ",
                              model, "\n",
                             "year:", year, "\n",
                             "drive way:", drv, "\n",
                             "fuel type:", fl)),
                    color = "black"))
  loon.shiny(lp)
  ############### Link multiple plots ###############
  p1 <- l_plot(iris,
               linkingGroup = 'iris',
               showLabels = FALSE)
  p2 <- l_hist(iris$Sepal.Length,
               linkingGroup = 'iris',
               showLabels = FALSE,
               showStackedColors = TRUE)
  p3 <- l_hist(iris$Sepal.Width, linkingGroup = 'iris',
               color = iris$Species, sync = 'push',
               showLabels = FALSE, swapAxes = TRUE,
               showStackedColors = TRUE)
  loon.shiny(list(p1, p2, p3),
             layoutMatrix = matrix(c(2,NA,1,3),
             nrow = 2, byrow = TRUE))
if (requireNamespace('loon.ggplot', quietly = TRUE)) {
    # ggplot -> loon -> shiny
    p <- ggplot(mpg, aes(displ, hwy)) +
      geom_point(data = transform(mpg, class = NULL), colour = 'grey85') +
      geom_point() +
      facet_wrap(~class)
    g <- loon.ggplot(p,
                     activeGeomLayers = 2,
                     itemLabel = mpg$model) # active the second layer
    # with facets
    loon.shiny(g, toolboxWidth = "100px")
}
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.