# [R] How to draw the graph of f(x,y) = x * y ?

Paul Smith phhs80 at gmail.com
Wed Sep 24 18:56:34 CEST 2008

```On Wed, Sep 24, 2008 at 4:14 PM, Farley, Robert <FarleyR at metro.net> wrote:
> You could always try
>  F(x,y) = f(x) + 0*y
>
> That is "zero out" the degenerate dimensions.  Of course you'll be
> plotting what is essentially a two dimensional object as if it were
> three dimensional.  The degeneracy in y means a 2-D curve will be
> "extruded" along the Y dimension.
>
> -----Original Message-----
> From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org]
> On Behalf Of Paul Smith
> Sent: Wednesday, September 24, 2008 06:20
> To: r-help at stat.math.ethz.ch
> Subject: Re: [R] How to draw the graph of f(x,y) = x * y ?
>
> On Wed, Sep 24, 2008 at 4:05 AM, Ben Bolker <bolker at ufl.edu> wrote:
>>> The function curve() draws the graph of functions from R to R. Is
>>> there some homologous function to curve() to draw functions from R^2
>>> to R?
>>
>>  There is a curve3d function in the emdbook package on CRAN.
>
> Thanks, Ben and Robin. I think curve3d should be included in the base
> of R. It would help many users, I believe.
>
> I do not know whether curve3d could be extended to draw constant
> functions and functions like f(x,y) = x. With the current version, I
> get the following:
>
>> curve3d(1)
> Error in curve3d(1) :
>  'expr' must be a function or an expression containing 'x' and 'y'
>> curve3d(x)
> Error in eval(expr, envir, enclos) : could not find function "x"
>>

Thanks, Robert. your suggestion works to plot

f(x,y) = x + 0*y,

but it does not work in the case of

f(x,y) = 1 + 0*x +0*y.

Paul

```