[R] asp and ylim
Prof Brian Ripley
ripley at stats.ox.ac.uk
Mon Jul 21 00:14:43 CEST 2008
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
More information about the R-help
mailing list