From: David Epstein <David.Epstein_at_warwick.ac.uk>

Date: Mon, 21 Jul 2008 10:09:51 +0100

R-help_at_r-project.org mailing list

https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code. Received on Mon 21 Jul 2008 - 09:17:01 GMT

Date: Mon, 21 Jul 2008 10:09:51 +0100

Since posting the message immediately below, I took Brian's reference to "Introduction to R" more seriously, and read through the section on graphics. There I found par(fig=c(xleft,xright,ybottom,ytop)). This seems to be "setting the device region" which Brian pointed out is a fundamental part of the process, but I haven't tried it yet. I expect this is what I need in order to make plot() do what I want.

Thanks again, especially to Brian

David

> Maybe what I am missing is how to set the "device region" mentioned

*> in Brian's email. I have tried various searches, but I haven't had
**> any luck in finding a reference to "device region". However, I'm
**> not sure that changing the device region will help if one stays
**> with plot(), because the default seems to be that the physical plot
**> region is approximately square, and I haven't found a way to
**> control the size of the physical plot region. The help files for
**> eqscplot() and xyplot() indicate that they are meant for scatter
**> plots. But lots of plots are not scatter plots. I was only using a
**> scatter plot because Rolf's code did so, and he thought I could do
**> what I wanted inside plot(), which I can't at the moment.
**>
**> Perhaps the best solution is to live with plot() as it is. If I
**> need the picture for a paper, I will export data to Matlab or
**> Mathematica or Illustrator, where I can get the control I want.
**>
**> Thanks for all your help.
**> David
**>
**> On 20 Jul, 2008, at 23:14, Prof Brian Ripley wrote:
**>
**>> Take a look at eqscplot() in package MASS for a different approach.
**>>
**>> You last para forgets that once you have set the device region and
**>> the margins the physical plot region and hence its aspect ratio is
**>> determined -- see the figures in 'An Introduction to R'.
**>>
**>> On Sun, 20 Jul 2008, David Epstein wrote:
**>>
**>>> #See David Williams' book "Weighing the odds", p286
**>>>
**>>> y <- c(1.21, 0.51, 0.14, 1.62, -0.8,
**>>> 0.72, -1.71, 0.84, 0.02, -0.12)
**>>> ybar <- mean(y)
**>>> ylength <- length(y)
**>>> ybarv <- rep(ybar, ylength)
**>>> x <- 1:ylength
**>>> plot(x,y,asp=1,xlab="position",ylab="ybar",type="n",ylim=c(-1,1))
**>>> segments(x[1], ybar, x[ylength], ybar)
**>>> segments(x,ybarv,x,y)
**>>> points(x, ybarv, pch=21, bg="white")
**>>> points(x,y,pch=19,col="black")
**>>>
**>>> With asp=1, the value of ylim seems to be totally ignored, as in
**>>> the above code. With asp not set, R plays close attention to the
**>>> value of ylim. This is not intuitive behaviour, or is it?
**>>>
**>>> How can I set the aspect ratio, and simultaneously set the plot
**>>> region? The aspect ratio is one number and the plot region is
**>>> given by four numbers (xleft, xright, yleft, yright). Logically,
**>>> these 5 numbers are independent of each other and arbitrary,
**>>> provided xleft<xright and yleft<yright. This should give a one-to-
**>>> one bijection between 5-tuples and plots, determined up to a
**>>> change of scale that is uniform in the x- and y-dirctions. My
**>>> code above shows the (to me) obvious attempt, which fails.
**>>>
**>>> Thanks
**>>> David
**>>>
**>>> ______________________________________________
**>>> R-help_at_r-project.org mailing list
**>>> https://stat.ethz.ch/mailman/listinfo/r-help
**>>> PLEASE do read the posting guide http://www.R-project.org/posting-
**>>> guide.html
**>>> and provide commented, minimal, self-contained, reproducible code.
**>>
**>> --
**>> Brian D. Ripley, ripley_at_stats.ox.ac.uk
**>> Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
**>> University of Oxford, Tel: +44 1865 272861 (self)
**>> 1 South Parks Road, +44 1865 272866 (PA)
**>> Oxford OX1 3TG, UK Fax: +44 1865 272595
*

R-help_at_r-project.org mailing list

https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code. Received on Mon 21 Jul 2008 - 09:17:01 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 Mon 21 Jul 2008 - 10:32:03 GMT.

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