# jitter

##### ‘Jitter’ (Add Noise) to Numbers

Add a small amount of noise to a numeric vector.

##### Usage

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

##### Arguments

- x
numeric vector 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.

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

Chambers, J. M. and Hastie, T. J. (1992)
*Statistical Models in S.*
Wadsworth & Brooks/Cole.

##### See Also

`rug`

which you may want to combine with `jitter`

.

##### Examples

`library(base)`

```
# NOT RUN {
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))
# }
```

*Documentation reproduced from package base, version 3.6.1, License: Part of R 3.6.1*