https://github.com/cran/fields
Raw File
Tip revision: 2a4b5cffe1902e0d2b0136705a9ed639bbab0c07 authored by Doug Nychka on 10 May 2004, 16:33:19 UTC
version 1.5
Tip revision: 2a4b5cf
plot.surface.R
"plot.surface" <-
function (obj, main = NULL, type = "b", zlab = NULL, xlab = NULL, 
    ylab = NULL, levels = NULL, zlim = NULL, graphics.reset = NULL, 
    labcex=.6,...) 
{
    old.par <- par(no.readonly = TRUE)
    if (is.null(graphics.reset) & (type == "b")) {
        graphics.reset <- TRUE
    }
    else {
        graphics.reset <- FALSE
    }
    if (graphics.reset) {
        on.exit(par(old.par))
    }
    if (is.null(xlab)) {
        if (is.null(obj$xlab)) 
            xlab <- "X"
        else xlab <- obj$xlab
    }
    if (is.null(ylab)) {
        if (is.null(obj$ylab)) 
            ylab <- "Y"
        else ylab <- obj$ylab
    }
    if (is.null(zlab)) {
        if (is.null(obj$zlab)) 
            zlab <- "Z"
        else zlab <- obj$zlab
    }
    if (is.null(main)) 
        if (!is.null(obj$main)) 
            main <- obj$main
    if (type == "b") 
        set.panel(2, 1, TRUE)
    if (type == "p" | type == "b") {
        if (is.null(zlim)) 
            persp(obj$x, obj$y, obj$z, xlab = xlab, ylab = ylab, 
                zlab = zlab, theta = 30, phi = 30, expand = 0.5, 
                col = "LightGreen", ...)
        else persp(obj, xlab = xlab, ylab = ylab, zlab = zlab, 
            zlim = zlim, theta = 30, phi = 30, expand = 0.5, 
            col = "LightGreen", ...)
        if (!is.null(main)) 
            title(main)
    }
    if (type == "c" | type == "b") {
        if (is.null(levels)) 
            levels <- pretty(obj$z[!is.na(obj$z)], 5)
        contour(obj$x, obj$y, obj$z, , xlab = xlab, ylab = ylab, 
            levels = levels, labcex=labcex,...)
    }
    if (type == "I") {
        image.plot(obj$x, obj$y, obj$z, xlab = xlab, ylab = ylab)
        if ((!is.null(main)) & type != "b") 
            title(main)
    }
    if (type == "C") {
        image.plot(obj$x, obj$y, obj$z, xlab = xlab, ylab = ylab, 
            graphics.reset = graphics.reset)
        if (is.null(levels)) 
            levels <- pretty(obj$z[!is.na(obj$z)], 5)
        contour(obj$x, obj$y, obj$z, add = TRUE, levels = levels, 
labcex=labcex,
            ...)
        if ((!is.null(main)) & type != "b") 
            title(main)
    }
    invisible()
}
back to top