Freigeben über


geo_geohash_neighbors()

Gilt für: ✅Microsoft Fabric✅Azure Data ExplorerAzure MonitorMicrosoft Sentinel

Berechnet Geohash-Nachbarn.

Weitere Informationen zu geohash.

Syntax

geo_geohash_neighbors(Geohash)

Erfahren Sie mehr über Syntaxkonventionen.

Parameter

Name Type Erforderlich Beschreibung
Geohash string ✔️ Ein Geohash-Wert, wie er durch geo_point_to_geohash()berechnet wurde. Die Geohash-Zeichenfolge muss zwischen 1 und 18 Zeichen bestehen.

Gibt zurück

Ein Array von Geohash-Nachbarn. Wenn der Geohash ungültig ist, erzeugt die Abfrage ein NULL-Ergebnis.

Beispiele

Im folgenden Beispiel werden Geohash-Nachbarn berechnet.

print neighbors = geo_geohash_neighbors('sunny')

Output

Nachbarn
["sunnt","sunpj","sunnx","sunpn","sunnv","sunpp","sunnz","sunnw"]

Im folgenden Beispiel wird ein Array von Eingabe-Geohash mit seinen Nachbarn berechnet.

let geohash = 'sunny';
print cells = array_concat(pack_array(geohash), geo_geohash_neighbors(geohash))

Output

Zellen
["sunny","sunnt","sunpj","sunnx","sunpn","sunnv","sunpp","sunnz","sunnw"]

Im folgenden Beispiel werden Geohash-Polygone GeoJSON-Geometrieauflistung berechnet.

let geohash = 'sunny';
print cells = array_concat(pack_array(geohash), geo_geohash_neighbors(geohash))
| mv-expand cells to typeof(string)
| project polygons = geo_geohash_to_polygon(cells)
| summarize arr = make_list(polygons)
| project geojson = bag_pack("type", "Feature","geometry", bag_pack("type", "GeometryCollection", "geometries", arr), "properties", bag_pack("name", "polygons"))

Output

geojson
{"type": "Feature","geometry": {"type": "GeometryCollection","geometries": [
{"type":"Polygon","coordinates":[[42.45117171875,23.6865234375],[42.4951171875,23.6865234375],[42.4951171875,23.73046875],[42.451171875,23.73046875],[42.451171875,23.6865234375]]]},
{"type":"Polygon","coordinates":[[42.4072265625,23.642578125],[42.45117171875,23.642578125],[42.451171875,23.6865234375],[42.4072265625,23.6865234375],[42.4072265625,23.642578125]]]},
{"type":"Polygon","coordinates":[[42.4072265625,23.73046875],[42.45117171875,23.73046875],[42.451171875,23.7744140625],[42.4072265625,23.7744140625],[42.4072265625,23.73046875]]]},
{"type":"Polygon","coordinates":[[42.4951171875,23.642578125],[42.5390625,23.642578125],[42.5390625,23.6865234375],[42.4951171875,23.6865234375],[42.4951171875,23.642578125]]]},
{"type":"Polygon","coordinates":[[42.451171875,23.73046875],[42.495117171875,23.73046875],[42.4951171875,23.7744140625],[42.451171875,23.7744140625],[42.45117171875,23.73046875]]]},
{"type":"Polygon","coordinates":[[42.4072265625,23.6865234375],[42.451171875,23.6865234375],[42.451171875,23.73046875],[42.4072265625,23.73046875],[42.4072265625,23.6865234375]]]},
{"type":"Polygon","coordinates":[[42.4951171875,23.73046875],[42.5390625,23.73046875],[42.5390625,23.7744140625],[42.4951171875,23.7744140625],[42.4951171875,23.73046875]]]},
{"type":"Polygon","coordinates":[[42.4951171875,23.6865234375],[42.5390625,23.6865234375],[42.5390625,23.73046875],[42.4951171875,23.73046875],[42.4951171875,23.6865234375]]]},
{"type":"Polygon","coordinates":[[42.45117171875,23.642578125],[42.495117171875,23.642578125],[42.4951171875,23.6865234375],[42.451171875,23.6865234375],[42.451171875,23.642578125]]]}},
"properties": {"name": "polygons"}}

Im folgenden Beispiel werden polygonale Vereinigungen berechnet, die Geohash und seine Nachbarn darstellen.

let h3cell = 'sunny';
print cells = array_concat(pack_array(h3cell), geo_geohash_neighbors(h3cell))
| mv-expand cells to typeof(string)
| project polygons = geo_geohash_to_polygon(cells)
| summarize arr = make_list(polygons)
| project polygon = geo_union_polygons_array(arr)

Output

Polygon
{"type":"Polygon","coordinates":[[[42.4072265625,23.642578125],[42.451171875,23.642578125],[42.4951171875,23.642578125],[42.5390625,23.642578125],[42.5390625,23.686523437500004],[42.5390625,23.730468750000004],[42.5390625,23.7744140625],[42.4951171875,23.7744140625],[42.451171875,23.7744140625],[42.407226562499993,23.7744140625],[42.4072265625,23.73046875],[42.4072265625,23.6865234375],[42.4072265625,23.642578125]]]}

Das folgende Beispiel gibt "true" aufgrund der ungültigen Geohash-Tokeneingabe zurück.

print invalid = isnull(geo_geohash_neighbors('a'))

Output

Ungültig
1