Re: [R] control margin when plotting polygons?

From: Roger Bivand <Roger.Bivand_at_nhh.no>
Date: Sat, 12 May 2007 11:30:24 +0200 (CEST)


On Fri, 11 May 2007, Shengde Liang wrote:

>
> Hello everyone,
>
> I have some difficulties on controling the margin of a plot.
> For example, the following code from the help of maptools:
>
> library(maptools)
> xx <- readShapePoly(system.file("shapes/sids.shp", package="maptools")[1],
> IDvar="FIPSNO", proj4string=CRS("+proj=longlat +ellps=clrk66"))
> plot(xx, border="blue", axes=TRUE, las=1)
>
> There is a lot of white margin on the bottom and top of the plot and I
> want to get rid of it. I used option "usr", but it does not make any
> change.
>
> plot(xx, border="blue", axes=TRUE, las=1,usr=c(-85,-75,33,39))
> par(usr=c(-85,-75,33,39))
> plot(xx,border="blue",axes=T,las=1)
>
> Option "ylim" does not work either.

This plot method is more complicated than you can see for geographical coordinates, because the y axis is streched. But the real cause of your problem is the shape of the plot device. If you compare the output of:

png("default_size.png", pointsize=8)
par(mar=c(3,3,1,1))
plot(xx, border="blue", axes=TRUE, las=1) dev.off()
png("portrait_size.png", width=300, height=480, pointsize=8) par(mar=c(3,3,1,1))
plot(xx, border="blue", axes=TRUE, las=1) dev.off()
png("landscape_size.png", width=480, height=300, pointsize=8) par(mar=c(3,3,1,1))
plot(xx, border="blue", axes=TRUE, las=1) dev.off()

you can see that the amount of the plotting area covered by the map can be controlled to reduce the white space.

You can also use par(mar=c()) to remove margins, but then possibly without the axes, or at least watching the effects of las=. The GE_SpatialGrid() function also sets up cropping sizes for export of maps in geographical coordinates as image overlays for Google Earth, and may contain some ideas.

>
> Anyone has any idea how to do it?

The answers vary a great deal depending on needs, and are seldom completely general. For publication, editing externally may be an option.

Roger

>
> Thanks a lot.
>
> Best,
>
> Shengde Liang
>
> ______________________________________________
> R-help_at_stat.math.ethz.ch 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.
>

-- 
Roger Bivand
Economic Geography Section, Department of Economics, Norwegian School of
Economics and Business Administration, Helleveien 30, N-5045 Bergen,
Norway. voice: +47 55 95 93 55; fax +47 55 95 95 43
e-mail: Roger.Bivand_at_nhh.no

______________________________________________
R-help_at_stat.math.ethz.ch 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 Sat 12 May 2007 - 09:39:02 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 Sat 12 May 2007 - 13:31:37 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.