向空间多边形对象添加边界

时间:2014-07-15 00:00:03

标签: r gis raster

我有以下SpatialPolygonsDataFrame

require(raster)
usa <- getData('GADM', country='USA', level=2)
metro <- subset(usa, NAME_1=="Nebraska" & NAME_2 %in% c("Dodge","Douglas","Sarpy","Washington"))
plot(metro)

Plot of Omaha, NE metro

我希望能够复制以下地图边界(由颜色定义):

enter image description here

有谁知道一个好的攻击计划?我意识到这是一个有点手动的过程。我已经下载了所有美国人口普查文件,这些文件都是更详细的地理位置。我希望可以汇总一个更详细的地理位置来回答上述问题,但不幸的是,这些地区并没有相同的排列。

那里是否有R功能有助于协助这个手动过程?至少,我希望能够利用4县地区的周边。

1 个答案:

答案 0 :(得分:1)

使用writeOGR包中的rgdal创建metro对象的shapefile。然后安装免费的开源GIS QGIS(http://www.qgis.org/),并将shapefile作为新层加载。

然后你可以编辑图层,添加新的多边形,编辑线等,然后保存为shapefile以读回R。

此外,您可以对图像进行“地理配准”(通过识别图像上已知的lat长点)并将其作为栅格图层加载到QGIS中。这样可以更轻松地将新区域数字化。您需要的只是特定点的几个纬度坐标,例如多边形或线交叉点的角落,然后QGIS有一个可以执行此操作的地理配准插件。

我认为您不会发现任何R代码适合在QGIS上像数字化新几何图形。

半小时后(二十年的经验,不是所有你需要的)我得到了这个:

qgis screenshot

我并没有准确地将你的新界限数字化,只是为了速度。 QGIS屏幕上显示了四个都市区域下的五个彩色区域。

第一步是地理配准。这个screengrab显示了PNG是如何进行地理配准的 - 红线是PNG通过匹配控制点转换为GeoTIFF后在PNG上绘制透明度的都市区形状文件。

enter image description here

然后,第二步使用QGIS编辑工具分割,连接和创建新多边形。然后我只是给它们着色并添加标签以使其漂亮。

我可能会把这些文件捆绑起来供你吃,但它真的不需要那么久,你会从中学到很多东西。此外,这可能是一个gis.stackexchange.com问题......