multi_dittoPlot {dittoSeq} | R Documentation

## Generates multiple dittoPlots arranged into a grid.

### Description

Generates multiple dittoPlots arranged into a grid.

### Usage

    multi_dittoPlot(
      object,
      vars,
      group.by,
      color.by = group.by,
      legend.show = FALSE,
      ncol = 3,
      nrow = NULL,
      main = "var",
      ylab = NULL,
      xlab = NULL,
      OUT.List = FALSE,
      ...
    )

### Arguments

`object` | the Seurat or SingleCellExperiment object to draw from
`vars` | c("var1","var2","var3",...). A vector of gene or metadata names from which to generate the separate plots
`group.by` | String representing the name of a metadata to use for separating the cells/samples into discrete groups.
`color.by` | String representing the name of a metadata to use for setting color. Default = `group.by`.
`ncol, nrow` | Integers which set how many plots will be arranged per column or per row. Default = 3 columns aand however many rows are required. Set both to NULL to have the grid.arrange function figure out what might be most "square" on its own.
`main, ylab` | String which sets whether / how plot titles or y-axis labels should be added to each individual plot When set to `"var"`, the `vars` names alone will be used. When set to `"make"`, the default dittoPlot behavior will be observed: Equivalent to "make" for `main`, but for y-axis labels, gene vars will become "'var' expression". When set as any other string, that string will be used as the title / y-axis label for every plot. When set to `NULL`, titles / axes labels will not be added.
`xlab, legend.show, ...` | other paramters passed along to `dittoPlot`.
`OUT.List` | Logical. (Default = FALSE) When set to `TRUE`, a list of the individual plots, named by the `vars` being shown in each, is output instead of the combined multi-plot.

### Value

Given multiple 'var' parameters, this function will output a dittoPlot for each one, arranged into a grid, just with some slight tweaks to the defaults. If `OUT.list` was set to TRUE, the list of individual plots is output instead of the combined multi-plot. All parameters that can be adjusted in dittoPlot can be adjusted here.

### Author(s)

Daniel Bunis

### See Also

`dittoPlot` for the single plot version of this function

### Examples

    # dittoSeq handles bulk and single-cell data quit similarly.
    # The SingleCellExperiment object structure is used for both,
    # but all functions can be used similarly directly on Seurat
    # objects as well.

    example(importDittoBulk, echo = FALSE)
    myRNA

    genes <- getGenes(myRNA)[1:4]
    multi_dittoPlot(myRNA, genes, group.by = "clustering")

    # violin-plots in front is often better for large single-cell datasets,
    # but we cn change the order with 'plots'
    multi_dittoPlot(myRNA, genes, "clustering",
        plots = c("vlnplot","boxplot","jitter"))

    #To make it output a grid that is 2x2, to add y-axis labels
    # instead of titles, and to show legends...
    multi_dittoPlot(myRNA, genes, "clustering",
        nrow = 2, ncol = 2,           #Make grid 2x2 (only one of these needed)
        main = NULL, ylab = "make",   #Add y axis labels instead of titles
        legend.show = TRUE)           #Show legends

    # We can also facet with 'split.by'
    multi_dittoPlot(myRNA, genes, "clustering",
        split.by = "SNP")

[Package dittoSeq version 1.0.2 Index]