## Add `Jitter' (Noise) to Numbers

## Usage

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

## Description

`jitter(x,...)` returns a numeric of the same length as `x`, but with an `amount` of noise added in order to break ties. The result, say `r`, is `r <- x + runif(n, -a, a)` where `n <- length(x)` and `a` is the `amount` argument (if specified).

## Details

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.

## 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))

[Package Contents]