j'ai
- GeoPandas 0.2.1 py27_0
- fiona 1.7.0 np110py27_1
- Python 2.7.10
installé dans l'environnement Anaconda 2-4.1.1-Windows-x86. Je suis capable de construire GeoDataFrameen lisant des jeux de données d'entrée et d'exploiter les données, mais l'enregistrement d'un jeu de données de sortie ne préserve pas le système de coordonnées.
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')
Le world_out.shpcontient les fonctionnalités et le schéma du fichier de formes source, mais le système de coordonnées n'est pas défini ( <Unknown>). Le world_out.prjfichier est de 0 Ko et ne contient rien.
out = gpd.read_file(r'C:\GIS\Temp\world_out.shp')
print out.crs
>>> {}
J'ai testé pour effectuer cette opération en utilisant du Fiona pur et cela fonctionne très bien, en préservant les crsinformations:
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)
Le CitiesFiona.prjfichier contient les informations sur le système de coordonnées.
Il semble donc que GeoPandas ne puisse pas lire / écrire crsla trame de données dans le jeu de données de sortie lors de l'appel de la to_file()méthode. Je l' ai essayé d' appeler to_file()le GeoDataFramesconstruit à partir de diverses sources et des ensembles de données et les informations du système de coordonnées n'a jamais été présent dans l'ensemble de données de sortie.
Quelqu'un a-t-il déjà rencontré ce problème? Quelqu'un peut-il tester cela?


.prjfichier avec les informations sur lecrs. C'est peut-être parce que je suis passéfionaàfiona 1.7.0 np110py27_2.