turicas/rows

Support shapefiles (SHP and GeoJSON)

Aperta

#343 aperta il 24 mar 2020

 (0 commenti) (0 reazioni) (0 assegnatari)Python (136 fork)github user discovery
enhancementhelp wantedplugin

Metriche repository

Star
 (886 stelle)
Metriche merge PR
 (Nessuna PR mergiata in 30 g)

Descrizione

It woud be awesome to read/write from/to SHP and GeoJSON formats, so we can convert between SHP to GeoJSON, SHP to CSV, CSV to GeoJSON, CSV do SHP etc.

It's not that difficult: libraries such as fiona and shapely make the work easier - example from this post:

import csv
from shapely.geometry import Point, mapping
from fiona import collection

schema = { 'geometry': 'Point', 'properties': { 'name': 'str' } }
with collection(
    "some.shp", "w", "ESRI Shapefile", schema) as output:
    with open('some.csv', 'rb') as f:
        reader = csv.DictReader(f)
        for row in reader:
            point = Point(float(row['lon']), float(row['lat']))
            output.write({
                'properties': {
                    'name': row['name']
                },
                'geometry': mapping(point)
            })

Guida contributor