manhattanPlot {GWASTools} | R Documentation

## Manhattan plot for genome wide association tests

### Description

Generates a manhattan plot of the results of a genome wide association test.

### Usage

    manhattanPlot(p, chromosome,
                  ylim = NULL, trunc.lines = TRUE,
                  signif = 5e-8, thinThreshold=NULL, pointsPerBin=10000, col=NULL, ...)

### Arguments

`p` | A vector of p-values.
`chromosome` | A vector containing the chromosome for each SNP.
`ylim` | The limits of the y axis. If NULL, the y axis is `(0, log10(length(p)) + 4)`.
`trunc.lines` | Logical value indicating whether to show truncation lines.
`signif` | Genome-wide significance level for plotting horizontal line. If `signif=NULL`, no line will be drawn.
`thinThreshold` | if not `NULL`, `-log10(pval)` threshold for thinning points.
`pointsPerBin` | number of points to plot in each bin if `thinThreshold` is given. Ignored otherwise.
`col` | vector containing colors of points; defaults to coloring by chromosome using the colorbrewer Dark2 palette with 8 colors
`...` | Other parameters to be passed directly to `plot`.

### Details

Plots -log10(p) versus chromosome. Point size is scaled so that smaller p values have larger points.

`p` must have the same length as `chromosome` and is assumed to be in order of position on each chromosome. Values within each chromosome are evenly spaced along the X axis.

Plot limits are determined as follows: if `ylim` is provided, any points with `-log10(p) > ylim[2]` are plotted as triangles at the maximum y value of the plot. A line will be drawn to indicate trunctation (if `trunc.lines == TRUE`, the default). If `ylim == NULL`, the maximum y value is defined as `log10(length(p)) + 4)`.

If requested with `thinThreshold`, points with `-log10(pval) < thinThreshold` are thinned before plotting. All points with `-log10(pval) >= thinThreshold` are displayed. P-values with `-log10(pval) < thinThreshold` are sampled such that `pointsPerBin` points are randomly selected from 10 bins with uniform spacing in `-log10(pval)` space.

### Author(s)

Cathy Laurie, Adrienne Stilp

### See Also

`snpCorrelationPlot`

### Examples

    n <- 1000
    pvals <- sample(-log10((1:n)/n), n, replace=TRUE)
    chromosome <- c(rep(1,400), rep(2,350), rep("X",200), rep("Y",50))
    manhattanPlot(pvals, chromosome, signif=1e-7)
    manhattanPlot(pvals, chromosome, thinThreshold=2)

[Package GWASTools version 1.40.0 Index]