Message-ID: <4E98309E.8080206@witthoft.com>
Date: 2011-10-14T12:52:46Z
From: Carl Witthoft
Subject: how to plot two surfaces with lattice::wireframe
In-Reply-To: <4E980506.20201@uke.de>
No, the point of my question is how to plot the Re and Im parts as two
separate surfaces in one chart.
On 10/14/11 5:46 AM, Eik Vettorazzi wrote:
> Hi Carl,
> I have no idea what z or f(z) are, but maybe outer will help you:
>
> wireframe(outer(seq(0,5,length.out=50),seq(2,4,length.out=40),function(x,y)sin(x*y)))
>
> cheers.
>
> Am 13.10.2011 23:37, schrieb Carl Witthoft:
>> Hi all,
>> I'd like to plot the Real and Imaginary parts of some f(z) as two
>> different surfaces in wireframe (the row/column axes are the real and
>> imag axes). I know I can do it by, roughly speaking, something like
>>
>> plotz<- expand.grid(x={range of Re(z)}, y={range of Im(z), groups=1:2)
>> plotz$func<-c(Re(f(z),Im(f(z))
>> wireframe(func~x*y,data=plotz,groups=groups)
>>
>> But that seems like a clunky way to go, especially if I happen to have
>> started out with a nice matrix of the f(z) values.
>>
>> So, is there some simpler way to write the formula in wireframe? I
>> envision, for a matrix of complex values zmat, pseudocode:
>>
>> wireframe(c(Re(zmat),Im(zmat), groups=1:2)
>>
>> -- and yes, I'm fully aware that without a connection between the
>> 'groups' variable and zmat, this won't work as written.
>>
>> All suggestions (including "read the help file for {some lattice func I
>> didn't know about} ) greatfully accepted.
>>
>> Carl
>
>
--
-----
Sent from my Cray XK6