# curve3d: Plot a 3D surface representing a 2D curve In emdbook: Support Functions and Data for "Ecological Models and Data"

## Description

Two-dimensional analogue of `curve`: generates a surface and plots it

## Usage

 ```1 2 3 4 5 6 7``` ```curve3d(expr, from = c(0, 0), to = c(1, 1), n = c(41, 41), xlim, ylim, add = FALSE, xlab=varnames[1], ylab=varnames[2], zlab = NULL, log = NULL, sys3d = c("persp", "wireframe", "rgl", "contour", "image", "none"), varnames=c("x","y"),use_plyr=TRUE,.progress="none",...) ```

## Arguments

 `expr` a mathematical expression using `x` and `y` as the independent variables `from` minimum values for `x` and `y` `to` maximum values for `x` and `y` `xlim` range of values for `x` `ylim` range of values for `y` `n` number of grid points in each direction `add` (logical) add to an existing plot? (only possible for contour plots or rgl) `xlab` x label `ylab` y label `zlab` z label `log` (character): `"x"`, `"y"`, or `"xy"` for logarithmic axes `sys3d` 3D plotting system to use: one of `"persp"`, `"wireframe"`, `"rgl"`, `"contour"`, `"image"`, or `"none"` `varnames` names of variables to substitute `use_plyr` use methods from the `plyr` package? `.progress` progress bar type (`"none"`, `"text"`, `"tk"`,`"win"`: see `create_progress_bar`) `...` additional arguments to the plotting functions

## Value

invisibly, a list of

 `x` x values `y` y values `z` z matrix

## Note

• You must explicitly install the `rgl` package (via `install.packages("rgl")`) before using `sys3d="persp"`.

• if you encounter the error ‘Results must have one or more dimensions’, try `use_plyr=FALSE` or use `c()` to remove attributes from the result of your expression

`outer`, `curve`

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24``` ```curve3d(cos(2*pi*x)+sin(2*pi*y/3), from=c(0,0),to=c(1,1)) x <- 1 y <- 3 curve3d(cos(2*pi*x)+sin(2*pi*y/3), from=c(0,0),to=c(1,1),sys3d="wireframe") curve3d(x*cos(2*pi*a/x)+sin(2*pi*b/y), from=c(0,0),to=c(1,1),sys3d="wireframe", varnames=c("a","b")) ## identical op <- par(mfrow=c(2,2)) curve3d(cos(2*pi*x)+sin(2*pi*y/3), from=c(0,0),to=c(1,1),sys3d="image") curve3d(x*cos(2*pi*a/x)+sin(2*pi*b/y), from=c(0,0),to=c(1,1),sys3d="image", varnames=c("a","b")) ## identical x <- 4 curve3d(cos(2*pi*a/x)+y*sin(2*pi*b/y), from=c(0,0),to=c(1,1),sys3d="image", varnames=c("a","b")) curve3d(cos(2*pi*x)+sin(2*pi*y/3), from=c(0,0),to=c(1,1),sys3d="image") curve3d(cos(2*pi*x)+sin(2*pi*y/3), sys3d="contour",add=TRUE) par(op) ```

### Example output

```
```

emdbook documentation built on May 2, 2019, 9:41 a.m.