https://github.com/cran/gstat
Raw File
Tip revision: 35769275469f58b6acdba92744a64f2b54b2dda1 authored by Edzer J. Pebesma on 01 October 2004, 00:00:00 UTC
version 0.9-15
Tip revision: 3576927
bubble.R
"bubble" <-
function (data, xcol = 1, ycol = 2, zcol = 3, fill = TRUE, maxsize = 3, 
    do.sqrt = TRUE, pch, col = c(2, 3), key.entries = quantile(data[,zcol]),
	main = ifelse(is.numeric(zcol), names(data)[zcol], zcol),
    identify = FALSE, labels = row.names(data), ...) 
{
    x = data[, xcol]
    y = data[, ycol]
    z = data[, zcol]
    d = data.frame(x = x, y = y)
    if (missing(pch)) 
        pch = ifelse(fill, 16, 1)
    z.col = ifelse(z < 0, col[1], col[2])
    q = key.entries
    q.pch = rep(pch, length(q))
    q.text = as.character(round(q, 3))
    q.col = ifelse(q < 0, col[1], col[2])
    az = abs(z)
    q = abs(q)
    if (do.sqrt) {
		az = sqrt(az)
		q = sqrt(q)
    }
    cex = maxsize * az/max(az)
    q.cex = maxsize * q/max(az)

    if (identify) {
		plot(data[, xcol], data[, ycol], asp = 1, cex = cex, main = main, ...)
		return(identify(data[, xcol], data[, ycol], labels))
	} 
    key = list(space = "right", points = list(pch = q.pch, col = q.col, 
    	cex = q.cex), text = list(q.text))
	xyplot(y ~ x, d, col = z.col, cex = cex, pch = pch, asp = mapasp(d), 
        key = key, main = main, ...)
}
back to top