multiVServer: Shiny app server module for multi-views

View source: R/multiV.R

multiVServerR Documentation

Shiny app server module for multi-views

Description

Assemble various module components into a working one-page application for expression data

Usage

multiVServer(
  id,
  hdlist = NULL,
  choices = DIVE::hdlistchoicesMake(hdlist),
  cdata = NULL,
  preselect = NULL
)

Arguments

id

Character ID for specifying namespace, see shiny::NS.

hdlist

A list of matrices representing high dimensional datasets; the names are used for choices.

choices

Selection choices are by default created from automatic parsing of 'hdlist'. However, a manual list can be given, which should be appropriate for passing to shiny::selectizeInput.

cdata

A data.table of characteristics data, commonly phenotype or clinical data.

preselect

Optional, pre-selected phenotype or clinical variables from cdata. If is NULL (not recommended for most cases), the user can dynamically render as many datasets views as they can source.

Details

First, the server function calls multiVCtrlServer, which returns a named list object which either contains data or NULL. If there is data, a xVServer is dynamically initiated to render data in its own container. If NULL, the function removes the appropriate container using the name of the object, which is something like "i1" and corresponds to the index of the stored global datasets.

While multiVCtrlServer is a global control that controls which datasets are displayed at all, the geneVServer and selectVServer modules are global controls that modify the display of any displayed datasets through applying global filters on attributes that should be present in all or most of the data (for expression matrix data, this means gene/protein and attributes corresponding to samples). Thus, each xVServer component necessarily listens to geneVServer and selectVServer, but each can also have its own indepedent local controls, which takes precedence if enabled.

See Also

Other multiV functions: multiVUI()


avucoh/DIVE documentation built on Aug. 29, 2023, 6:02 p.m.