smoothScatter {geneplotter}R Documentation

Scatterplots with smoothed densities color representation

Description

smoothScatter produces a smoothed color density representation of the scatterplot, obtained through a kernel density estimate. densCols produces a vector containing colors which encode the local densities at each point in a scatterplot.

Usage

smoothScatter(x, y=NULL,
              nbin=128,
              bandwidth,
              colramp=colorRampPalette(c("white", brewer.pal(9, "Blues"))),
              nrpoints=100,
              transformation=function(x) x^.25,
              xlab=NULL, ylab=NULL, postPlotHook=box, pch=".", cex=1, ...) 

     densCols(x, y=NULL,
              nbin=128,
              bandwidth,
              colramp=colorRampPalette(brewer.pal(9, "Blues")[-(1:3)]))

Arguments

x Numeric vector containing x-values or n by 2 matrix containing x and y values.
y Numeric vector containing y-values (optional). The length of x must be the same as that of y.
nbin Numeric vector of length 1 (for both directions) or 2 (for x and y separately) containing the number of equally spaced grid points for the density estimation.
bandwidth Numeric vector: the smoothing bandwidth. If missing, these functions come up with a more or less useful guess. This parameter then gets passed on to the function bkde2D.
colramp Function accepting an integer n as an argument and returning n colors.
nrpoints Numeric vector of length 1 giving number of points to be superimposed on the density image. The first nrpoints points from those areas of lowest regional densities will be plotted. Adding points to the plot allows for the identification of outliers. If all points are to be plotted, choose nrpoints = Inf.
transformation Function that maps the density scale to the color scale.
xlab Character. Gets passed on to image
ylab Character. Gets passed on to image
postPlotHook Either NULL or a function with no arguments that will be called after image.
pch points parameter setting
cex character expansion parameter setting (see par) passed to the points phase of the function
... Further arguments that are passed on to image.

Details

These functions are convenience wrappers around bkde2D.

The treatment of the x and y arguments attempts to be consistent with that e.g. of plot.default.

See examples for how to use this function together withn pairs.

Value

smoothScatter is called for its side-effect, producing a plot on the current graphics device. densCols returns a vector of length nrow(x) that contains colors to be used in a subsequent scatterplot. Each color represents the local density around the corresponding point.

Author(s)

Florian Hahne <f.hahne@dkfz.de>

See Also

bkde2D

Examples

if(interactive()) {
  x1  <- matrix(rnorm(1e4), ncol=2)
  x2  <- matrix(rnorm(1e4, mean=3, sd=1.5), ncol=2)
  x   <- rbind(x1,x2)

  oldpar <- par(mfrow=c(2,2))
  smoothScatter(x, nrpoints=0)
  smoothScatter(x)
  smoothScatter(x,nrpoints=Inf,colramp=colorRampPalette(RColorBrewer::brewer.pal(9, "YlOrRd")),bandwidth=1)  

  colors  <- densCols(x)
  plot(x, col=colors, pch=20)

  ## use with pairs:
  par(mfrow=c(1,1))
  y <- matrix(rnorm(40000), ncol=4) + 3*rnorm(10000)
  y[, c(2,4)] <- (-y[, c(2,4)])
  pairs(y, panel=function(...) {par(new=TRUE);smoothScatter(..., nrpoints=0)})

  par(oldpar)
}

[Package geneplotter version 1.14.0 Index]