Re: [Rd] Inconsistencies in device_Raster when axes are reflected

From: Paul Murrell <>
Date: Thu, 12 Jan 2012 15:58:08 +1300


On 12/01/2012 7:11 a.m., Sharpie wrote:
> I noticed some undocumented and inconsistent behavior in device_Raster when a
> plot is produced with reflected axes such as:
> image(volcano, xlim = c(1,0), useRaster = TRUE)
> image(volcano, ylim = c(1,0), useRaster = TRUE)
> The `pdf` device will perform horizontal and vertical reflections, while
> `quartz` will ignore the transformations when plotting to the screen, but
> when plotting to a file, `quartz(file = 'test.pdf', type = 'pdf')`, it will
> produce horizontal reflections and ignore vertical ones.
> When the `xlim` or `ylim` is reversed, negative widths and heights are
> passed to the C function `device_Raster`, which is not a behavior documented
> in `R_ext/GraphicsDevice.h`. Also, the values of `x` and `y` passed to
> `device_Raster` will be shifted by the width or height of the image such
> that the coordinates no longer reference the bottom-left corner of the image
> as `R_ext/GraphicsDevice.h` says they should.
> Given the inconsistencies in documentation and behavior, I am wondering what
> the intended behavior of `device_Raster` is in this situation.

I think the problem is that I just failed to anticipate this situation (i.e., the current documentation and behaviour both assume xlim[1] < xlim[2] and ylim[1] < ylim[2]).

Will take a look at where to apply a fix (EITHER allow the API to be more flexible [allow negative 'width' and 'height' and 'x' and 'y' to be other than left-bottom], which will require complicating the code in some devices OR keep the API fixed and complicate the graphics engine code instead). The rotation argument adds an interesting twist ...

Thanks for the report!


> Thanks!
> -Charlie
> -----
> Charlie Sharpsteen
> Undergraduate-- Environmental Resources Engineering
> Humboldt State University
> --
> View this message in context:
> Sent from the R devel mailing list archive at
> ______________________________________________
> mailing list

Dr Paul Murrell
Department of Statistics
The University of Auckland
Private Bag 92019
New Zealand
64 9 3737599 x85392

______________________________________________ mailing list
Received on Thu 12 Jan 2012 - 03:32:22 GMT

This quarter's messages: by month, or sorted: [ by date ] [ by thread ] [ by subject ] [ by author ]

All messages

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Thu 12 Jan 2012 - 20:20:09 GMT.

Mailing list information is available at Please read the posting guide before posting to the list.

list of date sections of archive