| exclude.too.far {mgcv} | R Documentation | 
Takes two arrays defining the nodes of a grid over a 2D covariate space and two arrays 
defining the location of data in that space, and returns a logical vector with elements TRUE if 
the corresponding node is too far from data and FALSE otherwise. Basically a service routine for 
vis.gam and plot.gam.
exclude.too.far(g1,g2,d1,d2,dist)
| g1 | co-ordinates of grid relative to first axis. | 
| g2 | co-ordinates of grid relative to second axis. | 
| d1 | co-ordinates of data relative to first axis. | 
| d2 | co-ordinates of data relative to second axis. | 
| dist | how far away counts as too far. Grid and data are first scaled so that the grid lies exactly 
in the unit square, and distis a distance within this unit square. | 
Linear scalings of the axes are first determined so that the grid defined by the nodes in 
g1 and g2 lies exactly in the unit square (i.e. on [0,1] by [0,1]). These scalings are 
applied to g1, g2, d1 and d2. The minimum Euclidean 
distance from each node to a datum is then determined and if it is greater than dist the 
corresponding entry in the returned array is set to TRUE (otherwise to FALSE). The 
distance calculations are performed in compiled code for speed without storage overheads.
A logical array with TRUE indicating a node in the grid defined by g1, g2 that 
is `too far' from any datum.
Simon N. Wood simon.wood@r-project.org
http://www.maths.bath.ac.uk/~sw283/
library(mgcv) x<-rnorm(100);y<-rnorm(100) # some "data" n<-40 # generate a grid.... mx<-seq(min(x),max(x),length=n) my<-seq(min(y),max(y),length=n) gx<-rep(mx,n);gy<-rep(my,rep(n,n)) tf<-exclude.too.far(gx,gy,x,y,0.1) plot(gx[!tf],gy[!tf],pch=".");points(x,y,col=2)