plotPCA: Sample PCA plot for transformed data

plotPCAR Documentation

Sample PCA plot for transformed data

Description

This plot helps to check for batch effects and the like.

Usage

## S4 method for signature 'DESeqTransform'
plotPCA(
  object,
  intgroup = "condition",
  ntop = 500,
  returnData = FALSE,
  pcsToUse = 1:2
)

Arguments

object

a DESeqTransform object, with data in assay(x), produced for example by either rlog or varianceStabilizingTransformation.

intgroup

interesting groups: a character vector of names in colData(x) to use for grouping

ntop

number of top genes to use for principal components, selected by highest row variance

returnData

should the function only return the data.frame of PC1 and PC2 with intgroup covariates for custom plotting (default is FALSE)

pcsToUse

numeric of length 2, which PCs to plot

Value

An object created by ggplot, which can be assigned and further customized.

Note

See the vignette for an example of variance stabilization and PCA plots. Note that the source code of plotPCA is very simple. The source can be found by typing DESeq2:::plotPCA.DESeqTransform or getMethod("plotPCA","DESeqTransform"), or browsed on github at https://github.com/mikelove/DESeq2/blob/master/R/plots.R Users should find it easy to customize this function.

Author(s)

Wolfgang Huber

Examples


# using rlog transformed data:
dds <- makeExampleDESeqDataSet(betaSD=1)
vsd <- vst(dds, nsub=500)
plotPCA(vsd)

# also possible to perform custom transformation:
dds <- estimateSizeFactors(dds)
# shifted log of normalized counts
se <- SummarizedExperiment(log2(counts(dds, normalized=TRUE) + 1),
                           colData=colData(dds))
# the call to DESeqTransform() is needed to
# trigger our plotPCA method.
plotPCA( DESeqTransform( se ) )


mikelove/DESeq2 documentation built on Nov. 18, 2024, 1:37 p.m.