Description Usage Arguments Value Note References See Also Examples

This is an implementation of a bilinear interpolating function.

For a point (x0,y0) contained in a rectangle (x1,y1),(x2,y1), (x2,y2),(x1,y2) and x1<x2, y1<y2, the first step is to get z() at locations (x0,y1) and (x0,y2) as convex linear combinations z(x0,y*)=a*z(x1,y*)+(1-a)*z(x2,y*) where a=(x2-x1)/(x0-x1) for y*=y1,y2. In a second step z(x0,y0) is calculated as convex linear combination between z(x0,y1) and z(x0,y2) as z(x0,y1)=b*z(x0,y1)+(1-b)*z(x0,y2) where b=(y2-y1)/(y0-y1).

Finally, z(x0,y0) is a convex linear combination of the z values at the corners of the containing rectangle with weights according to the distance from (x0,y0) to these corners.

The grid lines can be unevenly spaced.

1 2 |

`x` |
a vector containing the |

`y` |
a vector containing the |

`z` |
a matrix containing the |

`xlim` |
vector of length 2 giving lower and upper limit for range |

`ylim` |
vector of length 2 giving lower and upper limit for range of |

`nx` |
output grid dimension in |

`ny` |
output grid dimension in |

`dx` |
output grid spacing in |

`dy` |
output grid spacing in |

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

and `contour`

:

`x` |
vector of |

`y` |
vector of |

`z` |
matrix of interpolated data for the output grid. |

Use `interp`

for the general case of irregular gridded data!

Pascal Getreuer, Linear Methods for Image Interpolation, Image Processing On Line, 2011, http://www.ipol.im/pub/art/2011/g_lmii/article.pdf

1 2 3 4 5 6 7 8 9 | ```
data(akima760)
# interpolate at a grid [0,8]x[0,10]
akima.bil <- bilinear.grid(akima760$x,akima760$y,akima760$z)
zmin <- min(akima.bil$z, na.rm=TRUE)
zmax <- max(akima.bil$z, na.rm=TRUE)
breaks <- pretty(c(zmin,zmax),10)
colors <- heat.colors(length(breaks)-1)
image(akima.bil, breaks=breaks, col=colors)
contour(akima.bil, levels=breaks, add=TRUE)
``` |

```
```

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.