turicas/rows

Support shapefiles (SHP and GeoJSON)

Ouverte

#343 ouverte le 24 mars 2020

 (0 commentaire) (0 réaction) (0 personne assignée)Python (136 forks)github user discovery
enhancementhelp wantedplugin

Métriques du dépôt

Stars
 (886 étoiles)
Métriques de merge PR
 (Aucune PR mergée en 30 j)

Description

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)
            })

Guide contributeur