¿Recursos de aprendizaje para PyQGIS? [cerrado]

10

Estoy buscando algunos recursos para aprender PyQGIS.

Sería interesante tener una colección de libros o sitios web que brinden algunos ejemplos prácticos para aprender la sintaxis o realizar tareas específicas.

Idealmente, estos recursos deberían proporcionar una guía general para usuarios principiantes y experimentados.

¿Dónde encontrar tutoriales QGIS y recursos web? es una pregunta muy similar, pero brinda ayuda para aprender QGIS, y no específicamente PyQGIS (de hecho, no tiene la etiqueta PyQGIS).

¿Alguna ayuda?

mgri
fuente
¿Puedes publicar algún código para ilustrar tu problema? De hecho, toma un poco de esfuerzo entrar en pyqgis. Sus mejores opciones son el libro de cocina y la api de c ++.
Peter Peterson
1
Lea esto gis.stackexchange.com/questions/114301/…
Germán Carrillo
1
Para mí, esta pregunta parece un duplicado de esa. Creo que podrías publicar tu respuesta allí :)
Germán Carrillo
1
Normalmente, diría que la pregunta más reciente (que es demasiado amplia para preguntas y respuestas enfocadas) debería duplicarse a la anterior para desalentar que se hagan tales preguntas. Sin embargo, en este caso tomará mucho menos de nuestro esfuerzo voluntario fusionar el anterior en este como un wiki bloqueado para que su esfuerzo al escribirlo no se pierda.
PolyGeo
1
Las preguntas enfocadas de los principiantes deben proporcionar respuestas enfocadas para ellos.
PolyGeo

Respuestas:

10

Los siguientes recursos de documentación deberían facilitar su experiencia de desarrollo PyQGIS:

Un diagrama de las principales relaciones de PyQGIS (por Thomas Gratier): https://raw.githubusercontent.com/webgeodatavore/qgis-class-diagram/master/diagramme_principal.png

Documentación de búsqueda de clases PyQGIS (por SourcePole): http://geoapis.sourcepole.com

Por ejemplo, el addFeature método con el que tuvo problemas se describe aquí: http://geoapis.sourcepole.com/qgispyapi/qgsvectorlayer#QgsVectorLayer.addFeature

ingrese la descripción de la imagen aquí

Como segundo ejemplo, el setAttributemétodo se describe aquí: http://geoapis.sourcepole.com/qgispyapi/qgsfeature#QgsFeature.setAttribute

ingrese la descripción de la imagen aquí

Germán Carrillo
fuente
geoapis.sourcepole.com tiene una usabilidad sorprendente, sin embargo, no se actualizó desde QGIS 2.8. ¿Hay algún esfuerzo para mantener esto o documentación sobre cómo se creó este sitio web?
Norwin
Realmente no lo sé, pero ahora tiene los documentos oficiales de la API PyQGIS : qgis.org/pyqgis/master Entonces, creo que SourcePole no pasaría tiempo actualizando su sitio web PyQGIS. Eso sería una duplicación de esfuerzos.
Germán Carrillo
8

Los siguientes recursos brindan una guía general para aprender o usar PyQGIS y generalmente asumen una competencia mínima de trabajo con Python.


Versiones de QGIS 3.x

  • Documentación API PyQGIS 3 : documentación oficial de la API Python. Se proporciona documentación para cada versión principal desde v3.0, así como la versión nocturna;

  • PyQGIS Developer Cookbook : escrito para QGIS 2.x se actualiza gradualmente a 3.x. Todavía puede ser útil como tutorial y guía de referencia y ofrece una buena visión general de las principales funcionalidades.


Versiones de QGIS 2.x

Documentación de PyQGIS:

Libros en línea:

Tutoriales / Blogs / Recursos web:

  • Nathan Woodrow : un blog sobre todo sobre cosas de QGIS que también trata temas específicos sobre el uso de PyQGIS. El autor es uno de los desarrolladores de QGIS más activos;

  • nyalldawson.net : un blog con varias publicaciones sobre el uso de PyQGIS. El autor es uno de los desarrolladores de QGIS más activos;

  • "Cómo" en QGIS : el sitio proporciona algunas sugerencias para resolver problemas usando PyQGIS. Cuando sea posible, estos consejos se ofrecen a través de ejemplos de código simples. Soy el autor de este blog;

  • Tutoriales y consejos de QGIS : una sección de este blog proporciona una serie de tutoriales para aprender los scripts de PyQGIS. El autor es un especialista en SIG con mucha experiencia;

  • Lutra Consulting : una lista de publicaciones, con la etiqueta PyQGIS, que cubren algunos temas sobre PyQGIS.

mgri
fuente
2
¿Alguna actualización aquí? QGIS3 está cerca del lanzamiento, creo.
MartinT
¿Alguien tiene una idea de cuándo / si alguno de los libros mencionados anteriormente (2.x) podría actualizarse a 3.x?
Ville Koivisto
El título de Sherman se ha actualizado para PyQGIS3 (Guía del programador de PyQGIS: extensión de QGIS 3 con Python 3).
Ville Koivisto
0

¿No está seguro de lo que quiere decir en Entrar en Python API de QGIS? , pero hay una función addFeatures (), por supuesto. Esto funciona en QGIS 2.4:

mem_layer = QgsVectorLayer("Polygon?crs=epsg:4326&field=MYNUM:integer&field=MYTXT:string", "temp_layer", "memory")

if not mem_layer.isValid(): raise Exception("Failed to create memory layer")

mem_layer_provider = mem_layer.dataProvider()

my_polygon = QgsFeature()
my_polygon.setGeometry(QgsGeometry.fromRect(QgsRectangle(16,48,17,49)))
my_polygon.setAttributes([10,"hello world"])

mem_layer_provider.addFeatures([my_polygon])

mem_layer.updateExtents()
QgsMapLayerRegistry.instance().addMapLayer(mem_layer)

Si no está satisfecho con los documentos de la API y el libro de cocina PyQGIS, su última oportunidad es buscar complementos que funcionen , después de todo, son de código abierto, y puede ver fácilmente si funcionan en 2.4 ...

Para mejorar la documentación, el proyecto acepta felizmente recursos de cualquier tipo.

oscuridad
fuente
1
incluso layer.addFeature()si quieres
Nathan W
Culpa mía. Fue la función setAttribute la que arrojó el error. Supongo que no estaba muy atento después de buscar.
Florian R. Klein
Mirando el código de los complementos existentes, así es como aprendí pyqgis.
warrieka