przejdź do tematu :: Nauka / Inżynieria :: GIS
i masz wszystkie moduły Pythona dla GIS (do pracy z plikami kształtów, rastrami, geokodowaniem KML, GML, GPX itp.)
Najważniejsze zostały już cytowane, ale polecam również Fionę
„ Fiona zapewnia minimalny, nieskomplikowany interfejs Python do najbardziej zaufanej biblioteki dostępu do geodanych GIS społeczności open source i łatwo integruje się z innymi pakietami GIS Python, takimi jak pyproj, Rtree i Shapely ”.
oraz do tworzenia sieci z plikami kształtów lub Esri Feature Class z modułem Networkx Geoinformacja sieciowa geoprzetwarzanie : „ O ile mogę stwierdzić, ESRI nie wydało żadnych narzędzi geoprzetwarzania dla swojej sieci geometrycznej ” lub Alternatywy dla pgRouting lub Python: jak przekształcić plik kształtu (lub klasa obiektów ESRI) w sieci topologicznej (wykres) (w języku francuskim)
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
Używam Shapely, Fiona, GDAL / OGR, Pyshp, Networkx i innych w QGIS i GRASS GIS bez problemu (oraz z matplotlib lub desartartes do interaktywnego tworzenia wykresów). Często mają algorytmy łatwiejsze w leczeniu.
Niektóre z tych modułów mogą być również używane w ArcPy z problemami, ponieważ ArcPy używa wersji 1.3 Numpy, przestarzałej (teraz wersja 1.6.1 ...) i nie można jej zaktualizować bez zerwania modułu ArcPy.