flash_plot_structure: Create structure plot of factors or loadings for a flash fit

View source: R/flash_plots.R

flash_plot_structureR Documentation

Create structure plot of factors or loadings for a flash fit

Description

Creates a “structure plot” (stacked bar plot) of posterior means for factors f_{jk} or loadings \ell_{ik}. Different “topics” or components (that is, the different factor/loadings pairs, as specified by kset) are represented by different colors. Values are normalized so that the maximum absolute value for each factor f_{\cdot k} or set of loadings \ell_{\cdot k} is equal to 1 and then stacked (see ldf.flash). Note that structure plots were designed for nonnegative loadings or “memberships”; if posterior means are not nonnegative then a different type of plot should be used (e.g., flash_plot_heatmap). By default, a 1-d embedding is used to arrange the rows i or columns j. This step is usually essential to creating a readable structure plot; for details, see structure_plot.

Usage

flash_plot_structure(
  fl,
  order_by_pve = FALSE,
  kset = NULL,
  pm_which = c("factors", "loadings"),
  pm_subset = NULL,
  pm_groups = NULL,
  pm_colors = NULL,
  gap = 1,
  ...
)

Arguments

fl

An object inheriting from class flash.

order_by_pve

If order_by_pve = TRUE, then factor/loadings pairs will be ordered according to proportion of variance explained, from highest to lowest. (By default, they are plotted in the same order as kset; or, if kset is NULL, then they are plotted in the same order as they are found in fl.)

kset

A vector of integers specifying the factor/loadings pairs to be plotted. If order_by_pve = FALSE, then kset also specifies the order in which they are to be plotted.

pm_which

Whether to plot loadings L or factors F.

pm_subset

A vector of row indices i or column indices j (depending on the argument to pm_which) specifying which values \ell_{i \cdot} or f_{j \cdot} are to be shown. If the dataset has row or column names, then names rather than indices may be specified. If pm_subset = NULL, then all values will be plotted.

pm_groups

A vector specifying the group to which each row of the data y_{i \cdot} or column y_{\cdot j} belongs (groups may be numeric indices or strings). A group must be provided for each plotted row i or column j, so that the length of pm_groups is exactly equal to the number of rows or columns in the full dataset or, if pm_subset is specified, in the subsetted dataset.

pm_colors

The colors of the “topics” or components (factor/loadings pairs).

gap

The horizontal spacing between groups. Ignored if pm_groups is not provided.

...

Additional parameters to be passed to structure_plot.

Value

A ggplot object.


willwerscheid/flashier documentation built on Jan. 30, 2025, 11:27 p.m.