Recursos de aprendizagem para o PyQGIS? [fechadas]

10

Estou procurando alguns recursos para aprender PyQGIS.

Seria interessante ter uma coleção de livros ou sites que fornecem alguns exemplos práticos para aprender a sintaxe ou realizar tarefas específicas.

Idealmente, esses recursos devem fornecer uma orientação geral para usuários iniciantes e experientes.

Onde encontrar os tutoriais e recursos da Web do QGIS? é uma pergunta muito semelhante, mas ajuda no aprendizado do QGIS, e não especificamente do PyQGIS (na verdade, ele não possui a tag PyQGIS).

Qualquer ajuda?

mgri
fonte
Você pode postar algum código para ilustrar seu problema. Na verdade, é preciso algum esforço para entrar em pyqgis. Suas melhores opções são o livro de receitas e a API do c ++.
Peter Peterson
11
Leia isto gis.stackexchange.com/questions/114301/…
Germán Carrillo
11
Para mim, essa pergunta parece uma duplicata dessa. Eu acho que você pode postar sua resposta lá :)
Germán Carrillo
11
Normalmente, eu diria que a pergunta mais recente (que é muito ampla para perguntas e respostas focadas) deve ser duplicada da mais antiga para desencorajar que essas perguntas sejam feitas. No entanto, nesse caso, será necessário muito menos do nosso esforço voluntário para mesclar o anterior a este como um wiki bloqueado, para que seu esforço em escrevê-lo não seja perdido.
PolyGeo
11
Perguntas focadas por iniciantes devem fornecer respostas focadas para eles.
PolyGeo

Respostas:

10

Os seguintes recursos de documentação devem facilitar sua experiência de desenvolvimento em PyQGIS:

Um diagrama dos principais relacionamentos do PyQGIS (por Thomas Gratier): https://raw.githubusercontent.com/webgeodatavore/qgis-class-diagram/master/diagramme_principal.png

Documentação pesquisável das classes PyQGIS (por SourcePole): http://geoapis.sourcepole.com

Por exemplo, o addFeaturemétodo com o qual você teve problemas está descrito aqui: http://geoapis.sourcepole.com/qgispyapi/qgsvectorlayer#QgsVectorLayer.addFeature

insira a descrição da imagem aqui

Como um segundo exemplo, o setAttributemétodo é descrito aqui: http://geoapis.sourcepole.com/qgispyapi/qgsfeature#QgsFeature.setAttribute

insira a descrição da imagem aqui

Germán Carrillo
fonte
geoapis.sourcepole.com tem uma usabilidade incrível, no entanto, não foi atualizada desde o QGIS 2.8. Existe algum esforço para manter isso ou documentação de como este site foi construído?
Norwin
Realmente não sei, mas agora você tem os documentos oficiais da API do PyQGIS: qgis.org/pyqgis/master Então, acho que o SourcePole não gastaria tempo atualizando o site do PyQGIS. Isso seria duplicação de esforços.
Germán Carrillo
8

Os seguintes recursos fornecem uma orientação geral para aprender ou usar o PyQGIS e geralmente assumem uma proficiência mínima de trabalho com o Python.


Versões do QGIS 3.x

  • Documentação da API do PyQGIS 3 : documentação oficial da API do Python. É fornecida documentação para cada versão principal desde a v3.0, bem como a versão noturna;

  • Livro de receitas do desenvolvedor do PyQGIS : escrito para o QGIS 2.x, é gradualmente atualizado para o 3.x. Ainda pode ser útil como um tutorial e um guia de referência e fornece uma boa visão geral das principais funcionalidades.


Versões do QGIS 2.x

Documentação do PyQGIS:

Livros on-line:

Tutoriais / Blogs / Recursos da Web:

  • Nathan Woodrow : um blog principalmente sobre coisas do QGIS que também trata de tópicos específicos sobre o uso do PyQGIS. O autor é um dos desenvolvedores mais ativos do QGIS;

  • nyalldawson.net : um blog com vários posts sobre o uso do PyQGIS. O autor é um dos desenvolvedores mais ativos do QGIS;

  • "Como fazer" no QGIS : o site fornece algumas sugestões para resolver problemas usando o PyQGIS. Quando possível, essas dicas são oferecidas através de exemplos simples de código. Eu sou o autor deste blog;

  • Tutoriais e dicas do QGIS : uma seção deste blog fornece uma série de tutoriais para o aprendizado de scripts PyQGIS. O autor é um especialista em GIS muito experiente;

  • Lutra Consulting : uma lista de posts, com a tag PyQGIS, que aborda alguns tópicos sobre o PyQGIS.

mgri
fonte
2
Alguma atualização aqui? O QGIS3 está perto de ser lançado, acredito.
MartinT
Alguém tem uma idéia, quando / se algum dos livros mencionados acima (2.x) pode ser atualizado para 3.x?
Ville Koivisto
O título de Sherman foi atualizado para o PyQGIS3 (O Guia do Programador do PyQGIS: estendendo o QGIS 3 com o Python 3).
Ville Koivisto
0

Não sabe o que você quer dizer em Introdução à API Python do QGIS? , mas há uma função addFeatures (), é claro. Isso funciona no 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)

Se você não está satisfeito com os documentos da API e o PyQGIS Cookbook, sua última chance é procurar os plug - ins que funcionam - afinal eles são de código aberto - e você pode ver facilmente se eles funcionam na versão 2.4 ...

Para melhorar a documentação, o projeto aceita com satisfação recursos de qualquer tipo.

underdark
fonte
11
mesmo layer.addFeature()se você quiser.
18714 Nathan W
Foi mal. Foi a função setAttribute que gerou o erro - acho que não fiquei muito atento após a pesquisa.
Florian R. Klein
Observando o código dos plugins existentes, foi assim que aprendi pyqgis.
Warrieka