From aa24686517449784020114c7ecbbaa1742cc97bf Mon Sep 17 00:00:00 2001 From: Jonas Hoersch Date: Wed, 19 Dec 2018 15:14:21 +0100 Subject: [PATCH] build_shapes: Update save_to_geojson to new fiona version --- scripts/build_shapes.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/scripts/build_shapes.py b/scripts/build_shapes.py index e2f83874..54e5fcba 100644 --- a/scripts/build_shapes.py +++ b/scripts/build_shapes.py @@ -121,12 +121,14 @@ def nuts3(country_shapes): return df -def save_to_geojson(s, fn): +def save_to_geojson(df, fn): if os.path.exists(fn): os.unlink(fn) - if isinstance(s, gpd.GeoDataFrame): - s = s.reset_index() - s.to_file(fn, driver='GeoJSON') + if not isinstance(df, gpd.GeoDataFrame): + df = gpd.GeoDataFrame(dict(geometry=df)) + df = df.reset_index() + schema = {**gpd.io.file.infer_schema(df), 'geometry': 'Unknown'} + df.to_file(fn, driver='GeoJSON', schema=schema) if __name__ == "__main__": # Detect running outside of snakemake and mock snakemake for testing