plotDecontXMarkerPercentage {celda} | R Documentation

## Plots percentage of cells cell types expressing markers

### Description

Generates a barplot that shows the percentage of cells within clusters or cell types that have detectable levels of given marker genes. Can be used to view the expression of marker genes in different cell types before and after decontamination with `decontX`.

### Usage

    plotDecontXMarkerPercentage(
      x,
      markers,
      groupClusters = NULL,
      assayName = c("counts", "decontXcounts"),
      z = NULL,
      threshold = 1,
      exactMatch = TRUE,
      by = "rownames",
      ncol = round(sqrt(length(markers))),
      labelBars = TRUE,
      labelSize = 3
    )

### Arguments

`x` | Either a SingleCellExperiment or a matrix-like object of counts.
`markers` | List. A named list indicating the marker genes for each cell type of interest. Multiple markers can be supplied for each cell type. For example, `list(Tcell_Markers=c("CD3E", "CD3D"), Bcell_Markers=c("CD79A", "CD79B", "MS4A1")` would specify markers for human T-cells and B-cells. A cell will be considered "positive" for a cell type if it has a count greater than `threshold` for at least one of the marker genes in the list.
`groupClusters` | List. A named list that allows cell clusters labels coded in `z` to be regrouped and renamed on the fly. For example, `list(Tcells=c(1, 2), Bcells=7)` would recode clusters 1 and 2 to "Tcells" and cluster 7 to "Bcells". Note that if this is used, clusters in `z` not found in `groupClusters` will be excluded from the barplot. Default `NULL`.
`assayName` | Character vector. Name(s) of the assay(s) to plot if `x` is a SingleCellExperiment. If more than one assay is listed, then side-by-side barplots will be generated. Default `c("counts", "decontXcounts")`.
`z` | Character, Integer, or Vector. Indicates the cluster labels for each cell. If `x` is a SingleCellExperiment and `z = NULL`, then the cluster labels from `decontX` will be retived from the `colData` of `x` (i.e. `colData(x)$decontX_clusters`). If `z` is a single character or integer, then that column will be retrived from `colData` of `x`. (i.e. `colData(x)[,z]`). If `x` is a counts matrix, then `z` will need to be a vector the same length as the number of columns in `x` that indicate the cluster to which each cell belongs. Default `NULL`.
`threshold` | Numeric. Markers greater than or equal to this value will be considered detected in a cell. Default 1.
`exactMatch` | Boolean. Whether to only identify exact matches for the markers or to identify partial matches using `grep`. See `retrieveFeatureIndex` for more details. Default `TRUE`.
`by` | Character. Where to search for the markers if `x` is a SingleCellExperiment. See `retrieveFeatureIndex` for more details. If `x` is a matrix, then this must be set to `"rownames"`.Default `"rownames"`.
`ncol` | Integer. Number of columns to make in the plot. Default `round(sqrt(length(markers))`.
`labelBars` | Boolean. Whether to display percentages above each bar Default `TRUE`.
`labelSize` | Numeric. Size of the percentage labels in the barplot. Default 3.

### Value

Returns a `ggplot` object.

### Author(s)

Shiyi Yang, Joshua Campbell

### See Also

See `decontX` for a full example of how to estimate and plot contamination.

[Package celda version 1.8.1 Index]