geo_point_to_h3cell()

计算地理位置的 H3 单元格令牌字符串值。

详细了解 H3 单元格

语法

geo_point_to_h3cell(longitude,latitude, [ resolution ])

详细了解语法约定

参数

客户 类型​​ 必需 说明
longitude real 地理空间坐标经度值(度)。 有效值为 [-180, +180] 范围内的实数。
latitude real 地理空间坐标纬度值(度)。 有效值为 [-90, +90] 范围内的实数。
resolution int 定义所请求的单元格分辨率。 支持的值范围为 [0, 15]。 如果未指定,则使用默认值 6

返回

给定地理位置的 H3 单元格令牌字符串值。 如果坐标或级别无效,则查询将生成空结果。

注意

  • H3 单元格是一个有用的地理空间聚类分析工具。
  • H3 单元格共有 16 个级别,面积从最高 0 层的 4,250,547km² 到最低 15 层的 0.9m²。
  • H3 单元具有独特的六边形形状,这导致其拥有一些独特的属性:
  • 六边形有 6 个邻域
  • 六边形使我们可以轻松地估算半径,并且所有邻域都是等距的
  • 六边形在视觉上赏心悦目
  • 在一些罕见的情况下,形状是五边形。
  • H3 单元格在平面上有一个矩形区域。
  • 对通过经度 x 和纬度 y 计算的 H3 单元格令牌字符串调用 geo_h3cell_to_central_point() 函数,不一定返回 x 和 y。
  • 有可能两个地理位置非常接近,但有不同的 H3 单元格令牌。

每个分辨率值的 H3 单元格近似面积覆盖率

Level 平均六边形边长
0 1108 km
1 419 km
2 158 km
3 60 km
4 23 km
5 8 km
6 3 km
7 1 km
8 460 m
9 174 m
10 66 m
11 25 m
12 9 m
13 3 m
14 1 m
15 0.5 m

表源可以在此 H3 单元格统计资源中找到。

另请参阅 geo_point_to_s2cell()geo_point_to_geohash()

用于与其他可用网格系统进行比较。 请参阅使用 Kusto 查询语言进行地理空间聚类分析

示例

print h3cell = geo_point_to_h3cell(-74.04450446039874, 40.689250859314974, 6)

输出

h3cell
862a1072fffffff

以下示例查找坐标组。 组中的每对坐标都位于 H3 单元格中,平均六边形面积为 253 km²。

datatable(location_id:string, longitude:real, latitude:real)
[
    "A", -73.956683, 40.807907,
    "B", -73.916869, 40.818314,
    "C", -73.989148, 40.743273,
]
| summarize count = count(),                                         // Items per group count
            locations = make_list(location_id)                       // Items in the group
            by h3cell = geo_point_to_h3cell(longitude, latitude, 5)  // H3 Cell of the group

输出

h3cell 计数 locations
852a100bfffffff 2 [
"A",
"B"
]
852a1073fffffff 1 [
"C"
]

由于坐标输入无效,以下示例生成空结果。

print h3cell = geo_point_to_h3cell(300,1,8)

输出

h3cell

由于级别输入无效,以下示例生成空结果。

print h3cell = geo_point_to_h3cell(1,1,16)

输出

h3cell

由于级别输入无效,以下示例生成空结果。

print h3cell = geo_point_to_h3cell(1,1,int(null))

输出

h3cell