#python #arcgis
Вопрос:
Я использую модуль python arcgis
для загрузки шейп-файла, расположенного здесь: https://www.arcgis.com/home/item.html?id=2d5c785555aa4b0b946f1aa61c56274f
Мне удалось извлечь его в фрейм данных pandas, следуя документации:
Однако у меня возникли проблемы с пониманием того, как преобразовать координату типа «кольцо» x/y
в long/lat
.
Мне удобно использовать python в целом, но я полностью потерялся в документации Arcgis и не могу понять, как ее преобразовать.
Есть ли простой способ?
Единственная информация, которую я могу найти, связанная с этими «кольцами», содержится в сообщении об Android SDK.
Мой код для извлечения данных в панды:
from arcgis import GIS
import pandas as pd
gis = GIS(verify_cert=False,api_key=your_key)
# search for file by name which is National_LHO
search_result = gis.content.search(query="title:National_LHO", item_type="Feature Layer")
# get layer
layer = search_result[0].layers[0]
# dataframe from layer
df= pd.DataFrame.spatial.from_layer(layer)
# check it out
print(df.head())
FID LHO Shape__Area Shape__Length
0 1 Carlow/Kilkenny 7.053876e 09 5.924032e 05
1 2 Cavan/Monaghan 8.858580e 09 7.801971e 05
2 3 Clare 9.055446e 09 8.005301e 05
3 4 Donegal 1.467971e 10 2.135710e 06
4 5 Dublin North 1.076876e 09 3.327819e 05
SHAPE
0 {"rings": [[[-747212.35980769, 6967909.5066712...
1 {"rings": [[[-781459.713316924, 7249668.124932...
2 {"rings": [[[-1083308.07544972, 6918940.329570...
3 {"rings": [[[-912809.697847961, 7265617.367554...
4 {"rings": [[[-674539.041086896, 7057323.867987...
Возможно, какая-нибудь полезная информация. Данные, которые я скачал, имеют эту пространственную привязку: Spatial Reference: 102100 (3857)
Комментарии:
1. Если возможно использование другой библиотеки,
geopandas
можно выполнить трюк с помощьюto_crs('EPSG:4326')
метода