bicubic.grid: Bicubic Interpolation for Data on a Rectangular grid

View source: R/bicubic.R

bicubic.gridR Documentation

Bicubic Interpolation for Data on a Rectangular grid

Description

This is a placeholder function for backward compatibility with packaga akima.

In its current state it simply calls the reimplemented Akima algorithm for irregular grids applied to the regular gridded data given.

Later a reimplementation of the original algorithm for regular grids may follow.

Usage

bicubic.grid(x,y,z,xlim=c(min(x),max(x)),ylim=c(min(y),max(y)),
             nx=40,ny=40,dx=NULL,dy=NULL)

Arguments

x

a vector containing the x coordinates of the rectangular data grid.

y

a vector containing the y coordinates of the rectangular data grid.

z

a matrix containing the z[i,j] data values for the grid points (x[i],y[j]).

xlim

vector of length 2 giving lower and upper limit for range x coordinates used for output grid.

ylim

vector of length 2 giving lower and upper limit for range of y coordinates used for output grid.

nx

output grid dimension in x direction.

ny

output grid dimension in y direction.

dx

output grid spacing in x direction, not used by default, overrides nx if specified.

dy

output grid spacing in y direction, not used by default, overrides ny if specified..

Details

This function is a call wrapper for backward compatibility with package akima.

Currently it applies Akimas irregular grid splines to regular grids, later a FOSS reimplementation of his regular grid splines may replace this wrapper.

Value

This function produces a grid of interpolated points, feasible to be used directly with image and contour:

x

vector of x coordinates of the output grid.

y

vector of y coordinates of the output grid.

z

matrix of interpolated data for the output grid.

Note

Use interp for the general case of irregular gridded data!

References

Akima, H. (1996) Rectangular-Grid-Data Surface Fitting that Has the Accuracy of a Bicubic Polynomial, J. ACM 22(3), 357-361

See Also

interp, bicubic

Examples

data(akima474)
# interpolate at a grid [0,8]x[0,10]
akima.bic <- bicubic.grid(akima474$x,akima474$y,akima474$z)
zmin <- min(akima.bic$z, na.rm=TRUE)
zmax <- max(akima.bic$z, na.rm=TRUE)
breaks <- pretty(c(zmin,zmax),10)
colors <- heat.colors(length(breaks)-1)
image(akima.bic, breaks=breaks, col=colors)
contour(akima.bic, levels=breaks,  add=TRUE)

interp documentation built on Nov. 28, 2023, 1:07 a.m.