Hi Jun,

I'd for a local fitting by means of the loess() function. Assuming z is the
third axis:

x<-runif(25)
y<-runif(25)
z<-runif(25)

xyz.fit <-
loess(z~x+y,control=loess.control(surface='direct'),span=.5,degree=1) #tune
parameters as you like

z.predict <-matrix(predict(xyz.fit,cbind(x,y)),5,5)

persp(z=z.predict,phi=30,theta=45,shade=.5) #tune parameters as you like


Hope this helps,

/f


On Wed, Dec 4, 2013 at 5:36 PM, Jun Shen <jun.shen.ut@gmail.com> wrote:

> Hi,
>
> I have a dataset with two independent variables (x, y) and a response
> variable (z). I was hoping to generate a response surface by plotting x, y,
> z on a three dimensional plot. I can plot the data with rgl.points(x, y,
> z). I understand I may not have enough data to generate a surface. Is there
> a way to smooth out the data points to generate a surface? Thanks a lot.
>
> Jun
>
> ===========================
>
> An example:
>
> x<-runif(20)
> y<-runif(20)
> z<-runif(20)
>
> library(rgl)
> rgl.points(x,y,z)
>
>         [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help@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.
>

	[[alternative HTML version deleted]]

