On 5/20/08, Joshua Hertlein <[EMAIL PROTECTED]> wrote:
>
>  Hello,
>
>   I am very interested in "banking to 45 degrees" as defined by William S. 
> Cleveland
> in "Visualizing Data."  I like to do it in R as well as Excel, etc.  With R I 
> have come
> across the following method:
>
>  xyplot(x, y, aspect="xy")       (part of "lattice" package)
>
>  which will bank my graph to 45 degrees.  My question is how do I obtain the
> aspect ratio that banks this graph to 45 degrees?  I understand that R does it
> for me, but I would like to explicitly know the aspect ratio so that I can 
> configure
> other graphs in Excel or other software.


> foo <- xyplot(sunspot.year ~ 1700:1988, type = "l", aspect = "xy")
> foo$aspect.ratio
[1] 0.04554598


>  aspect ratio = v / h    (v is vertical distance of plot, h is horizontal 
> distance of plot.
> NOT in the data units, but true, actual distance).
>
>  I've also come across "banking ()", but I don't understand it, nor the 
> significance
> of the value it returns.  Regardless, it doesn't seem to be the aspect ratio 
> that
> I am looking for.

banking(dx, dy) basically gives you the median of abs(dy/dx). The idea
is that dx and dy define the slopes of the segments you want to bank
(so typically, dx = diff(x) and dy = diff(y) if x and y are the data
you want to plot). banking() gives you a single (summary) slope; you
then choose the aspect ratio of your plot so that this slope (in the
data coordinates) has a physical slope of 1. To do this, you solve an
equation involving the data range in the x- and y-axes of your plot.

-Deepayan

______________________________________________
R-help@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.

Reply via email to