Re: [Rd] pairs, par

From: Tony Plate <tplate_at_acm.org>
Date: Mon, 29 Oct 2007 10:56:49 -0600

I would look into the code for pairs(). Among other things, it sets and restores par(mfrow=...). I suspect this is the relevant issue, not the use of pairs(). I would try to figure out what state a graphics device is in after resetting par("mfrow"). When I try the following (R 2.6.0 patched, under Windows), I see a line on the plot, but not in a place that corresponds to the axis that were drawn by the 'plot()' command:

 > par(mfrow=c(2,2))
 > plot(1:2)
 > par(mfrow=c(1,1))
 > lines(1:2,1:2)
 >

(and if you want to be able to set up a new coordinate system on the plotting device to draw on top of the plot left by pairs(), look at par("new") & something like plot(0:1, type='n', axes=F, xlab=""))

hope this helps,

Tony Plate

Oliver Soong wrote:
> Hi,
>
> I posted over at R-help, and didn't get a response, but perhaps that
> was the wrong forum for this question. I'm having some confusion over
> the coordinate system after using pairs. I'm not interested in the
> content of the actual pairs plot, although the number of pairs seems
> to matter a bit. I'm purely interested in knowing where subsequent
> points will be plotted on the device. However, after using pairs, the
> par information (omd, fig, plt, and usr) don't reflect what points
> does. For example:
>
> pairs(iris[1:5])
> par(xpd = NA)
> points(0 - 0.01 * 1:100, 0 - 0.01 * 1:100)
> points(0 - 0.01 * 1:100, 1 + 0.01 * 1:100)
> points(1 + 0.01 * 1:100, 0 - 0.01 * 1:100)
> points(1 + 0.01 * 1:100, 1 + 0.01 * 1:100)
> par(c("omd", "fig", "plt", "usr"))
>
> The resulting plot shows that the corners of the are approximately
> 0.05 user coordinate units from the boundaries of the plot region.
> According to par, though, there is a margin around the plotting region
> that is clearly not symmetric and does not correspond to around 0.05
> units.
>
> If we use pairs(iris[1:2]) and repeat the rest, the corners are now
> 0.02 user coordinate units. par provides the same information as
> before.
>
> So:
> 1. How do I figure out where coordinates I give to points will display
> on the figure?
> 2. More generally (for my own understanding), why does the par
> information not do what I expect? Do I have some fundamental
> misunderstanding of the arrangement of plotting, figure, display, and
> margin regions within the device? Is there a bug in pairs and/or par?
>
> I'm using R 2.5.1, and this behavior occurs on a fresh R console.
>
> Thanks!
>
> Oliver
>
>
>



R-devel_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel Received on Mon 29 Oct 2007 - 18:03:42 GMT

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 Tue 30 Oct 2007 - 03:46:12 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-devel. Please read the posting guide before posting to the list.