On Wed, 28 Sep 2011, Jean V Adams wrote: > I want to overlay a small inset map on top of another map, but I can't > figure out how to do it. > For example, here are two different maps: > > # map 1 - Ohio > map("state", region= "ohio") > > # map 2 - US with Ohio darkened > map("state") > map("state", region="ohio", fill=T, add=T) > > I would like to add map 2 as a small inset in the corner of map 1. > I have tried: > > map("state", region= "ohio") > par(new=TRUE, mar=c(3, 3, 15, 15)) > map("state") > map("state", region="ohio", fill=T, add=T) > > but this seems to erase map 1 and replace it with a full size version of > map 2. > > I can successfully overlay an unrelated plot using similar code: > > map("state", region= "ohio") > par(new=TRUE, mar=c(3, 3, 15, 15)) > plot(1:10, 1:10) > > So, there must be something about the maps() function that I'm tripping > over.
I think the problem is that map() 'insists' (in some sense) on a clean frame so it can get the aspect ratio right. > > Any suggestions? > How about something like: map("state", region= "ohio", xlim=c(-85, -80), ylim=c(38, 42)) par(usr=c(-216, -66, 24, 144)) # you should be able to 'automate' this calculation map("state", add=T) map("state", region="ohio", fill=T, add=T) HTH Ray Brownrigg > I am using R for Windows 2.13.0 > and the maps package version 2.1-5. > > Jean > > > `�.,, ><(((�> `�.,, ><(((�> `�.,, ><(((�> > > Jean V. Adams > Statistician > U.S. Geological Survey > Great Lakes Science Center > 223 East Steinfest Road > Antigo, WI 54409 USA ______________________________________________ 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.