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