Re: [R] Plotting 3d data?

From: Duncan Murdoch <murdoch_at_stats.uwo.ca>
Date: Mon, 16 Jun 2008 16:24:28 -0400

On 6/16/2008 1:32 PM, Wesley Tansey wrote:
> Hi all!
>
>
>
> I'm very new to R, and I'm having trouble figuring out how to go from a file
> of points that I have to a 3d surface plot of the data. I typically have
> something like this:
>
>
>
> X Y Z
>
> 0.005 0.023 34.45
>
> 0.0035 0.63 28.48
>
> .
>
>
>
> I've tried looking at the persp and wireframe packages, and the rgl package,
> but I can't seem to figure out how to use any of them. I tried to take the
> rgl.surface3d example and use it for myself, and this is what I have so far:
>
>
>
> setwd(".")
>
>
>
> data <- read.csv("data.csv",header=T)
>
>
>
> x <- data$X
>
> y <- data$Y
>
> z <- data$Z
>
>
>
> open3d()
>
> surface3d(x, y, z)
>
>
>
> That gives me the following error:
>
>
>
> Error in rgl.surface(x = c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, :
>
> y length != x rows * z cols
>
>
>
> I have no idea what it is trying to tell me there. Would anyone mind helping
> me out?

surface3d (and rgl.surface) expect you to have data that corresponds to a grid defining the surface. So you need at least one of the parameters (z in surface3d, y in rgl.surface) to be a matrix with rows corresponding to x values and columns corresponding to the other variable.

If your data is really a bunch of points, not on a grid, then you need to use plot3d() to plot it as points, or convert it to a surface. The interp() function in the akima package can do that. (There are lots of other possibilities too.)

Duncan Murdoch



R-help_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code. Received on Mon 16 Jun 2008 - 20:53:14 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Mon 16 Jun 2008 - 22:30:50 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.

list of date sections of archive