fg_plot_pVSdiff: Creates a p value vs feature difference plot

View source: R/04_flowgraph_plots.R

fg_plot_pVSdiffR Documentation

Creates a p value vs feature difference plot

Description

Creates a p value vs feature difference plot where the difference is that of the features of samples belonging to different classes corresponding to an existing summary statistic.

Usage

fg_plot_pVSdiff(
  fg,
  type = "node",
  index = 1,
  summary_meta = NULL,
  adjust_custom = "byLayer",
  logged = TRUE,
  label_max = 5,
  p_thres = 0.05,
  filter_adjust0 = 1,
  filter_es = 0,
  filter_btwn_tpthres = 1,
  filter_btwn_es = 0,
  shiny_plot = FALSE,
  nodes_max = 30,
  main = NULL,
  interactive = FALSE,
  path = NULL
)

Arguments

fg

flowGraph object.

type

A string indicating feature type the summary was created for 'node' or 'edge'.

index

The user must provide type and additionally, one of summary_meta or index.

index is an integer indicating the row in fg_get_summary_desc(<flowGraph>) of the corresponding type and summary the user would like to retrieve.

summary_meta

The user must provide type and additionally, one of summary_meta or index.

summary_meta is a list containing feature (feature name), test_name (summary statistic name), class (class), label1, and label2 (class labels compared). See fg_get_summary_desc for details.

adjust_custom

A function or a string indicating the test adjustment method to use. If a string is provided, it should be one of c("holm", "hochberg", "hommel", "bonferroni", "BH", "BY", "fdr", "none") (see p.adjust.methods). If a function is provided, it should take as input a numeric vector and output the same vector adjusted.

logged

A logical indicating whether or not to log the summary statistic p value.

label_max

An integer indicating the maximum number of max difference and/or min p value nodes/edges that should be labelled.

p_thres

A numeric variable indicating a p-value threshold; a line will be plotted at this threshold.

filter_adjust0

A numeric variable indicating what percentage of SpecEnr values compared (minimum) should be not close to 0. Set to 1 to not conduct filtering.

filter_es

A numeric variable between 0 and 1 indicating what the Cohen's D value of the nodes/edges in question must be greater or equal to, to be significant.

filter_btwn_tpthres

A numeric variable between 0 and 1 indicating the unadjusted T-test p-value threshold used to test whether the actual and expected feature values used to calculate the specified SpecEnr feature are significantly different for each sample class. Note this only needs to be specified for SpecEnr features. Combined with filter_btwn_es, we conduct three tests to understand if there is an actual large difference between actual and expected features: (1,2) T-test of significance between the actual and expected raw feature value (e.g. proportion) for samples in each of the compared classes, (3) and the T-test of significance between the differences of actual and expected feature values of the two classes. If any two of the three tests come out as insignificant, we set the p-value for the associated node/edge to 1.

filter_btwn_es

A numeric variable between 0 and 1 indicating what the Cohen's D value of the nodes/edges in question must be greater or equal to, to be significant – see filter_btwn_tpthres.

shiny_plot

A logical indicating whether this plot is made for shiny; users don't need to change this.

nodes_max

An integer indicating maximum number of nodes to plot; this limit is set for interactive plots only.

main

A string or the title of the plot; if left as NULL, a default title will be applied.

interactive

A logical variable indicating whether the plot should be an interactive plot; see package ggiraph.

path

A string indicating the path to where the function should save the plot; leave as NULL to not save the plot. Static plots are saved as PNG.

Details

The interactive plot is made using the ggiraph package.

Value

A static or interactive p value vs difference plot.

See Also

flowGraph-class fg_plot plot_gr fg_get_feature fg_get_summary fg_plot_qq

Examples


 no_cores <- 1
 data(fg_data_pos2)
 fg <- flowGraph(fg_data_pos2$count, class=fg_data_pos2$meta$class,
                 no_cores=no_cores)

 gp <- fg_plot_pVSdiff(fg, type="node", summary_meta=NULL,
                       adjust_custom="byLayer", index=1, label_max=10)


aya49/flowGraph documentation built on Feb. 4, 2024, 6:40 p.m.