我在将 .shp(esri 形状文件)读入 R 时遇到了困难。我在 R 中尝试了几个选项,并尝试将 ArcMap 中的形状文件转换为可以在形状文件中正确读取但没有任何效果的文件。(在 ArcMap 中,我更正了几何,从单面转换为多面等,这可能不是必需的或相关的)
这可能与我的形状文件包含“区域”(多多边形)而不是“多边形”的事实有关......
如何在 R 中正确读取该类型的形状文件以进行绘图?(在 ArcMap 中看起来像一个正常的形状)
在 ArcMap 中,形状文件如下所示: http ://bfast.r-forge.r-project.org/arcmapshape.jpg
(显示一个形状文件,其中包含其他多边形内的多边形)
在 R 中,它看起来像这样:
(显示一些多边形被错误填充的形状文件)
我在 R 中使用了以下代码:
require(maptools)
require(rgdal)
newproj <- "+proj=utm +zone=55 +south +ellps=GRS80 +units=m"
shape<- readShapeSpatial(pdir, proj4string = CRS(newproj),repair=TRUE,force_ring=T,verbose=TRUE) # without any errors
plot(shape, col="gray",border="blue", axes=TRUE)
# via rgdal
folder <- c("spatial")
lyr <- c("clipped_forest_mga")
shp <- readOGR(dsn=folder,layer=lyr)
plot(shp, col="gray",border="blue", axes=TRUE)
两个 plot() 命令给出相同的 R 结果。不会发生错误。只有以下消息
OGR data source with driver: ESRI Shapefile
Source: "P:/Victoria_DSE/BFAST_spatial/vector/PLM_excl_fire03_09_GDA94LL/mgaz94z55/clipped_EG", layer: "clipped_forest_mga"
with 1 features and 4 fields
Feature type: wkbMultiPolygon with 2 dimensions
如何解决?