geo_point_to_s2cell()
Platí pro: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Vypočítá hodnotu řetězce tokenu buňky S2 zeměpisného umístění.
Přečtěte si další informace o hierarchii buněk S2. Buňka S2 může být užitečným geoprostorovým clusteringovým nástrojem. Buňka S2 je buňka na kulové ploše a má geodesické hrany. Buňky S2 jsou součástí hierarchie, která rozděluje povrch Země. Mají maximálně 31 úrovní, od nuly do 30, které definují, kolikrát je buňka rozdělena. Úrovně se pohybují od největšího pokrytí na úrovni nuly s pokrytím plochy 85 011 012,19 km² až po nejnižší pokrytí 0,44 cm² na úrovni 30. Vzhledem k tomu, že buňky S2 jsou rozděleny na vyšších úrovních, centrum buněk je zachováno dobře. Dvě geografická umístění mohou být velmi blízko sebe, ale mají různé tokeny buněk S2.
Poznámka:
Pokud vyvoláte funkci geo_s2cell_to_central_point() u řetězce tokenu buňky S2 vypočítaného podle délky x a zeměpisné šířky y, funkce nemusí nutně vracet x a y.
Přečtěte si další informace o hierarchii buněk S2.
Syntaxe
geo_point_to_s2cell(
zeměpisná šířka,
,
[ úroveň ])
Přečtěte si další informace o konvencích syntaxe.
Parametry
Název | Type | Požadováno | Popis |
---|---|---|---|
zeměpisná délka | real |
✔️ | Geoprostorová souřadnice, zeměpisná délka ve stupních. Platná hodnota je reálné číslo a v rozsahu [-180, +180]. |
zeměpisná šířka | real |
✔️ | Geoprostorová souřadnice, zeměpisná šířka ve stupních. Platná hodnota je reálné číslo a v rozsahu [-90, +90]. |
úroveň | int |
Definuje požadovanou úroveň buňky. Podporované hodnoty jsou v rozsahu [0, 30]. Pokud není zadáno, použije se výchozí hodnota 11 . |
Návraty
Hodnota řetězce tokenu buňky S2 daného zeměpisného umístění. Pokud jsou souřadnice nebo úrovně neplatné, dotaz vytvoří prázdný výsledek.
S2 buňka přibližné pokrytí oblasti na hodnotu úrovně
Pro každou úroveň je velikost buňky S2 podobná, ale není přesně stejná. Velikosti blízkých buněk mají tendenci být rovny.
Level | Minimální délka okraje náhodných buněk (UK) | Maximální délka okraje náhodných buněk (US) |
---|---|---|
0 | 7842 km | 7842 km |
0 | 3921 km | 5004 km |
2 | 1825 km | 2489 km |
3 | 840 km | 1310 km |
4 | 432 km | 636 km |
5 | 210 km | 315 km |
6 | 108 km | 156 km |
7 | 54 km | 78 km |
8 | 27 km | 39 km |
9 | 14 km | 20 km |
10 | 7 km | 10 km |
11 | 3 km | 5 km |
12 | 1699 m | 2 km |
13 | 850 m | 1225 m |
14 | 425 m | 613 m |
15 | 212 m | 306 m |
16 | 106 m | 153 m |
17 | 53 m | 77 m |
18 | 27 m | 38 m |
19 | 13 m | 19 m |
20 | 7 m | 10 m |
21 | 3 m | 5 m |
22 | 166 cm | 2 m |
23 | 83 cm | 120 cm |
24 | 41 cm | 60 cm |
25 | 21 cm | 30 cm |
26 | 10 cm | 15 cm |
27 | 5 cm | 7 cm |
28 | 2 cm | 4 cm |
29 | 12 mm | 18 mm |
30 | 6 mm | 9 mm |
Zdroj tabulky najdete ve statistickém zdroji buňky S2.
Porovnání s jinými dostupnými systémy mřížky najdete v tématu geoprostorové clusteringy s dotazovací jazyk Kusto.
Příklady
Události bouře v USA agregované podle buňky S2
Následující příklad najde události storm v USA agregované podle buněk S2.
StormEvents
| project BeginLon, BeginLat
| summarize by hash=geo_point_to_s2cell(BeginLon, BeginLat, 5)
| project geo_s2cell_to_central_point(hash)
| render scatterchart with (kind=map)
Výstup
Následující příklad vypočítá ID buňky S2.
print s2cell = geo_point_to_s2cell(-80.195829, 25.802215, 8)
Výstup
s2cell |
---|
88d9b |
Vyhledání skupiny souřadnic
Následující příklad najde skupiny souřadnic. Každá dvojice souřadnic ve skupině se nachází v buňce S2 s maximální oblastí 1632,45 km².
datatable(location_id:string, longitude:real, latitude:real)
[
"A", 10.1234, 53,
"B", 10.3579, 53,
"C", 10.6842, 53,
]
| summarize count = count(), // items per group count
locations = make_list(location_id) // items in the group
by s2cell = geo_point_to_s2cell(longitude, latitude, 8) // s2 cell of the group
Výstup
s2cell | count | umístění |
---|---|---|
47b1d | 2 | ["A","B"] |
47ae3 | 0 | ["C"] |
Prázdné výsledky
Následující příklad vytvoří prázdný výsledek z důvodu neplatného vstupu souřadnic.
print s2cell = geo_point_to_s2cell(300,1,8)
Výstup
s2cell |
---|
Následující příklad vytvoří prázdný výsledek z důvodu neplatného vstupu na úrovni.
print s2cell = geo_point_to_s2cell(1,1,35)
Výstup
s2cell |
---|
Následující příklad vytvoří prázdný výsledek z důvodu neplatného vstupu na úrovni.
print s2cell = geo_point_to_s2cell(1,1,int(null))
Výstup
s2cell |
---|