[R] Smoothing a persp graph

David L Carlson dcarlson at tamu.edu
Tue Jun 19 17:42:29 CEST 2012


The kde2d function estimates density using the spacing of the points in two
dimensions. The requester has gridded (x, y) data with a z value. The
function call for kde2d takes x and y and compute z values that estimate
point density.

Kde2d is used for point data where you want to estimate the density of the
points in 2d. Use kde2d to produce the gridded data you need to pass on to
contour or persp, but the requester already has gridded data with a z value
that he wants to smooth (e.g. elevation, depth to an interesting deposit,
thickness of a stratum, rainfall, tree frog density), a standard problem in
geostatistics.

-------
David 2


> -----Original Message-----
> From: David Winsemius [mailto:dwinsemius at comcast.net]
> Sent: Tuesday, June 19, 2012 10:00 AM
> To: dcarlson at tamu.edu
> Cc: "'Kehl Dániel'"; r-help at r-project.org
> Subject: Re: [R] Smoothing a persp graph
> 
> 
> On Jun 19, 2012, at 10:02 AM, David L Carlson wrote:
> 
> > kde2d is for two dimensional data. The persp graph is 3d.
> 
> Huh? The question asked about plotting data that was 2d. The third
> dimension was to be the density. kde2d in package MASS or the
> similarly named function in package KernSmooth would seem to be on
> point here.
> 
> --
> David.
> 
> 
> >
> > Look at the StatDA package, particularly the Vignette for that
> > package,
> > "Tutorial to the package StatDA" which discusses smoothing techniques
> > and kriging:
> >
> > http://cran.r-project.org/web/packages/StatDA/vignettes/StatDA.pdf
> >
> > For more options look at the Spatial Task View:
> >
> > http://cran.r-project.org/web/views/Spatial.html
> >
> > ----------------------------------------------
> > David L Carlson
> > Associate Professor of Anthropology
> > Texas A&M University
> > College Station, TX 77843-4352
> >
> >> -----Original Message-----
> >> From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-
> >> project.org] On Behalf Of Kehl Dániel
> >> Sent: Tuesday, June 19, 2012 8:42 AM
> >> To: r-help at r-project.org
> >> Subject: Re: [R] Smoothing a persp graph
> >>
> >> Take a look at the
> >>
> >> kde2d
> >> function in the MASS package, maybe it helps.
> >>
> >> Best
> >> kd
> >>
> >>
> >>
> >> 2012.06.19. 14:26 keltezissel, Guillaume Chapron mrta:
> >>> Hi,
> >>>
> >>> I'm unable to find a way to smooth data for a persp() graph.
> >>>
> >>> Example, suppose that I have data x,y,z like this:
> >>>
> >>> x<- 1:10
> >>> y<- 1:10
> >>>
> >>> k<- 20
> >>> z<- outer(x, y, "*") + matrix( k*runif(100, -1, 1), 10, 10)
> >>> persp(x, y, z, theta = 35, phi = 25)
> >>>
> >>> The graph is not very nice. Is there a way to smooth the z data so
> >> that at the end the graph would look more like something like that:
> >>>
> >>> k<- 2
> >>> z<- outer(x, y, "*") + matrix( k*runif(100, -1, 1), 10, 10)
> >>> persp(x, y, z, theta = 35, phi = 25)
> >>>
> >>> There seems to be many smoothing functions in R (e.g. loess) but I
> >> have not been able to find one for a 3D graph.
> >>>
> >>> Thanks!
> >>>
> >>> Guillaume
> >>>
> >>> ______________________________________________
> >>> 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.
> >>>
> >>>
> >>>
> >>
> >>
> >> 	[[alternative HTML version deleted]]
> >
> > ______________________________________________
> > 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.
> 
> David Winsemius, MD
> West Hartford, CT



More information about the R-help mailing list