python - H3 六边形不匹配

标签 python geospatial geojson uber-api h3

我正在尝试使用 polyfill函数与 Python 的 h3实现,但我收到了意想不到的结果。
如果我使用具有固定分辨率的函数,我可以获得并显示如上所示的多边形网格。
enter image description here
但是当我想创建一个更精确的网格时,比如 Uber 为文档制作的网格:
enter image description here
我得到了奇怪的结果。
我用与以前相同的方法创建了网格,但精度更高 (12),然后使用了 compact功能尽可能地对六边形进行分组。

hexagons = h3.polyfill(json_poly, 8, False)
hex_com = h3.compact(hexagons)
结果是这样,我可以看到一些未被任何六边形覆盖的区域。
enter image description here
关于为什么会发生这种情况的任何线索?
我使用的方法有问题吗?

最佳答案

在此处查看答案:https://github.com/uber/h3-js/issues/99#issuecomment-710659522
压缩算法本质上是一种数据压缩算法——它以压缩形式表示压缩集,可用于大面积的高效数据存储/传输,一些查找算法等。但压缩集中的单元不覆盖未压缩集的区域,如您的图像所示,因为基于六边形的网格系统的层次结构不完善。
通常,除非出于特定原因压缩数据,否则您将希望使用数据的固定分辨率表示。

关于python - H3 六边形不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64384650/

相关文章:

python-2.7 - 在 PySpark 中比较地理空间数据的最有效方法

c# - 如何在 MongoDB C# 中使用地理空间查询?

python - GeoJSON 数据未显示在 Python folium map 中

javascript - 更改 Leaflet GeoJSON 层中每个功能的样式

python - 在 Pandas DataFrame 之间匹配 ID 并应用函数

python - 使用 Spacy 模式匹配器的复杂(重复)规则

javascript - 使用地心坐标系计算纬度、经度和高度的距离

javascript - 从 GeoJson 集合中提取属性和唯一值

python - 在 Django 1.10 中制作表单并收到 CSRF 验证失败。请求已中止

python - python中不带括号的与带括号的 'for loop'之间的区别?