panel.2dsmoother {latticeExtra} R Documentation

## Plot a smooth approximation of z over x and y.

### Description

Plot a smooth approximation, using `loess` by default, of one variable (`z`) against two others (`x` and `y`).

This panel function should be used with a `levelplot`.

### Usage

```panel.2dsmoother(x, y, z, subscripts = TRUE,
form = z ~ x * y, method = "loess", ...,
args = list(), n = 100)
```

### Arguments

 `x, y, z` data points. If these are missing, they will be looked for in the environment of `form`. So in many cases you can skip these if passing `form`. In fact, for convenience, the formula can be passed as the first argument (i.e. `x`). `form, method` the smoothing model is constructed (approximately) as `method(form, data = list(x=x, y=y, z=z), {args})`. See the Examples section for common choices. `subscripts` data indices for the current packet, as passed in by `levelplot`. `...` further arguments passed on to `panel.levelplot`. `args` a list of further arguments to the model function (`method`). `n` number of equi-spaced points along each of x and y on which to evaluate the smooth function.

### Details

This should work with any model function that takes a formula argument, and has a `predict` method argument.

### Author(s)

Felix Andrews felix@nfrac.org

`loess`, `panel.smoother`

### Examples

```set.seed(1)
xyz <- data.frame(x = rnorm(100), y = rnorm(100))
xyz\$z <- with(xyz, x * y + rnorm(100, sd = 1))

levelplot(z ~ x * y, xyz, panel = panel.2dsmoother)

## showing data points on the same color scale
levelplot(z ~ x * y, xyz,
panel = panel.levelplot.points, cex = 1.2) +
layer_(panel.2dsmoother(..., n = 200))

## simple linear regression model
levelplot(z ~ x * y, xyz,
panel = panel.levelplot.points) +
layer_(panel.2dsmoother(..., method = "lm"))

## GAM smoother with smoothness by cross validation
if (require("mgcv"))
levelplot(z ~ x * y, xyz, panel = panel.2dsmoother,
form = z ~ s(x, y), method = "gam")
```
[Package latticeExtra version 0.6-25 Index]