[R] equal horizontal and vertical proportions in graphics

Jim Lemon jim at bitwrit.com.au
Tue Nov 19 12:27:55 CET 2013


On 11/19/2013 01:03 PM, Mercutio Florid wrote:
> I use several different versions of R, including RGui on Windows and rstudio on Linux.  In all cases, I use graphical commands, such as image().
>
> image() displays rectangles, but I want to be able to guarantee that the heights of those rectangles will always equal the widths.  Typically, the rectangles come out with notable asymmetries.
>
> Thus, if I need to draw a perfect circle with square pixels, I usually get a squashed ellipse with oblong pixels.
>
> I have experimented with other commands, and I don't need to continue to use image() if some other command would be more suitable.
>
Hi Mercutio,
If you have matrices with equal numbers of rows and columns, try:

par(pty="s")

to get a square plot. If the number of rows and columns differ you will 
have to adjust the width and height of the graphic device and the 
margins to get squares. For getting circles regardless of plot 
dimensions, try draw.circle in the plotrix package.

Jim



More information about the R-help mailing list