确定 Shapefiles 的区域

5

如何确定一个shapefile的面积?

当我使用summary(data)时,它会给出面积,但是我不知道每个shapefile多边形的面积。

此外,这个面积可以转换为米吗?


在编程中,查找rgeos库中的函数gArea() - Gary Weissman
取决于坐标系。展示一下 summary(data) 实际给出的内容,或许我们可以提供更多帮助。 - Spacedman
我正在处理DIVA-GIS数据,但是无法确定面积的单位。如果信息是经纬度格式,那么使用gArea()函数时,如何知道该面积的单位? - GabrielMontenegro
2个回答

8
# load the rgeos library
library(rgeos)

# make a polygon (borrowed from ref manual for package)
sample_poly <- readWKT("POLYGON((0 1,0.95 0.31,0.59 -0.81,-0.59 -0.81,-0.95 0.31,0 1))")

# and calculate the area
gArea(sample_poly)
[1] 2.3803

从DIVA-GIS的不同国家的shapefile中,您如何确定该区域的单位? - GabrielMontenegro
@JavierM88 我建议你查看与数据集相关的文档。我不知道单位嵌入在 shapefile 文件本身的位置。 - Gary Weissman

2
data@polygons[[1]]@Polygons[[1]]@area
data@polygons[[2]]@Polygons[[1]]@area

将给出第一个和第二个多边形的区域,您可以使用for循环来获得所有内容或向我们展示名称:

names(data)

1
sapply可能比for更方便:sapply(data@polygons, function(x) x@Polygons[[1]]@area) - jbaums
1
这种方法在存在带孔的多边形时是危险的,因为它不会考虑到孔洞,从而会高估面积。 - Matifou

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接