jitter                 package:base                 R Documentation

Add `Jitter' (Noise) to Numbers

Description:

     Add a small amount of noise to a numeric vector.

Usage:

     jitter(x, factor=1, amount = NULL)

Arguments:

       x: numeric to which jitter should be added.

  factor: numeric 

  amount: numeric; if positive, used as amount (see below), otherwise,
          if `= 0' the default is `factor * z/50'.

          Default (`NULL'): `factor * d/5' where `d' is about the
          smallest difference between `x' values.

Details:

     The result, say `r', is `r <- x + runif(n, -a, a)' where `n <-
     length(x)' and `a' is the `amount' argument (if specified).

     Let `z <- max(x) - min(x)' (assuming the usual case). The amount
     `a' to be added is either provided as positive argument `amount'
     or otherwise computed from `z', as follows:

     If `amount == 0', we set `a <- factor * z/50' (same as S).

     If `amount' is `NULL' (default), we set `a <- factor * d/5' where
     d is the smallest difference between adjacent unique (apart from
     fuzz) `x' values.

Value:

     `jitter(x,...)' returns a numeric of the same length as `x', but
     with an `amount' of noise added in order to break ties.

Author(s):

     Werner Stahel and Martin Maechler, ETH Zurich

References:

     Chambers, J. M., Cleveland, W. S., Kleiner, B. and Tukey, P.A.
     (1983) Graphical Methods for Data Analysis. Wadsworth; figures
     2.8, 4.22, 5.4.

See Also:

     `rug' which you may want to combine with `jitter'.

Examples:

     round(jitter(c(rep(1,3),  rep(1.2, 4), rep(3,3))), 3)
     ## These two `fail' with S-plus 3.x:
     jitter(rep(0, 7))
     jitter(rep(10000,5))

