End-users: This is the most important function for you to start a
teal app that is composed of teal modules.
Usage
init(
data,
modules,
filter = teal_slices(),
title = lifecycle::deprecated(),
header = lifecycle::deprecated(),
footer = lifecycle::deprecated(),
id = lifecycle::deprecated()
)Arguments
- data
(
teal_dataorteal_data_module) For constructing the data object, refer toteal.data::teal_data()andteal_data_module().- modules
(
listorteal_modulesorteal_module) Nested list ofteal_modulesorteal_moduleobjects or a singleteal_modulesorteal_moduleobject. These are the specific output modules which will be displayed in thetealapplication. Seemodules()andmodule()for more details.- filter
(
teal_slices) Optionally, specifies the initial filter usingteal_slices().- title
(
shiny.tagorcharacter(1))Optionally, the browser window title. Defaults to a title "teal app" with the icon of NEST. Can be created using the
build_app_title()or by passing a validshiny.tagwhich is a head tag with title and link tag. This parameter is no longer supported. Usemodify_title()on the teal app object instead.- header
(
shiny.tagorcharacter(1))Optionally, the header of the app. This parameter is no longer supported. Use
modify_header()on the teal app object instead.(
shiny.tagorcharacter(1))Optionally, the footer of the app. This parameter is no longer supported. Use
modify_footer()on the teal app object instead.- id
(
character) Optionally, a string specifying theshinymodule id in cases it is used as ashinymodule rather than a standaloneshinyapp. This parameter is no longer supported. Useui_teal()andsrv_teal()instead.
Examples
app <- init(
data = within(
teal_data(),
{
new_iris <- transform(iris, id = seq_len(nrow(iris)))
new_mtcars <- transform(mtcars, id = seq_len(nrow(mtcars)))
}
),
modules = modules(
module(
label = "data source",
server = function(input, output, session, data) {},
ui = function(id, ...) tags$div(p("information about data source")),
datanames = "all"
),
example_module(label = "example teal module"),
module(
"Iris Sepal.Length histogram",
server = function(input, output, session, data) {
output$hist <- renderPlot(
hist(data()[["new_iris"]]$Sepal.Length)
)
},
ui = function(id, ...) {
ns <- NS(id)
plotOutput(ns("hist"))
},
datanames = "new_iris"
)
),
filter = teal_slices(
teal_slice(dataname = "new_iris", varname = "Species"),
teal_slice(dataname = "new_iris", varname = "Sepal.Length"),
teal_slice(dataname = "new_mtcars", varname = "cyl"),
exclude_varnames = list(new_iris = c("Sepal.Width", "Petal.Width")),
module_specific = TRUE,
mapping = list(
`example teal module` = "new_iris Species",
`Iris Sepal.Length histogram` = "new_iris Species",
global_filters = "new_mtcars cyl"
)
)
)
if (interactive()) {
shinyApp(app$ui, app$server)
}