优步h3能以六角形网格覆盖全球吗?

编程入门 行业动态 更新时间:2024-10-23 22:26:11
本文介绍了优步h3能以六角形网格覆盖全球吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

优步发布了h3,这是一个高效处理地理空间文件中大数据的框架。使用h3,我尝试获得如图所示的六边形网格位置。 (eng.uber/h3/)

我从以下代码中获得了六边形网格的位置。然后我把它画在一张二维地图上,看看它是否覆盖了整个地球。但是,我在边界(-90°、90°、-180°、180°)上得不到有效的六边形。而且它似乎并没有覆盖整个全球。 (hexagonal grid)

from h3 import h3 import folium # Polyfill a Geo Json with hexagons geoJson1 = {'type': 'Polygon', 'coordinates': [[[90,-180],[90,0],[-90,0],[-90,-180]]]} geoJson2 = {'type': 'Polygon', 'coordinates': [[[90,0],[90,180],[-90,180],[-90,0]]]} hexagons = list(h3.polyfill(geoJson1, 1)) + list(h3.polyfill(geoJson2, 1)) # Plot hexagons polylines = [] for hex in hexagons: polygons = h3.h3_set_to_multi_polygon([hex], geo_json=False) outlines = [loop for polygon in polygons for loop in polygon] polyline = [outline + [outline[0]] for outline in outlines][0] polylines.append(polyline) base = folium.Map([0,0], zoom_start=2, tiles='cartodbpositron') for polyline in polylines: m = folium.PolyLine(locations=polyline, weight=1, color='black') base.add_child(m) m.save('test.html')

我想要覆盖整个地球的六边形的位置。在这种情况下,我使用h3,但我不在乎如何,只要我能得到这个职位。

推荐答案

是的,H3覆盖全球。您在该图像中看到的是渲染伪像-根据您在平面投影中渲染全局栅格的方式,您可能会在两极或反偏线上获得类似的伪像。例如,请参见this map以获得H3的投影,该投影可在反偏线上正确呈现,尽管它在两极周围仍有一些问题。

更多推荐

优步h3能以六角形网格覆盖全球吗?

本文发布于:2023-11-30 02:44:33,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1648452.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:网格   全球

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!