Very nice! I noticed that you wrote the function to drop points to any surface. Is it possible to add the surface to the plot as a translucent surface, so the points and drop lines still show?
David L. Reiner -----Original Message----- From: Robin Hankin [mailto:[EMAIL PROTECTED] Sent: Thursday, November 18, 2004 3:39 AM To: [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] Subject: Fwd: Re: [R] 3d scatter plot with drop line Hi try this: p3dpairs <- function(x,x1, xlim=NULL,ylim=NULL,zlim=NULL,col=par("col"), pch=par("pch"), cex=par("cex"), ...){ if(is.matrix(x)){ z <- x[,3] y <- x[,2] x <- x[,1] } if(is.matrix(x1)){ z1 <- x1[,3] y1 <- x1[,2] x1 <- x1[,1] } if(missing(zlim)) { z.grid <- matrix(range(z),2,2) } else { z.grid <- matrix(zlim,2,2) } if(missing(xlim)){ xlim <- range(x) } if(missing(ylim)){ ylim <- range(y) } persp(xlim, ylim, z.grid, col = NA, border=NA, ...) -> res trans3d <- function(x,y,z, pmat) { tr <- cbind(x,y,z,1) %*% pmat list(x = tr[,1]/tr[,4], y= tr[,2]/tr[,4]) } out <- trans3d(x,y,z,pm=res) out1 <- trans3d(x1,y1,z1,pm=res) points(out, col=col, pch=pch, cex=cex, ...) for(i in 1:length(out$x)){ lines(c(out$x[i],out1$x[i]),c(out$y[i],out1$y[i]), col="gray", ...) } return(invisible(out)) } then a <- matrix(rnorm(60),20,3) b <- a b[,3] <- 0 p3dpairs(a,b) gives you a good approximation to what you want HTH rksh > > >>This is a follow up to my question from yesterday. I want to do in R >>what is called a "3d scatter plot with drop lines" in S-PLUS. >> >>Basically, it's a 3dscatterplot with lines connecting the x-y grid to >>the z points. >>The lines give a better perspective on the shape of the data surface. >> >>How to? >> >>Joel Bremson >>UC Davis Statistics >> >>______________________________________________ >>[EMAIL PROTECTED] mailing list >>https://stat.ethz.ch/mailman/listinfo/r-help >>PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html > > >-- > >Robin Hankin >Uncertainty Analyst >Southampton Oceanography Centre >SO14 3ZH >tel +44(0)23-8059-7743 >[EMAIL PROTECTED] (edit in obvious way; spam precaution) -- Robin Hankin Uncertainty Analyst Southampton Oceanography Centre SO14 3ZH tel +44(0)23-8059-7743 [EMAIL PROTECTED] (edit in obvious way; spam precaution) [[alternative HTML version deleted]] ______________________________________________ [EMAIL PROTECTED] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html ______________________________________________ [EMAIL PROTECTED] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html