This teal module produces a grid style Forest plot for time-to-event data with ADaM structure
Usage
tm_g_forest_tte(
label,
dataname,
parentname = ifelse(inherits(arm_var, "data_extract_spec"),
teal.transform::datanames_input(arm_var), "ADSL"),
arm_var,
arm_ref_comp = NULL,
subgroup_var,
paramcd,
strata_var,
aval_var = teal.transform::choices_selected(teal.transform::variable_choices(dataname,
"AVAL"), "AVAL", fixed = TRUE),
cnsr_var = teal.transform::choices_selected(teal.transform::variable_choices(dataname,
"CNSR"), "CNSR", fixed = TRUE),
conf_level = teal.transform::choices_selected(c(0.95, 0.9, 0.8), 0.95, keep_order =
TRUE),
time_unit_var =
teal.transform::choices_selected(teal.transform::variable_choices(dataname, "AVALU"),
"AVALU", fixed = TRUE),
fixed_symbol_size = TRUE,
plot_height = c(700L, 200L, 2000L),
plot_width = c(980L, 500L, 2000L),
pre_output = NULL,
post_output = NULL,
ggplot2_args = teal.widgets::ggplot2_args()
)
Arguments
- label
(
character
)
menu item label of the module in the teal app.- dataname
(
character
)
analysis data used in teal module.- parentname
(
character
)
parent analysis data used in teal module, usually this refers toADSL
.- arm_var
(
choices_selected
ordata_extract_spec
)
object with all available choices and preselected option for variable names that can be used asarm_var
. It defines the grouping variable(s) in the results table. If there are two elements selected forarm_var
, second variable will be nested under the first variable.- arm_ref_comp
optional, (
list
)
If specified it must be a named list with each element corresponding to an arm variable inADSL
and the element must be another list (possibly with delayedteal.transform::variable_choices()
or delayedteal.transform::value_choices()
with the elements namedref
andcomp
that the defined the default reference and comparison arms when the arm variable is changed.- subgroup_var
(
choices_selected
ordata_extract_spec
)
object with all available choices and preselected option for variable names that can be used as the default subgroups.- paramcd
(
choices_selected
ordata_extract_spec
)
variable value designating the studied parameter.- strata_var
(
choices_selected
ordata_extract_spec
)
names of the variables for stratified analysis.- aval_var
(
choices_selected
ordata_extract_spec
)
object with all available choices and preselected option for the analysis variable.- cnsr_var
(
choices_selected
ordata_extract_spec
)
object with all available choices and preselected option for the censoring variable.- conf_level
(
choices_selected
)
object with all available choices and preselected option for the confidence level, each within range of (0, 1).- time_unit_var
(
choices_selected
ordata_extract_spec
)
object with all available choices and preselected option for the time unit variable.- fixed_symbol_size
(
logical
)
When (TRUE
), the same symbol size is used for plotting each estimate. Otherwise, the symbol size will be proportional to the sample size in each each subgroup.- plot_height
optional, (
numeric
)
a vector of length three withc(value, min, max)
. Specifies the height of the main plot and renders a slider on the plot to interactively adjust the plot height.- plot_width
optional, (
numeric
)
a vector of length three withc(value, min, max)
. Specifies the width of the main plot and renders a slider on the plot to interactively adjust the plot width.- pre_output
optional, (
shiny.tag
)
with text placed before the output to put the output into context. For example a title.- post_output
optional, (
shiny.tag
)
with text placed after the output to put the output into context. For example theshiny::helpText()
elements are useful.- ggplot2_args
-
optional, (
ggplot2_args
)
object created byteal.widgets::ggplot2_args()
with settings for the module plot. For this module, this argument will only acceptggplot2_args
object withlabs
list of following child elements:title
,caption
. No other elements would be taken into account. The argument is merged with optionteal.ggplot2_args
and with default module arguments (hard coded in the module body).For more details, see the vignette:
vignette("custom-ggplot2-arguments", package = "teal.widgets")
.
Examples
library(nestcolor)
adsl <- tmc_ex_adsl
adtte <- tmc_ex_adtte
adsl$RACE <- droplevels(adsl$RACE) %>% formatters::with_label("Race")
arm_ref_comp <- list(
ARM = list(
ref = "B: Placebo",
comp = c("A: Drug X", "C: Combination")
),
ARMCD = list(
ref = "ARM B",
comp = c("ARM A", "ARM C")
)
)
app <- init(
data = cdisc_data(
cdisc_dataset("ADSL", adsl),
cdisc_dataset("ADTTE", adtte)
),
modules = modules(
tm_g_forest_tte(
label = "Forest Survival",
dataname = "ADTTE",
arm_var = choices_selected(
variable_choices(adsl, c("ARM", "ARMCD")),
"ARMCD"
),
arm_ref_comp = arm_ref_comp,
paramcd = choices_selected(
value_choices(adtte, "PARAMCD", "PARAM"),
"OS"
),
subgroup_var = choices_selected(
variable_choices(adsl, names(adsl)),
c("BMRKR2", "SEX")
),
strata_var = choices_selected(
variable_choices(adsl, c("STRATA1", "STRATA2")),
"STRATA2"
),
plot_height = c(600, 200, 2000)
)
)
)
#> [INFO] 2023-05-31 23:41:29.6577 pid:3043 token:[] teal.modules.clinical Initializing tm_g_forest_tte
if (interactive()) {
shinyApp(app$ui, app$server)
}