2017-02-08 3 views
0

У меня есть список, содержащий объекты GeoJSON как так:Преобразование точки геометрии из GeoJSON широты и долготы

{ 
    "type": "Feature", 
    "properties": { 
     "ListEntry": 1440052.000000, 
     "Name": "Edmonton War Memorial", 
     "Location": "Enfield, London, N9", 
     "Grade": "II", 
     "ListDate": "2017\/01\/13", 
     "AmendDate": null, 
     "LegacyUID": null, 
     "NGR": "TQ3435693567", 
     "CaptureSca": "1:1250", 
     "Easting": 534356.190450, 
     "Northing": 193567.535720 
    }, 
    "geometry": { 
     "type": "Point", 
     "coordinates": [ 
      534356.190499999560416, 
      193567.535700000822544 
      ] 
    } 
} 

повторно ключ geometry, как можно преобразовать coordinates к традиционной широты и долготы, в идеале Python?

Большое спасибо.

ответ

0

Не похоже, что в этой записи достаточно информации для преобразования в широту и долготу. Для этого вам также понадобится система координат координат точек. Но, если предположить, что в формате GeoJSON сохраняется в файле «points.json», и вы знаете код EPSG, соответствующий системе отсчета координат, вы могли бы сделать что-то вроде:

import geopandas as gp 
gdf = gp.read_file("points.json") 
epsg_code = 32630    # my guess based on a quick search, but evidently wrong 
gdf.crs = {"init": "epsg:{}".format(epsg_code)} 
gdf_reprojected = gdf.to_crs({"init": "epsg:4326"}) 

Точки в gdf_reprojected бы по долготе/широта.

+0

Большое спасибо, что сработало –