[R] how to plot two surfaces with lattice::wireframe
Carl Witthoft
carl at witthoft.com
Sat Oct 15 18:15:30 CEST 2011
Thank you! That bit about "Re(z) + Im(z)" was what I missed.
Carl
On 10/15/11 12:00 PM, Deepayan Sarkar wrote:
> On Fri, Oct 14, 2011 at 3:07 AM, Carl Witthoft<carl at witthoft.com> wrote:
>> 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
>
> This is reasonably simple:
>
> fz<- matrix(complex(real = 1:100, imaginary = 101:200), 10, 10)
>
> zr<- as.vector(row(fz))
> zc<- as.vector(row(fz))
> wireframe(Re(fz) + Im(fz) ~ zr + zc)
>
> The as.vector() are needed because matrix x and y in the formula have
> a special meaning.
>
> -Deepayan
>
--
Sent from my Cray XK6
"Pendeo-navem mei anguillae plena est."
More information about the R-help
mailing list