Learn R Programming

volcano3D (version 1.0.0)

volcano3D: Three-Dimensional Volcano Plot

Description

Plots the pvalues from three-way comparisons in 3D space using plotly.

Usage

volcano3D(
  polar,
  colours = c("green3", "cyan", "blue", "purple", "red", "gold2"),
  non_sig_colour = "grey60",
  colour_scale = "discrete",
  continuous_shift = 1.33,
  label_rows = c(),
  grid = NULL,
  fc_or_zscore = "zscore",
  label_size = 14,
  marker_size = 6,
  marker_alpha = 0.7,
  marker_outline_colour = "white",
  marker_outline_width = 0.5,
  axis_angle = 0.5,
  z_aspectratio = 1,
  xy_aspectratio = 1,
  plot_height = 700,
  ...
)

Arguments

polar

A polar object with created by polar_coords.

colours

A vector of colour names or hex triplets for each of the six groups. Default = c("green3", "cyan", "blue", "purple", "red", "gold2"). Colours are assigned in order: group1+, group1+group2+, group2+, group2+group3+, group3+, group1+group3+.

non_sig_colour

The colour for non-significant markers (default='grey60').

colour_scale

whether to use a 'discrete' or 'continuous' colour scale (default = 'discrete').

continuous_shift

The number of radians to offset the continuous colour scale by. This is calculated by converting the angle to a hue using hsv where 0 corresponds to the colour scale starting with red and 2 with magenta (default = 2).

label_rows

A vector of row names or numbers to label.

grid

An optional grid object. If NULL this will be calculated using default values of polar_grid.

fc_or_zscore

whether to use fold change or z-score for the p-values. Options are 'zscore' (default) or 'fc').

label_size

font size for labels (default = 14).

marker_size

Size of the markers (default = 6).

marker_alpha

Opacity for the markers (default = 0.7).

marker_outline_colour

Colour for marker outline (default = white)

marker_outline_width

Width for marker outline (default = 0.5)

axis_angle

Angle in radians for the z axis (default = 0.5).

z_aspectratio

The aspect ratio for the z axis compared to x and y (default = 1). Decreasing this makes the plot appear more squat.

xy_aspectratio

The aspect ratio for the xy axis compared to z (default = 1). Decreasing this makes the grid wider in the plot window.

plot_height

The plot height in px. Default=700.

...

Optional parameters to pass to polar_grid.

Value

Returns a cylindrical 3D plotly plot featuring variables on a tri-axis radial graph with the -log10(multi-group test p-value) on the z-axis

References

Lewis, Myles J., et al. (2019). Molecular portraits of early rheumatoid arthritis identify clinical and treatment response phenotypes. Cell reports, 28:9

Examples

Run this code
# NOT RUN {
data(example_data)
syn_polar <- polar_coords(sampledata = syn_example_meta,
                          contrast = "Pathotype", 
                          groups = NULL, 
                          pvalues = syn_example_p, 
                          expression = syn_example_rld, 
                          p_col_suffix = "pvalue", 
                          padj_col_suffix = "padj", 
                          non_sig_name = "Not Significant", 
                          multi_group_prefix = "LRT",
                          significance_cutoff = 0.01, 
                          fc_col_suffix='log2FoldChange',
                          fc_cutoff = 0.3)

volcano3D(syn_polar, 
    label_rows = c("FMOD", "LAMP5", "TNNT3"), 
    xy_aspectratio = 1, 
    label_size = 10, 
    z_aspectratio = 0.9)
# }

Run the code above in your browser using DataLab