If the surface to be plotted by persp() is supplied as a list, the x-axis label defaults to the name, in the call, of this list --- which is usually silly. I would suggest changing the first four lines of persp.default() (where the x-axis label gets set) from if (is.null(xlab)) xlab <- if (!missing(x)) deparse(substitute(x)) else "X" to if (is.null(xlab)) xlab <- if (!missing(x) && !is.list(x) && !is.matrix(x)) deparse(substitute(x)) else "X" which makes the x-axis label default to "X" if the surface is specified as a list. cheers, Rolf Turner Current email address: rolf@maths.uwa.edu.au Usual email address: rolf@math.unb.ca -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._