swh:1:snp:a4c99a50dc49f82b591f268001b320f8c3ca0041
Tip revision: e3fb24ebd97f7686caee78bcef4e558b908a465e authored by jmc on 01 December 2007, 00:00:00 UTC
version 0.97-1
version 0.97-1
Tip revision: e3fb24e
jitterXY.R
jitterXY <- function(x = c(0,1), y = c(0,1),
xscale = 1, yscale = 1) {
xlim <- range(x, na.rm = TRUE, finite = TRUE)
ylim <- range(y, na.rm = TRUE, finite = TRUE)
plot.window(xlim, ylim)
cxy <- par("cxy")
if(missing(y))
x + xscale * cxy[[1]] * runif(length(x))
else if(missing(x))
y + yscale * cxy[[2]] * runif(length(y))
else
list(x = x + xscale * cxy[[1]] * runif(length(x)),
y = y + yscale * cxy[[2]] * runif(length(y)))
}
jitterX <- function(x, scale = 1)
jitterXY(x, xscale = scale)
jitterY <- function(y, scale = 1)
jitterXY(y = y, yscale = scale)