1

我正在尝试在另一个已经使用 R 的彩色多边形的 shapefile 之上绘制多边形的 shapefile,并且我正在使用 maptools 和 rgdal。我想将底部 shapefile(具有多个多边形)剪辑到由顶部 shapefile 分隔的区域,顶部 shapefile 具有四个多边形(我认为)。我知道如何填充顶部多边形的内部,当然,通过使用 plot() 中的 col= 命令。但我想要做的是将顶部多边形的外部填充为白色,并通过顶部多边形的内部使底部彩色多边形可见。在我能够做到这一点之后,我将重新绘制底部多边形的边界。我在 Windows 7 机器上使用 R 2.13.2 和最新版本的 maptools 和 rgdal 以及它们的所有依赖项。

我有依赖于这些 shapefile 的代码:ftp: //ftpext.usgs.gov/pub/er/wi/la.crosse/McKann/bcr%20arcinfo%20files/

library(maptools)

sm=readShapeSpatial('states.shp')
pm=readShapeSpatial('province.shp')

library(rgdal)

rgm=readOGR(dsn=wd,layer='gwwa_new_range_5Jul11')
rgm2=spTransform(rgm,CRS(proj4string(sm2)))
plot(c(-120,-61),c(35,55),type='n',axes=F,bty='n',xlab='',ylab='', main=sp)
plot(sm,col=c('red','green','yellow'),add=T)##us states
plot(pm,col=c('red','green','yellow'),add=T)##canadian provinces
plot(rgm2,lwd=2,add=T,border='blue')##gives the range of this bird

我可以使范围图的内部成为一种颜色

plot(rgm2,add=T,col='blue')

但我想做的是让外面变成白色(这样我以后可以在上面画出州和省的边界),并保持里面透明,这样我就可以看到范围内的州和省的颜色。

如果您需要更多信息,请告诉我,并提前感谢您的帮助。也许有更简单的方法...

4

0 回答 0