Create a Trelliscope Display

trelliscope(
  x,
  name,
  group = "common",
  panel_col = NULL,
  desc = "",
  md_desc = "",
  path,
  height = 500,
  width = 500,
  auto_cog = FALSE,
  state = NULL,
  nrow = 1,
  ncol = 1,
  jsonp = TRUE,
  split_sig = NULL,
  self_contained = FALSE,
  thumb = FALSE
)

Arguments

x

an object to create at trelliscope display for

name

name of the display

group

group that the display belongs to

panel_col

optional string specifying the column to use for panels (if there are multiple plot columns in x)

desc

optional text description of the display

md_desc

optional string of markdown that will be shown in the viewer for additional context about the display

path

the base directory of the trelliscope application

height

height in pixels of each panel

width

width in pixels of each panel

auto_cog

should auto cogs be computed (if possible)?

state

the initial state the display will open in

nrow

the number of rows of panels to display by default

ncol

the number of columns of panels to display by default

jsonp

should json for display object be jsonp (TRUE) or json (FALSE)?

split_sig

optional string that specifies the "signature" of the data splitting. If not specified, this is calculated as the md5 hash of the sorted unique facet variables. This is used to identify "related displays" - different displays that are based on the same faceting scheme. This parameter should only be specified manually if a display's faceting is mostly similar to another display's.

self_contained

should the Trelliscope display be a self-contained html document? (see note)

thumb

should a thumbnail be created?

Note

Note that self_contained is severely limiting and should only be used in cases where you would either like your display to show up in the RStudio viewer pane, in an interactive R Markdown Notebook, or in a self-contained R Markdown html document.

Examples

if (FALSE) { library(dplyr) library(tidyr) library(purrr) library(plotly) library(ggplot2) # tidyverse + plotly d <- mpg %>% nest(data = !one_of(c("manufacturer", "class"))) %>% mutate( mean_city_mpg = map_dbl(data, ~ mean(.$cty)), panel = map_plot(data, function(x) { plot_ly(data = x, x = ~cty, y = ~hwy, type = "scatter", mode = "markers") }) ) d %>% trelliscope(name = "city_vs_highway_mpg") # set default layout d %>% trelliscope(name = "city_vs_highway_mpg", nrow = 2, ncol = 3) # set the output path for where files will be stored my_displays <- tempfile() d %>% trelliscope(name = "city_vs_highway_mpg", path = my_displays) # multiple displays can be added to the same path and all will be available in the viewer d %>% trelliscope(name = "city_vs_highway_mpg2", path = my_displays) # ordering the data frame will set default sort order of the display d %>% arrange(-mean_city_mpg) %>% trelliscope(name = "city_vs_highway_mpg") # tidyverse + ggplot2 mpg %>% nest(data = !one_of(c("manufacturer", "class"))) %>% mutate( panel = map_plot(data, ~ qplot(cty, hwy, data = .) + xlab("cty") + ylab("hwy") + xlim(7, 37) + ylim(9, 47) + theme_bw())) %>% trelliscope(name = "tidy_gg") # computing additional cognostics mpg_cog <- mpg %>% nest(data = !one_of(c("manufacturer", "class"))) %>% mutate( cogs = map_cog(data, ~ tibble( mean_city_mpg = mean(.$cty), mean_hwy_mpg = mean(.$hwy), most_common_drv = tail(names(table(.$drv)), 1) )) ) # computing additional cognostics explicitly using cog() # so we can specify descriptions, etc. mpg_cog2 <- mpg %>% nest(data = !one_of(c("manufacturer", "class"))) %>% mutate( cogs = map_cog(data, ~ tibble( mean_city_mpg = cog(mean(.$cty), desc = "Mean city mpg"), mean_hwy_mpg = cog(mean(.$hwy), desc = "Mean highway mpg"), most_common_drv = cog(tail(names(table(.$drv)), 1), desc = "Most common drive type") )), panel = map_plot(data, function(x) { plot_ly(data = x, x = ~cty, y = ~hwy, type = "scatter", mode = "markers") %>% layout( xaxis = list(range = c(9, 47)), yaxis = list(range = c(7, 37))) }) ) mpg_cog2 %>% trelliscope(name = "city_vs_highway_mpg", nrow = 1, ncol = 2) }