mam
- GeoPanda 0.2.1 py27_0
- fiona 1.7.0 np110py27_1
- Python 2.7.10
zainstalowany w środowisku Anaconda 2-4.1.1-Windows-x86. Potrafię budować GeoDataFrame
, odczytując wejściowe zestawy danych i operując danymi, ale zapisanie wyjściowego zestawu danych nie zachowuje układu współrzędnych.
import geopandas as gpd
world = gpd.read_file(gpd.datasets.get_path('naturalearth_lowres'))
world.to_file(driver='ESRI Shapefile',filename=r'C:\GIS\Temp\world_out.shp')
world_out.shp
Ma zawierać funkcje i schemat z shapefile źródłowego, ale układ współrzędnych jest niezdefiniowane ( <Unknown>
). world_out.prj
Plik jest 0 KB i nie zawiera niczego.
out = gpd.read_file(r'C:\GIS\Temp\world_out.shp')
print out.crs
>>> {}
Testowałem, aby wykonać tę operację przy użyciu czystej Fiony i działa dobrze, zachowując crs
informacje:
import fiona
datasrc_path = r'C:\Program Files (x86)\ArcGIS\Desktop10.4\TemplateData\TemplateData.gdb'
with fiona.drivers():
with fiona.open(datasrc_path,layer='cities') as source:
meta = source.meta
meta['driver'] = 'ESRI Shapefile'
meta['layer'] = source.name
with fiona.open(r'C:\GIS\CitiesFiona.shp', 'w', **meta) as sink:
for f in source:
sink.write(f)
CitiesFiona.prj
Plik nie zawiera informacji na temat układu współrzędnych.
Wygląda na to, że GeoPandas nie jest w stanie odczytać / zapisać crs
ramki danych w wyjściowym zbiorze danych podczas wywoływania to_file()
metody. Próbowałem powołanie to_file()
na GeoDataFrames
zbudowane z różnych źródeł i zbiorów danych oraz informacji koordynować system nigdy nie był obecny w zbiorze wyjściowym.
Czy ktoś wcześniej napotkał ten problem? Czy ktoś może to przetestować?
.prj
plik z informacjami ocrs
. Może tak być, ponieważ zaktualizowałemfiona
dofiona 1.7.0 np110py27_2
.