geo_point_to_geohash()geo_point_to_geohash()

Calcola il valore della stringa geohash per una posizione geografica.Calculates the geohash string value for a geographic location.

Scopri di più su geohash.Read more about geohash.

SintassiSyntax

geo_point_to_geohash(Longitudine , Latitudine , [accuratezza])geo_point_to_geohash(longitude, latitude, [accuracy])

ArgomentiArguments

  • Longitudine: valore Longitudine di una posizione geografica.longitude: Longitude value of a geographic location. La longitudine x sarà considerata valida se x è un numero reale e è compreso nell'intervallo [-180, + 180].Longitude x will be considered valid if x is a real number and is in the range [-180, +180].
  • Latitudine: valore di latitudine di una posizione geografica.latitude: Latitude value of a geographic location. La latitudine y sarà considerata valida se y è un numero reale e y è compreso nell'intervallo [-90, + 90].Latitude y will be considered valid if y is a real number and y is in the range [-90, +90].
  • accuratezza: valore facoltativo int che definisce l'accuratezza richiesta.accuracy: An optional int that defines the requested accuracy. I valori supportati sono compresi nell'intervallo [1, 18].Supported values are in the range [1,18]. Se non è specificato, viene usato il valore predefinito 5 .If unspecified, the default value 5 is used.

RestituisceReturns

Valore stringa geohash di una posizione geografica specificata con la lunghezza di accuratezza richiesta.The geohash string value of a given geographic location with requested accuracy length. Se la coordinata o l'accuratezza non è valida, la query produrrà un risultato vuoto.If the coordinate or accuracy is invalid, the query will produce an empty result.

Nota

  • Geohash può essere un utile strumento di clustering geospaziale.Geohash can be a useful geospatial clustering tool.
  • Geohash ha 18 livelli di accuratezza con copertura dell'area compresa tra 25 milioni km2 al livello più alto da 1 a 0,6 μ ² al livello più basso 18.Geohash has 18 accuracy levels with area coverage ranging from 25 Million km² at the highest level 1 to 0.6 μ² at the lowest level 18.
  • I prefissi comuni di geohash indicano la vicinanza dei punti l'uno all'altro.Common prefixes of geohash indicate proximity of points to each other. Più è lungo un prefisso condiviso, più vicini sono i due punti.The longer a shared prefix is, the closer the two places are. Il valore di accuratezza viene convertito nella lunghezza geohash.Accuracy value translates to geohash length.
  • Geohash è un'area rettangolare su una superficie del piano.Geohash is a rectangular area on a plane surface.
  • La chiamata della funzione geo_geohash_to_central_point () su una stringa geohash calcolata sulla longitudine x e la latitudine y non restituirà necessariamente x e y.Invoking the geo_geohash_to_central_point() function on a geohash string that was calculated on longitude x and latitude y won't necessarily return x and y.
  • A causa della definizione di geohash, è possibile che due posizioni geografiche siano molto vicine tra loro, ma che abbiano diversi codici geohash.Due to the geohash definition, it's possible that two geographic locations are very close to each other but have different geohash codes.

Copertura area rettangolare geohash per valore di accuratezza:Geohash rectangular area coverage per accuracy value:

AccuratezzaAccuracy LarghezzaWidth AltezzaHeight
11 5000 km5000 km 5000 km5000 km
22 1250 km1250 km 625 km625 km
33 156,25 km156.25 km 156,25 km156.25 km
44 39,06 km39.06 km 19,53 km19.53 km
55 4,88 km4.88 km 4,88 km4.88 km
66 1,22 km1.22 km 0,61 km0.61 km
77 152,59 m152.59 m 152,59 m152.59 m
88 38,15 m38.15 m 19,07 m19.07 m
99 4,77 m4.77 m 4,77 m4.77 m
1010 1,19 m1.19 m 0,59 m0.59 m
1111 149,01 mm149.01 mm 149,01 mm149.01 mm
1212 37,25 mm37.25 mm 18,63 mm18.63 mm
1313 4,66 mm4.66 mm 4,66 mm4.66 mm
1414 1,16 mm1.16 mm 0,58 mm0.58 mm
1515 145,52 μ145.52 μ 145,52 μ145.52 μ
1616 36,28 μ36.28 μ 18,19 μ18.19 μ
1717 4,55 μ4.55 μ 4,55 μ4.55 μ
1818 1,14 μ1.14 μ 0,57 μ0.57 μ

Vedere anche geo_point_to_s2cell ().See also geo_point_to_s2cell().

EsempiExamples

Eventi Storm Uniti aggregati da geohash.US storm events aggregated by geohash.

Geohash US

StormEvents
| project BeginLon, BeginLat
| summarize by hash=geo_point_to_geohash(BeginLon, BeginLat, 3)
| project geo_geohash_to_central_point(hash)
| render scatterchart with (kind=map) // map rendering available in Kusto Explorer desktop
print geohash = geo_point_to_geohash(139.806115, 35.554128, 12)  
geohashgeohash
xn76m27ty9g4xn76m27ty9g4
print geohash = geo_point_to_geohash(-80.195829, 25.802215, 8)
geohashgeohash
dhwfz15hdhwfz15h

Nell'esempio seguente vengono trovati gruppi di coordinate.The following example finds groups of coordinates. Ogni coppia di coordinate del gruppo risiede in un'area rettangolare di 4,88 km per 4,88 km.Every pair of coordinates in the group resides in a rectangular area of 4.88 km by 4.88 km.

datatable(location_id:string, longitude:real, latitude:real)
[
  "A", double(-122.303404), 47.570482,
  "B", double(-122.304745), 47.567052,
  "C", double(-122.278156), 47.566936,
]
| summarize count = count(),                                          // items per group count
            locations = make_list(location_id)                        // items in the group
            by geohash = geo_point_to_geohash(longitude, latitude)    // geohash of the group
geohashgeohash countcount locationslocations
c23n8c23n8 22 ["A", "B"]["A", "B"]
c23n9c23n9 11 ["C"]["C"]

Nell'esempio seguente viene generato un risultato vuoto a causa dell'input della coordinata non valido.The following example produces an empty result because of the invalid coordinate input.

print geohash = geo_point_to_geohash(200,1,8)
geohashgeohash

Nell'esempio seguente viene generato un risultato vuoto a causa dell'input di accuratezza non valido.The following example produces an empty result because of the invalid accuracy input.

print geohash = geo_point_to_geohash(1,1,int(null))
geohashgeohash