首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用R geosphere软件包计算多边形面积

用R geosphere软件包计算多边形面积
EN

Stack Overflow用户
提问于 2016-12-30 04:22:19
回答 1查看 1.6K关注 0票数 2

我在R中的areaPolygon函数遇到了问题,有时它似乎产生了正确的结果,有时结果似乎偏离了几个数量级。

例如,我有一个包含这些点的多边形:

代码语言:javascript
复制
lng <- c(-51.74768, -51.74768, -51.74735, -51.74735)
lat <- c(-0.1838690, -0.1840993, -0.1840984, -0.1838682)

并将它们组合到一个数据帧中

代码语言:javascript
复制
data <- data.frame(lng, lat)

然后我尝试获取区域:

代码语言:javascript
复制
area <- geosphere::areaPolygon(x = data)

总和是326928.8 m^2。

我期望在1000米^2的范围内有更多的东西。

奇怪的是,这似乎对我正在计算的大约一半的单元格起到了相当好的作用,但对另一半则不然。

similar StackOverflow question注意到奇怪的小值,这是由于点的顺序不正确。然而,当我绘制时,例如

代码语言:javascript
复制
plot(data, type="l")

多边形似乎绘制正确。

有人知道这里可能出了什么问题吗?谢谢!

EN

回答 1

Stack Overflow用户

发布于 2019-05-27 00:29:24

使用您的示例数据,结果如注释中所示。

代码语言:javascript
复制
library(geosphere)
lng <- c(-51.74768, -51.74768, -51.74735, -51.74735)
lat <- c(-0.1838690, -0.1840993, -0.1840984, -0.1838682)
d <- cbind(lng, lat)
geosphere::areaPolygon(d)
#[1] 935.2693

四舍五入发挥作用的想法似乎很牵强。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41386662

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档