Me gustaría usar un script de Python que no se base en arcpy para hacer cosas como consultar un archivo de forma por atributos, crear una nueva capa a partir de la selección y calcular áreas de un polígono y convertir polígonos en puntos.
¿Alguien tiene algún ejemplo de código para usar otros módulos o bibliotecas de Python? Puedo hacer esto fácilmente usando arcpy pero quería explorar otras opciones.
python
geoprocessing
sherpas
fuente
fuente
Respuestas:
Eso es extraño, como si la gente descubriera de repente el poder de Python (sin ArcPy, que es solo un módulo de Python entre otros), vea por ejemplo la pregunta Visualizar shapefile en Python :
Puede combinar todo (Pysal con bien proporcionado, ...) y mezclarlos con los otros módulos científicos.
Por lo tanto, para ejemplos de Python Script, busque Pyshp Fiona, ogr, gdal o shapely en gis.stackexchange o Internet (muchos ejemplos, no solo en inglés).)
Uno de ellos en francés (¡los scripts y las figuras son universales!):
- Python: uso de capas vectoriales y ráster en una perspectiva geológica, sin software SIG y
otro en inglés:
- SIG con Python, Shapely y Fiona
y en español
- Determinación de áreas de polígonos irregulares utilizando las coordenadas de los vértices
en gis.stackexchange
- Perfil de elevación 10 km a cada lado de una línea
- Actualización de atributos usando Pyshp
- ¿Cómo crear un archivo de forma 3D a partir de un ráster?
- Python Script para obtener la diferencia de elevación entre dos puntos
, etc.
El guión presentado por Aaron se puede escribir de manera más simple con Fiona que usa solo diccionarios Python:
y si usas bien además:
También hay dos libros:
Desarrollo Geoespacial de Python de Eric Westra.
Aprendizaje del análisis geoespacial con Python de Joel Lawhead
Python también se usa como lenguaje de script en otras aplicaciones SIG como QGIS (Quantum GIS), GRASS GIS, gvSIG u OpenJump o modeladores 3D como Paraview (¡y Blender también!). Y puede usar la mayoría de los módulos geoespaciales en todas estas aplicaciones (vea Visualizar datos QGIS con Blender )
fuente
Recomiendo encarecidamente el sitio de USU Geoprocesamiento con Python utilizando Open Source GIS para comenzar. Utilizan principalmente la biblioteca GDAL / OGR a lo largo de los ejercicios. Instalar GDAL / OGR puede ser un desafío, por lo que esta entrada de blog puede ser útil para usted: Instalar GDAL (y OGR) para Python en Windows . Consulte también Alternativas al uso de Arcpy en GIS.SE.
El siguiente ejemplo de script de geoprocesamiento de código abierto (del sitio de la USU) se utiliza para extraer datos de atributos y escribirlos en un archivo de texto:
fuente
.Destroy
es un nombre de método increíble: pTe podría interesar GDAL / OGR .
GDAL se usa para procesar rásteres mientras que OGR se usa para vectores. Ambas son bibliotecas de código abierto.
Si está buscando eliminar alguna dependencia de ArcPy, puede imitar algunas capacidades leyendo la información en una matriz y ejecutando sus propios cálculos en Python puro.
Recientemente hice esto seleccionando puntos en un polígono, como se ve aquí . Utiliza el algoritmo de proyección de rayos para determinar si un punto se encuentra dentro de un polígono, dadas las coordenadas de los vértices del polígono.
fuente
Nunca he usado esto personalmente, pero a otros en la oficina les gusta usar bien: https://pypi.python.org/pypi/Shapely
fuente