# Re: R-beta: image(x,y,z)?

Wed, 29 Apr 1998 09:18:09 +0930

Date: Wed, 29 Apr 1998 09:18:09 +0930
To: Thomas Lumley <thomas@biostat.washington.edu>
Subject: Re: R-beta: image(x,y,z)?
<Pine.SUN.3.95.980428084934.6577B-100000@chekov>

Thomas Lumley writes:
> On Tue, 28 Apr 1998, Bill Simpson wrote:
>
> >
> > I can get at data$x, data$y, data$z. I want to do an image > > plot. Ideally image (or a relative of image) would accept > > the vectors data$x, data$y, data$z as arguments. (After all,
> > if you can do plot(x,y) on vectors x and y, why can't you do
> > image(x,y,z) on vectors x, y, and z?) However it doesn't
> > work like that.
> >
>
> The real reason is that it isn't written that way.  There is a
> good rationalisation, though.  image() is a surface plot, not
> a 3-d scatterplot, and so it is necessary that z is defined at
> every point on the x,y grid (otherwise we don't know what
> color to plot). This is hard to ensure when you have
> image(x,y,z) for vectors
>

Interestingly enough, Tr*llis seems to be on Bill Simpson's side.
lev*lplot(), wir*frame() and contourpl*t() all require x, y and z
of equal length, *but* with the necessary grid structure, thank
you.  The first job these functions do, of course, is to collapse
x and y to short vectors and make z (effectively) a matrix.  It
seems to me the restriction is a bit unnecessary, and if the
cross structure were not there some default (or even specified)
interpolation process could be used to fudge it.

\begin{idleMusing}
Apropos of that, has any thought been given to implementing a
Tr*llis-style graphics system in R?  I presume the copyright
protection issues would be extreme (hence my paranoid caution in
not even mentioning full names...:-), but I do think the matter
is important.  I don't pretend to have a full answer to this one.
Tr*llis looks to me like about a decade's work, off an on, in the
planning and design stages and the result is wonderful.  The
designer should have full recognition of that and entitled to
copyright protection on his work, but if R is to be a modern
graphics system it has to have multi-paneled conditioning at
least.  Has anyone thought about graphics in R, perhaps with a
view to putting together a quite different scheme of high quality
graphics procedures?  Tr*llis may be excellent, but it does not
have to be unique.  I would even favour an entirely different
scheme that could stand as a real alternative to Tr*llis rather
than a simple immitator, but that is going to take real talent.
\end{idleMusing}

Bill.

--
Bill Venables, Head, Dept of Statistics,    Tel.: +61 8 8303 5418
University of Adelaide,                     Fax.: +61 8 8303 3696