Re: Problem with transformation rules in Plot
- To: mathgroup at smc.vnet.net
- Subject: [mg48510] Re: Problem with transformation rules in Plot
- From: Jens-Peer Kuska <kuska at informatik.uni-leipzig.de>
- Date: Fri, 4 Jun 2004 04:49:24 -0400 (EDT)
- Organization: Universitaet Leipzig
- References: <c9k462$fho$1@smc.vnet.net>
- Reply-to: kuska at informatik.uni-leipzig.de
- Sender: owner-wri-mathgroup at wolfram.com
Hi,
and
Plot[Evaluate[{f[x],g[x]}/.{a->1}] , {x,0,1}]
will work, because Plot[] has te attribute HoldAll
Regards
Jens
Alain Cochard wrote:
>
> Hello. I would be grateful if someone could explain to me the
> following behavior (i.e., is it normal? why?), or point me to a
> relevant part of a manual:
>
> Mathematica 4.0 for Linux
> Copyright 1988-1999 Wolfram Research, Inc.
> -- Motif graphics initialized --
>
> In[1]:= f[x_]:=a x ; g[x_]:=2 a x ;
>
> In[2]:= Plot[ f[x]/.{a->1} , {x,0,1}] (* Fine *)
>
> Out[2]= -Graphics-
>
> In[3]:= {f[x],g[x]}/.{a->1}
>
> Out[3]= {x, 2 x} (* Fine, just checking *)
>
> In[4]:= Plot[{f[x],g[x]}/.{a->1} , {x,0,1}]
>
> Plot::plnr: {f[x], g[x]} /. {a -> 1} is not a machine-size real number at x =
> -8
> 4.16667 10 .
>
> Plot::plnr: {f[x], g[x]} /. {a -> 1} is not a machine-size real number at x =
> 0.040567.
>
> Plot::plnr: {f[x], g[x]} /. {a -> 1} is not a machine-size real number at x =
> 0.0848088.
>
> General::stop: Further output of Plot::plnr
> will be suppressed during this calculation.
>
> Out[4]= -Graphics-
>
> (* So the question is: why does it work for f[x] alone, and not for
> f[x] and g[x]? *)
>
> (* The following works fine, but is there a better workaround? *)
>
> In[5]:= data={a->1} ; Plot[{ f[x]/.data , g[x]/.data }, {x,0,1}]
>
> Many thanks in advance,
> Alain Cochard