vai all'argomento :: Scientific / Engineering :: GIS
e hai tutti i moduli Python per GIS (per lavorare con shapefile, raster, geocodifica KML, GML, GPX, ecc.)
I più importanti sono già stati citati ma consiglio anche a Fiona
" Fiona fornisce un'interfaccia Python minima e semplice alla libreria di accesso ai geodati più affidabile della comunità GIS open source e si integra facilmente con altri pacchetti GIS Python come pyproj, Rtree e Shapely " .
e per il networking con shapefile o Esri Feature Class con modulo Networkx Geometric Process Geoprocessing : " Per quanto posso dire, ESRI non ha rilasciato alcun strumento di geoprocessing per la sua rete geometrica " o Alternative a pgRouting o Python: come trasformare un shapefile (o classe caratteristica ESRI) in una rete topologica (grafico) (in francese)
import networkx as nx
G = nx.read_shp('pointshapefile.shp')
print(G.nodes())
# result [(1.0, 2.0), (3.0, 2.0), (0.0, 0.0), (3.0, 1.0), (4.0, 4.0), (2.0, 1.0), (2.0, 4.0), (1.0, 3.0), (2.0, 3.0), (1.0, 4.0), (4.0, 3.0), (4.0, 2.0), (3.0, 4.0), (1.0, 1.0)]
print(G.edges())
# result [((1.0, 2.0), (1.0, 1.0)), ((3.0, 2.0), (2.0, 1.0)), ((3.0, 1.0), (2.0, 1.0)), ((4.0, 4.0), (3.0, 4.0)), ((2.0, 1.0), (1.0, 1.0)), ((2.0, 4.0), (2.0, 3.0)), ((1.0, 3.0), (1.0, 2.0)), ((2.0, 3.0), (1.0, 2.0)), ((1.0, 4.0), (1.0, 3.0)), ((4.0, 3.0), (4.0, 2.0)), ((4.0, 2.0), (3.0, 2.0)), ((3.0, 4.0), (2.0, 3.0)), ((1.0, 1.0), (0.0, 0.0))]
# shortest path
print(nx.astar_path(H,(1.0, 4.0),(4.0, 2.0),dist))
# result [(1.0, 4.0), (1.0, 3.0), (1.0, 2.0), (2.0, 3.0), (3.0, 2.0), (4.0, 2.0)]
# and so with all the algorithms of Networkx module
# you can also export the results in shapefile format
Uso Shapely, Fiona, GDAL / OGR, Pyshp, Networkx e altri in QGIS e GRASS GIS senza problemi (e con matplotlib o descartes per la rappresentazione grafica interattiva). Spesso hanno algoritmi più facili da usare per il trattamento.
Alcuni di questi moduli possono anche essere utilizzati in ArcPy con problemi perché ArcPy utilizza la versione 1.3 di Numpy, obsoleta (ora versione 1.6.1 ...) e non è possibile aggiornarla senza interrompere il modulo ArcPy.