SlideShare uma empresa Scribd logo
1 de 8
Baixar para ler offline
QGIS 2.8:
Classificação de Campos com Python
Jorge Santos
2015
2
Classificação de Campos Numéricos com Python
Classificação de Campos é um recurso ideal para diferenciar valores através de intervalos predefinidos. O exemplo mais
utilizado no site Processamento Digital é a classificação de campos de acordo com os valores numéricos da população. Hoje,
vamos utilizar um exemplo dessa classificação para aplicação de simbologia nas comunidades quilombolas.
Classificação de Campos em outros aplicativos
Nos tópicos anteriores, eu criei tutoriais contendo os passos necessários para execução dessa dica nos aplicativos ArcGIS
10, ArcGIS 9.3, gvSIG e Quantum GIS 1.7.4. Hoje vamos testar esta técnica no QGIS versão 2.8.
A Questão das Comunidades Quilombolas
De acordo com os dados em shapefile do INCRA, as comunidades quilombolas estão espacialmente distribuídas por
diversas regiões do Brasil. Nosso objetivo é determinar o mapeamento destes grupos humanos através de polígonos com
representação de simbologia. A ideia é utilizar o Geoprocessamento para gerar uma representação temática, fornecendo a
localização das famílias quilombolas por todo o Brasil.
Na imagem abaixo, temos algumas poligonais representando fragmentos de comunidades quilombolas. Os valores
numéricos representam o total de famílias distribuídas por área delimitada:
Na Tabela de Atributos, o número de famílias quilombolas varia entre 0 e 3500 no arquivo shapefile fornecido, portanto,
nosso objetivo é desenvolver a melhor metodologia para representação dessas comunidades no mapa.
Teste lógico para definição de intervalos
Para classificar as comunidades quilombolas de acordo com o número de famílias, o primeiro passo consiste em
identificar o campo ou coluna da Tabela de Atributos que armazena as informações sobre o total de famílias. Ao abrir a tabela,
verificamos que o campo NR_FAMIL8 contém essa informação:
Os números da tabela podem ser repetir, porém o algoritmo selecionado irá realizar uma varredura na coluna e
classificá-los de acordo com o intervalo definido pelo analista. A classificação será armazenada em outro campo.
No segundo passo, devemos estabelecer certos intervalos de classe e associar valores numéricos aos intervalos. Vale
lembrar que a pesquisa pelos valores deve seguir os clássicos testes lógicos que você provavelmente realizou no Microsoft Excel.
3
Esta etapa fica muito mais organizada se materializarmos as ideias através de textos. Na tabela abaixo, temos um
exemplo bem definido dos intervalos de classes com as composições lógicas:
Proposição Lógica Resultado
Se a população quilombola for inferior a 20 famílias Classificar como 1
Caso contrário, se a população quilombola for superior a 20
famílias e inferior a 50 famílias
Classificar como 2
Caso contrário, se a população quilombola for superior a 50
famílias e inferior a 70 famílias
Classificar como 3
Caso contrário, se a população quilombola for superior a 70
famílias e inferior a 90 famílias
Classificar como 4
Caso contrário, se a população quilombola for superior a 90
famílias e inferior a 110 famílias
Classificar como 5
Caso contrário, se a população quilombola for superior a
110 famílias e inferior a 120 famílias
Classificar como 6
Caso contrário, se a população quilombola for superior a
120 famílias e inferior a 140 famílias
Classificar como 7
Caso contrário, se a população quilombola for superior a
140 famílias e inferior a 400 famílias
Classificar como 8
Caso contrário, se a população quilombola for superior a
400 famílias
Classificar como 9
A estrutura principal está pronta. Nos passos a seguir, vamos utilizar uma linguagem de programação para realizar a
varredura em todos os valores da coluna e classificar esses valores de acordo com o resultado indicado na tabela acima.
Linguagem Python
O código da tabela foi escrito para a linguagem Python. Daqui por diante, você pode seguir esses procedimentos para
aprender a executar scripts Python no QGIS. Baixe o arquivo classe.txt criado exclusivamente para atender essa tarefa:
4
Execução do Código Python no QGIS
Abra o painel Processar no QGIS 2.8 e procure pelo algoritmo Advanced Python Field Calculator (ele está localizado no
subgrupo Vector Table Tools que faz parte do grupo Geoalgoritmos QGIS). Não se esqueça de verificar se o item Advanced
Interface está exibindo as ferramentas do painel Processar.
Com o algoritmo aberto, ajuste essas configurações:
1 - Selecione o polígono de entrada e digite o nome CLASSE para que o QGIS possa gerar uma nova coluna:
2 - Selecione o Tipo de Campo como Inteiro com Comprimento 10 e Precisão 0:
5
3 – No item Expressão Global, cole o código que está armazenado no arquivo classe.txt:
4 – No item Fórmula, precisamos chamar a função reclass e indicar a coluna da Tabela de Atributos que contém o
total das famílias quilombolas. No shapefile, o campo ou coluna que contém essa informação chama-se NR_FAMIL8.
Digite a seguinte expressão no campo Fórmula:
value = reclass (<NR_FAMIL8>)
5 – No item Camada de Saída, selecione a opção Salvar em Arquivo para gerar um novo arquivo shapefile:
6 – Digite o nome do arquivo shapefile que será criado:
Execute o processo. O QGIS vai adicionar um arquivo chamado Camada de Saída. Você pode remover este arquivo e
acessar o verdadeiro arquivo gerado pelo processo.
6
Para avaliar as mudanças, investigue o campo CLASSE. O código Python classificou os valores de acordo com as regras
pré-definidas. Compare os resultados deste campo com os valores das famílias presentes no campo NR_FAMIL8.
Configuração da Simbologia por Categoria
Acesse as Propriedades do Camada Vetorial e faça a edição de simbologia por Estilo Categorizado, selecionando o
campo CLASSE gerado pela Calculadora Python. No item Legenda, defina as classes e as cores de acordo com o seu gosto. Você
pode digitar os intervalos numéricos ou incluir números e textos. Esta opção é livre para o analista decidir.
O número de famílias quilombolas será representado pelo intervalo de classes definido pelo analista. Mesmo com o
total de famílias sendo exibido sobre cada área demarcada, a classificação de campos ajudar a ampliar a percepção dos dados
durante a criação de mapas temáticos. O passo final consiste em utilizar o Compositor de Impressão para construir o mapa.
7
Ora, mas qual a finalidade de classificar campos com intervalos pré-definidos? Tente imaginar uma quantidade imensa
de cores para representar 3.500 famílias. Seria inviável, não é mesmo?
8
Contatos
Jorge Santos
Consultor em Geotecnologias
E-mail: jorgepsantos@outlook.com
Skype: jorgepsantos2002
Processamento Digital – Geotecnologias e Software Livre
Endereço: http://www.processamentodigital.com.br/
Twitter: http://twitter.com/jpsantos2002
Facebook: http://www.facebook.com/ProcessamentoDigital
LinkedIn: http://br.linkedin.com/pub/jorge-santos/10/38b/8a4/
Atuação
 Consultor para Projetos que envolvem Demandas de SIG/PDI;
 Instrutor para Treinamento Avançado em Geotecnologias;
 Instrutor para Treinamento Avançado no Processamento Digital de Imagens.

Mais conteúdo relacionado

Mais procurados

Apostila completa q_gis
Apostila completa q_gisApostila completa q_gis
Apostila completa q_gisrailano
 
Agricultura de precisao modulo 1
Agricultura de precisao modulo 1Agricultura de precisao modulo 1
Agricultura de precisao modulo 1Karlla Costa
 
Curso topografia basica jun13_rocha
Curso topografia basica jun13_rochaCurso topografia basica jun13_rocha
Curso topografia basica jun13_rochaAlexandre Rocha
 
Aplicações do Geoprocessamento na Ciência do Solo, palestra apresentada no XX...
Aplicações do Geoprocessamento na Ciência do Solo, palestra apresentada no XX...Aplicações do Geoprocessamento na Ciência do Solo, palestra apresentada no XX...
Aplicações do Geoprocessamento na Ciência do Solo, palestra apresentada no XX...Elvio Giasson
 
Mapeamento de Geossistemas - Prática no QGis
Mapeamento de Geossistemas - Prática no QGisMapeamento de Geossistemas - Prática no QGis
Mapeamento de Geossistemas - Prática no QGisVitor Vieira Vasconcelos
 
What is GIS
What is GISWhat is GIS
What is GISEsri
 
Classificação de imagens não supervisionada - KMEANS e ISODATA
Classificação de imagens não supervisionada - KMEANS e ISODATAClassificação de imagens não supervisionada - KMEANS e ISODATA
Classificação de imagens não supervisionada - KMEANS e ISODATAAndré Andrade
 
Introdução geral à topografia
Introdução geral à topografiaIntrodução geral à topografia
Introdução geral à topografiaPessoal
 
Application of GIS
Application of GISApplication of GIS
Application of GISRohit Pant
 
USO DOS VEÍCULOS AÉREOS NÃO TRIPULADOS NA AGRICULTURA (VANTs). USO DE IMAGENS...
USO DOS VEÍCULOS AÉREOS NÃO TRIPULADOS NA AGRICULTURA (VANTs). USO DE IMAGENS...USO DOS VEÍCULOS AÉREOS NÃO TRIPULADOS NA AGRICULTURA (VANTs). USO DE IMAGENS...
USO DOS VEÍCULOS AÉREOS NÃO TRIPULADOS NA AGRICULTURA (VANTs). USO DE IMAGENS...Guilherme Parmegiani
 

Mais procurados (20)

Apostila completa q_gis
Apostila completa q_gisApostila completa q_gis
Apostila completa q_gis
 
Agricultura de precisao modulo 1
Agricultura de precisao modulo 1Agricultura de precisao modulo 1
Agricultura de precisao modulo 1
 
Curso topografia basica jun13_rocha
Curso topografia basica jun13_rochaCurso topografia basica jun13_rocha
Curso topografia basica jun13_rocha
 
Aula 1 Fundamentos do Sensoriamento Remoto
Aula 1 Fundamentos do Sensoriamento RemotoAula 1 Fundamentos do Sensoriamento Remoto
Aula 1 Fundamentos do Sensoriamento Remoto
 
Agriculture &amp; gis
Agriculture &amp; gisAgriculture &amp; gis
Agriculture &amp; gis
 
Agricultura de Precisão - UFCG Pombal
Agricultura de Precisão - UFCG PombalAgricultura de Precisão - UFCG Pombal
Agricultura de Precisão - UFCG Pombal
 
Geo1
Geo1Geo1
Geo1
 
Aplicações do Geoprocessamento na Ciência do Solo, palestra apresentada no XX...
Aplicações do Geoprocessamento na Ciência do Solo, palestra apresentada no XX...Aplicações do Geoprocessamento na Ciência do Solo, palestra apresentada no XX...
Aplicações do Geoprocessamento na Ciência do Solo, palestra apresentada no XX...
 
Aula 04
Aula 04Aula 04
Aula 04
 
Mapeamento de Geossistemas - Prática no QGis
Mapeamento de Geossistemas - Prática no QGisMapeamento de Geossistemas - Prática no QGis
Mapeamento de Geossistemas - Prática no QGis
 
What is GIS
What is GISWhat is GIS
What is GIS
 
Dados espaciais
Dados espaciaisDados espaciais
Dados espaciais
 
Análise Espacial Baseada em Distância
Análise Espacial Baseada em DistânciaAnálise Espacial Baseada em Distância
Análise Espacial Baseada em Distância
 
Curvas de nivel
Curvas de nivelCurvas de nivel
Curvas de nivel
 
Classificação de imagens não supervisionada - KMEANS e ISODATA
Classificação de imagens não supervisionada - KMEANS e ISODATAClassificação de imagens não supervisionada - KMEANS e ISODATA
Classificação de imagens não supervisionada - KMEANS e ISODATA
 
Aula 5 Processamento de imagens
Aula 5 Processamento de imagensAula 5 Processamento de imagens
Aula 5 Processamento de imagens
 
Gnss
GnssGnss
Gnss
 
Introdução geral à topografia
Introdução geral à topografiaIntrodução geral à topografia
Introdução geral à topografia
 
Application of GIS
Application of GISApplication of GIS
Application of GIS
 
USO DOS VEÍCULOS AÉREOS NÃO TRIPULADOS NA AGRICULTURA (VANTs). USO DE IMAGENS...
USO DOS VEÍCULOS AÉREOS NÃO TRIPULADOS NA AGRICULTURA (VANTs). USO DE IMAGENS...USO DOS VEÍCULOS AÉREOS NÃO TRIPULADOS NA AGRICULTURA (VANTs). USO DE IMAGENS...
USO DOS VEÍCULOS AÉREOS NÃO TRIPULADOS NA AGRICULTURA (VANTs). USO DE IMAGENS...
 

Destaque

QGIS 2.6: Conversão de Imagens Landsat-8 (16 Bit para 8 Bit)
QGIS 2.6: Conversão de Imagens Landsat-8 (16 Bit para 8 Bit) QGIS 2.6: Conversão de Imagens Landsat-8 (16 Bit para 8 Bit)
QGIS 2.6: Conversão de Imagens Landsat-8 (16 Bit para 8 Bit) Jorge Santos
 
Guia Quantum GIS
Guia Quantum GISGuia Quantum GIS
Guia Quantum GISautonomo
 
Preparando-se para a prova da Certificação Zend PHP 5.3
Preparando-se para a prova da Certificação Zend PHP 5.3Preparando-se para a prova da Certificação Zend PHP 5.3
Preparando-se para a prova da Certificação Zend PHP 5.3klaussilveira
 
I ♥ Maps: Quantum GIS + Python
I ♥ Maps: Quantum GIS + PythonI ♥ Maps: Quantum GIS + Python
I ♥ Maps: Quantum GIS + PythonPaige Bailey
 
QGIS 2.4: Sistemas de Referência de Coordenadas (SRC)
QGIS 2.4: Sistemas de Referência de Coordenadas (SRC)QGIS 2.4: Sistemas de Referência de Coordenadas (SRC)
QGIS 2.4: Sistemas de Referência de Coordenadas (SRC)Jorge Santos
 
Processamento e Análise com QGIS
Processamento e Análise com QGISProcessamento e Análise com QGIS
Processamento e Análise com QGISPedro Venancio
 
Python, a arma secreta do Google
Python, a arma secreta do GooglePython, a arma secreta do Google
Python, a arma secreta do GoogleLuciano Ramalho
 
Comandos gerais do PHP
Comandos gerais do PHPComandos gerais do PHP
Comandos gerais do PHPPaulo Dayvson
 
Orientação a Objetos com PHP
Orientação a Objetos com PHPOrientação a Objetos com PHP
Orientação a Objetos com PHPAugusto Pascutti
 
Exercicios Php
Exercicios PhpExercicios Php
Exercicios Phpsofteam
 
Curso Linguagem de Programação I - PHP Básico
Curso Linguagem de Programação I - PHP BásicoCurso Linguagem de Programação I - PHP Básico
Curso Linguagem de Programação I - PHP BásicoNorton Guimarães
 
Lista de exercícios resolvidos
Lista de exercícios resolvidosLista de exercícios resolvidos
Lista de exercícios resolvidosCrishna Irion
 

Destaque (16)

QGIS 2.6: Conversão de Imagens Landsat-8 (16 Bit para 8 Bit)
QGIS 2.6: Conversão de Imagens Landsat-8 (16 Bit para 8 Bit) QGIS 2.6: Conversão de Imagens Landsat-8 (16 Bit para 8 Bit)
QGIS 2.6: Conversão de Imagens Landsat-8 (16 Bit para 8 Bit)
 
Guia Quantum GIS
Guia Quantum GISGuia Quantum GIS
Guia Quantum GIS
 
Python
PythonPython
Python
 
Preparando-se para a prova da Certificação Zend PHP 5.3
Preparando-se para a prova da Certificação Zend PHP 5.3Preparando-se para a prova da Certificação Zend PHP 5.3
Preparando-se para a prova da Certificação Zend PHP 5.3
 
Rumo à Certificação PHP
Rumo à Certificação PHPRumo à Certificação PHP
Rumo à Certificação PHP
 
I ♥ Maps: Quantum GIS + Python
I ♥ Maps: Quantum GIS + PythonI ♥ Maps: Quantum GIS + Python
I ♥ Maps: Quantum GIS + Python
 
QGIS 2.4: Sistemas de Referência de Coordenadas (SRC)
QGIS 2.4: Sistemas de Referência de Coordenadas (SRC)QGIS 2.4: Sistemas de Referência de Coordenadas (SRC)
QGIS 2.4: Sistemas de Referência de Coordenadas (SRC)
 
Processamento e Análise com QGIS
Processamento e Análise com QGISProcessamento e Análise com QGIS
Processamento e Análise com QGIS
 
Python, a arma secreta do Google
Python, a arma secreta do GooglePython, a arma secreta do Google
Python, a arma secreta do Google
 
Certificacao Php
Certificacao PhpCertificacao Php
Certificacao Php
 
Comandos gerais do PHP
Comandos gerais do PHPComandos gerais do PHP
Comandos gerais do PHP
 
Orientação a Objetos com PHP
Orientação a Objetos com PHPOrientação a Objetos com PHP
Orientação a Objetos com PHP
 
Exercicios Php
Exercicios PhpExercicios Php
Exercicios Php
 
Curso Linguagem de Programação I - PHP Básico
Curso Linguagem de Programação I - PHP BásicoCurso Linguagem de Programação I - PHP Básico
Curso Linguagem de Programação I - PHP Básico
 
Lista de exercícios resolvidos
Lista de exercícios resolvidosLista de exercícios resolvidos
Lista de exercícios resolvidos
 
Frameworks PHP
Frameworks PHPFrameworks PHP
Frameworks PHP
 

Semelhante a Classificação de Campos com Python no QGIS

Tutorial-Como criar um mapa dos dados do Laudo de Avaliação de Imóveis no Goo...
Tutorial-Como criar um mapa dos dados do Laudo de Avaliação de Imóveis no Goo...Tutorial-Como criar um mapa dos dados do Laudo de Avaliação de Imóveis no Goo...
Tutorial-Como criar um mapa dos dados do Laudo de Avaliação de Imóveis no Goo...Sergio LS. Goulart
 
MapBiomas - Recortar Uso do Solo e Aplicar Simbologia no QGIS
MapBiomas - Recortar Uso do Solo e Aplicar Simbologia no QGISMapBiomas - Recortar Uso do Solo e Aplicar Simbologia no QGIS
MapBiomas - Recortar Uso do Solo e Aplicar Simbologia no QGISJorge Santos
 
Linguagem de programação projeto de fim de semana 1
Linguagem de programação   projeto de fim de semana 1Linguagem de programação   projeto de fim de semana 1
Linguagem de programação projeto de fim de semana 1Carlos Melo
 
Sql apostila construcao de comandos
Sql   apostila construcao de comandosSql   apostila construcao de comandos
Sql apostila construcao de comandosrobinhoct
 
Excel curso avançado
Excel curso avançadoExcel curso avançado
Excel curso avançadogisa_legal
 
Lista das funções do Google Spreadsheet
Lista das funções do Google SpreadsheetLista das funções do Google Spreadsheet
Lista das funções do Google SpreadsheetSetesys
 
Apostila projeto geo 2005
Apostila projeto geo 2005Apostila projeto geo 2005
Apostila projeto geo 2005Hudson Góis
 
ODI Tutorial - Modelo de Dados
ODI Tutorial - Modelo de DadosODI Tutorial - Modelo de Dados
ODI Tutorial - Modelo de DadosCaio Lima
 
Tutorial_PostGis
Tutorial_PostGisTutorial_PostGis
Tutorial_PostGisANAMSIGOT
 
Planilha Eletrônica BrOffice CALC
Planilha Eletrônica BrOffice CALCPlanilha Eletrônica BrOffice CALC
Planilha Eletrônica BrOffice CALCeliz71
 
Capítulo 16 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 16 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Capítulo 16 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 16 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Os Fantasmas !
 
6.3 Clustering_338ca79f26242f5b9b48a218cfc35819.pdf
6.3 Clustering_338ca79f26242f5b9b48a218cfc35819.pdf6.3 Clustering_338ca79f26242f5b9b48a218cfc35819.pdf
6.3 Clustering_338ca79f26242f5b9b48a218cfc35819.pdfDavidLarronda1
 
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Elaine Cecília Gatto
 

Semelhante a Classificação de Campos com Python no QGIS (20)

Tutorial-Como criar um mapa dos dados do Laudo de Avaliação de Imóveis no Goo...
Tutorial-Como criar um mapa dos dados do Laudo de Avaliação de Imóveis no Goo...Tutorial-Como criar um mapa dos dados do Laudo de Avaliação de Imóveis no Goo...
Tutorial-Como criar um mapa dos dados do Laudo de Avaliação de Imóveis no Goo...
 
MapBiomas - Recortar Uso do Solo e Aplicar Simbologia no QGIS
MapBiomas - Recortar Uso do Solo e Aplicar Simbologia no QGISMapBiomas - Recortar Uso do Solo e Aplicar Simbologia no QGIS
MapBiomas - Recortar Uso do Solo e Aplicar Simbologia no QGIS
 
Linguagem de programação projeto de fim de semana 1
Linguagem de programação   projeto de fim de semana 1Linguagem de programação   projeto de fim de semana 1
Linguagem de programação projeto de fim de semana 1
 
Apostila basica sql
Apostila basica sqlApostila basica sql
Apostila basica sql
 
excel_avancado.pdf
excel_avancado.pdfexcel_avancado.pdf
excel_avancado.pdf
 
Sql apostila construcao de comandos
Sql   apostila construcao de comandosSql   apostila construcao de comandos
Sql apostila construcao de comandos
 
Netbeans IDE
Netbeans IDENetbeans IDE
Netbeans IDE
 
Excel curso avançado
Excel curso avançadoExcel curso avançado
Excel curso avançado
 
Excel avancado
Excel avancadoExcel avancado
Excel avancado
 
Excel avancado 2015
Excel avancado 2015Excel avancado 2015
Excel avancado 2015
 
Excel avancado
Excel avancadoExcel avancado
Excel avancado
 
Lista das funções do Google Spreadsheet
Lista das funções do Google SpreadsheetLista das funções do Google Spreadsheet
Lista das funções do Google Spreadsheet
 
Apostila projeto geo 2005
Apostila projeto geo 2005Apostila projeto geo 2005
Apostila projeto geo 2005
 
ODI Tutorial - Modelo de Dados
ODI Tutorial - Modelo de DadosODI Tutorial - Modelo de Dados
ODI Tutorial - Modelo de Dados
 
Tutorial_PostGis
Tutorial_PostGisTutorial_PostGis
Tutorial_PostGis
 
Pi raciocinio lógico
Pi   raciocinio lógicoPi   raciocinio lógico
Pi raciocinio lógico
 
Planilha Eletrônica BrOffice CALC
Planilha Eletrônica BrOffice CALCPlanilha Eletrônica BrOffice CALC
Planilha Eletrônica BrOffice CALC
 
Capítulo 16 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 16 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Capítulo 16 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 16 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
 
6.3 Clustering_338ca79f26242f5b9b48a218cfc35819.pdf
6.3 Clustering_338ca79f26242f5b9b48a218cfc35819.pdf6.3 Clustering_338ca79f26242f5b9b48a218cfc35819.pdf
6.3 Clustering_338ca79f26242f5b9b48a218cfc35819.pdf
 
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
 

Mais de Jorge Santos

MapBiomas – Download do Uso do Solo e Aplicar Simbologia no QGIS
MapBiomas – Download do Uso do Solo e Aplicar Simbologia no QGISMapBiomas – Download do Uso do Solo e Aplicar Simbologia no QGIS
MapBiomas – Download do Uso do Solo e Aplicar Simbologia no QGISJorge Santos
 
QGIS 2.18: Delimitação de Bacias Hidrográficas com o TauDEM
QGIS 2.18: Delimitação de Bacias Hidrográficas com o TauDEMQGIS 2.18: Delimitação de Bacias Hidrográficas com o TauDEM
QGIS 2.18: Delimitação de Bacias Hidrográficas com o TauDEMJorge Santos
 
ArcGIS 10.3: Iniciante no ModelBuilder - Conversão de Float32 para UInt16
ArcGIS 10.3: Iniciante no ModelBuilder - Conversão de Float32 para UInt16ArcGIS 10.3: Iniciante no ModelBuilder - Conversão de Float32 para UInt16
ArcGIS 10.3: Iniciante no ModelBuilder - Conversão de Float32 para UInt16Jorge Santos
 
ERDAS 2014: Imagens Pléiades - Conversão de Quadrículas para IMG (R1C1/R1C2.....
ERDAS 2014: Imagens Pléiades - Conversão de Quadrículas para IMG (R1C1/R1C2.....ERDAS 2014: Imagens Pléiades - Conversão de Quadrículas para IMG (R1C1/R1C2.....
ERDAS 2014: Imagens Pléiades - Conversão de Quadrículas para IMG (R1C1/R1C2.....Jorge Santos
 
20150323 qgis28 remocao_de_valores_negativos_no_mde
20150323 qgis28 remocao_de_valores_negativos_no_mde20150323 qgis28 remocao_de_valores_negativos_no_mde
20150323 qgis28 remocao_de_valores_negativos_no_mdeJorge Santos
 
QGIS 2.8: Substituição de Pixels Negativos no MDE
QGIS 2.8: Substituição de Pixels Negativos no MDEQGIS 2.8: Substituição de Pixels Negativos no MDE
QGIS 2.8: Substituição de Pixels Negativos no MDEJorge Santos
 
ArCGIS 10.2: Instalação do TauDEM 5.1.2 para Delimitação de Bacias Hidrográficas
ArCGIS 10.2: Instalação do TauDEM 5.1.2 para Delimitação de Bacias HidrográficasArCGIS 10.2: Instalação do TauDEM 5.1.2 para Delimitação de Bacias Hidrográficas
ArCGIS 10.2: Instalação do TauDEM 5.1.2 para Delimitação de Bacias HidrográficasJorge Santos
 
QGIS 2.8: Rampa de Cores para Representação Topográfica do Modelo Digital de ...
QGIS 2.8: Rampa de Cores para Representação Topográfica do Modelo Digital de ...QGIS 2.8: Rampa de Cores para Representação Topográfica do Modelo Digital de ...
QGIS 2.8: Rampa de Cores para Representação Topográfica do Modelo Digital de ...Jorge Santos
 
QGIS 2.6: Adicionar Basemaps da ESRI para ilustração de Mapas
QGIS 2.6: Adicionar Basemaps da ESRI para ilustração de MapasQGIS 2.6: Adicionar Basemaps da ESRI para ilustração de Mapas
QGIS 2.6: Adicionar Basemaps da ESRI para ilustração de MapasJorge Santos
 
QGIS 2.4: Sistemas de Referência de Coordenadas Personalizado
QGIS 2.4: Sistemas de Referência de Coordenadas PersonalizadoQGIS 2.4: Sistemas de Referência de Coordenadas Personalizado
QGIS 2.4: Sistemas de Referência de Coordenadas PersonalizadoJorge Santos
 
GIMP 2.8: Guia para Remoção dos Pixels Valor Zero nas Imagens Landsat-8
GIMP 2.8: Guia para Remoção dos Pixels Valor Zero nas Imagens Landsat-8GIMP 2.8: Guia para Remoção dos Pixels Valor Zero nas Imagens Landsat-8
GIMP 2.8: Guia para Remoção dos Pixels Valor Zero nas Imagens Landsat-8Jorge Santos
 
GDAL 1.10: Conversão Radiométrica para Landsat-8 (16 Bit para 8 Bit)
GDAL 1.10: Conversão Radiométrica para Landsat-8 (16 Bit para 8 Bit)GDAL 1.10: Conversão Radiométrica para Landsat-8 (16 Bit para 8 Bit)
GDAL 1.10: Conversão Radiométrica para Landsat-8 (16 Bit para 8 Bit)Jorge Santos
 

Mais de Jorge Santos (12)

MapBiomas – Download do Uso do Solo e Aplicar Simbologia no QGIS
MapBiomas – Download do Uso do Solo e Aplicar Simbologia no QGISMapBiomas – Download do Uso do Solo e Aplicar Simbologia no QGIS
MapBiomas – Download do Uso do Solo e Aplicar Simbologia no QGIS
 
QGIS 2.18: Delimitação de Bacias Hidrográficas com o TauDEM
QGIS 2.18: Delimitação de Bacias Hidrográficas com o TauDEMQGIS 2.18: Delimitação de Bacias Hidrográficas com o TauDEM
QGIS 2.18: Delimitação de Bacias Hidrográficas com o TauDEM
 
ArcGIS 10.3: Iniciante no ModelBuilder - Conversão de Float32 para UInt16
ArcGIS 10.3: Iniciante no ModelBuilder - Conversão de Float32 para UInt16ArcGIS 10.3: Iniciante no ModelBuilder - Conversão de Float32 para UInt16
ArcGIS 10.3: Iniciante no ModelBuilder - Conversão de Float32 para UInt16
 
ERDAS 2014: Imagens Pléiades - Conversão de Quadrículas para IMG (R1C1/R1C2.....
ERDAS 2014: Imagens Pléiades - Conversão de Quadrículas para IMG (R1C1/R1C2.....ERDAS 2014: Imagens Pléiades - Conversão de Quadrículas para IMG (R1C1/R1C2.....
ERDAS 2014: Imagens Pléiades - Conversão de Quadrículas para IMG (R1C1/R1C2.....
 
20150323 qgis28 remocao_de_valores_negativos_no_mde
20150323 qgis28 remocao_de_valores_negativos_no_mde20150323 qgis28 remocao_de_valores_negativos_no_mde
20150323 qgis28 remocao_de_valores_negativos_no_mde
 
QGIS 2.8: Substituição de Pixels Negativos no MDE
QGIS 2.8: Substituição de Pixels Negativos no MDEQGIS 2.8: Substituição de Pixels Negativos no MDE
QGIS 2.8: Substituição de Pixels Negativos no MDE
 
ArCGIS 10.2: Instalação do TauDEM 5.1.2 para Delimitação de Bacias Hidrográficas
ArCGIS 10.2: Instalação do TauDEM 5.1.2 para Delimitação de Bacias HidrográficasArCGIS 10.2: Instalação do TauDEM 5.1.2 para Delimitação de Bacias Hidrográficas
ArCGIS 10.2: Instalação do TauDEM 5.1.2 para Delimitação de Bacias Hidrográficas
 
QGIS 2.8: Rampa de Cores para Representação Topográfica do Modelo Digital de ...
QGIS 2.8: Rampa de Cores para Representação Topográfica do Modelo Digital de ...QGIS 2.8: Rampa de Cores para Representação Topográfica do Modelo Digital de ...
QGIS 2.8: Rampa de Cores para Representação Topográfica do Modelo Digital de ...
 
QGIS 2.6: Adicionar Basemaps da ESRI para ilustração de Mapas
QGIS 2.6: Adicionar Basemaps da ESRI para ilustração de MapasQGIS 2.6: Adicionar Basemaps da ESRI para ilustração de Mapas
QGIS 2.6: Adicionar Basemaps da ESRI para ilustração de Mapas
 
QGIS 2.4: Sistemas de Referência de Coordenadas Personalizado
QGIS 2.4: Sistemas de Referência de Coordenadas PersonalizadoQGIS 2.4: Sistemas de Referência de Coordenadas Personalizado
QGIS 2.4: Sistemas de Referência de Coordenadas Personalizado
 
GIMP 2.8: Guia para Remoção dos Pixels Valor Zero nas Imagens Landsat-8
GIMP 2.8: Guia para Remoção dos Pixels Valor Zero nas Imagens Landsat-8GIMP 2.8: Guia para Remoção dos Pixels Valor Zero nas Imagens Landsat-8
GIMP 2.8: Guia para Remoção dos Pixels Valor Zero nas Imagens Landsat-8
 
GDAL 1.10: Conversão Radiométrica para Landsat-8 (16 Bit para 8 Bit)
GDAL 1.10: Conversão Radiométrica para Landsat-8 (16 Bit para 8 Bit)GDAL 1.10: Conversão Radiométrica para Landsat-8 (16 Bit para 8 Bit)
GDAL 1.10: Conversão Radiométrica para Landsat-8 (16 Bit para 8 Bit)
 

Classificação de Campos com Python no QGIS

  • 1. QGIS 2.8: Classificação de Campos com Python Jorge Santos 2015
  • 2. 2 Classificação de Campos Numéricos com Python Classificação de Campos é um recurso ideal para diferenciar valores através de intervalos predefinidos. O exemplo mais utilizado no site Processamento Digital é a classificação de campos de acordo com os valores numéricos da população. Hoje, vamos utilizar um exemplo dessa classificação para aplicação de simbologia nas comunidades quilombolas. Classificação de Campos em outros aplicativos Nos tópicos anteriores, eu criei tutoriais contendo os passos necessários para execução dessa dica nos aplicativos ArcGIS 10, ArcGIS 9.3, gvSIG e Quantum GIS 1.7.4. Hoje vamos testar esta técnica no QGIS versão 2.8. A Questão das Comunidades Quilombolas De acordo com os dados em shapefile do INCRA, as comunidades quilombolas estão espacialmente distribuídas por diversas regiões do Brasil. Nosso objetivo é determinar o mapeamento destes grupos humanos através de polígonos com representação de simbologia. A ideia é utilizar o Geoprocessamento para gerar uma representação temática, fornecendo a localização das famílias quilombolas por todo o Brasil. Na imagem abaixo, temos algumas poligonais representando fragmentos de comunidades quilombolas. Os valores numéricos representam o total de famílias distribuídas por área delimitada: Na Tabela de Atributos, o número de famílias quilombolas varia entre 0 e 3500 no arquivo shapefile fornecido, portanto, nosso objetivo é desenvolver a melhor metodologia para representação dessas comunidades no mapa. Teste lógico para definição de intervalos Para classificar as comunidades quilombolas de acordo com o número de famílias, o primeiro passo consiste em identificar o campo ou coluna da Tabela de Atributos que armazena as informações sobre o total de famílias. Ao abrir a tabela, verificamos que o campo NR_FAMIL8 contém essa informação: Os números da tabela podem ser repetir, porém o algoritmo selecionado irá realizar uma varredura na coluna e classificá-los de acordo com o intervalo definido pelo analista. A classificação será armazenada em outro campo. No segundo passo, devemos estabelecer certos intervalos de classe e associar valores numéricos aos intervalos. Vale lembrar que a pesquisa pelos valores deve seguir os clássicos testes lógicos que você provavelmente realizou no Microsoft Excel.
  • 3. 3 Esta etapa fica muito mais organizada se materializarmos as ideias através de textos. Na tabela abaixo, temos um exemplo bem definido dos intervalos de classes com as composições lógicas: Proposição Lógica Resultado Se a população quilombola for inferior a 20 famílias Classificar como 1 Caso contrário, se a população quilombola for superior a 20 famílias e inferior a 50 famílias Classificar como 2 Caso contrário, se a população quilombola for superior a 50 famílias e inferior a 70 famílias Classificar como 3 Caso contrário, se a população quilombola for superior a 70 famílias e inferior a 90 famílias Classificar como 4 Caso contrário, se a população quilombola for superior a 90 famílias e inferior a 110 famílias Classificar como 5 Caso contrário, se a população quilombola for superior a 110 famílias e inferior a 120 famílias Classificar como 6 Caso contrário, se a população quilombola for superior a 120 famílias e inferior a 140 famílias Classificar como 7 Caso contrário, se a população quilombola for superior a 140 famílias e inferior a 400 famílias Classificar como 8 Caso contrário, se a população quilombola for superior a 400 famílias Classificar como 9 A estrutura principal está pronta. Nos passos a seguir, vamos utilizar uma linguagem de programação para realizar a varredura em todos os valores da coluna e classificar esses valores de acordo com o resultado indicado na tabela acima. Linguagem Python O código da tabela foi escrito para a linguagem Python. Daqui por diante, você pode seguir esses procedimentos para aprender a executar scripts Python no QGIS. Baixe o arquivo classe.txt criado exclusivamente para atender essa tarefa:
  • 4. 4 Execução do Código Python no QGIS Abra o painel Processar no QGIS 2.8 e procure pelo algoritmo Advanced Python Field Calculator (ele está localizado no subgrupo Vector Table Tools que faz parte do grupo Geoalgoritmos QGIS). Não se esqueça de verificar se o item Advanced Interface está exibindo as ferramentas do painel Processar. Com o algoritmo aberto, ajuste essas configurações: 1 - Selecione o polígono de entrada e digite o nome CLASSE para que o QGIS possa gerar uma nova coluna: 2 - Selecione o Tipo de Campo como Inteiro com Comprimento 10 e Precisão 0:
  • 5. 5 3 – No item Expressão Global, cole o código que está armazenado no arquivo classe.txt: 4 – No item Fórmula, precisamos chamar a função reclass e indicar a coluna da Tabela de Atributos que contém o total das famílias quilombolas. No shapefile, o campo ou coluna que contém essa informação chama-se NR_FAMIL8. Digite a seguinte expressão no campo Fórmula: value = reclass (<NR_FAMIL8>) 5 – No item Camada de Saída, selecione a opção Salvar em Arquivo para gerar um novo arquivo shapefile: 6 – Digite o nome do arquivo shapefile que será criado: Execute o processo. O QGIS vai adicionar um arquivo chamado Camada de Saída. Você pode remover este arquivo e acessar o verdadeiro arquivo gerado pelo processo.
  • 6. 6 Para avaliar as mudanças, investigue o campo CLASSE. O código Python classificou os valores de acordo com as regras pré-definidas. Compare os resultados deste campo com os valores das famílias presentes no campo NR_FAMIL8. Configuração da Simbologia por Categoria Acesse as Propriedades do Camada Vetorial e faça a edição de simbologia por Estilo Categorizado, selecionando o campo CLASSE gerado pela Calculadora Python. No item Legenda, defina as classes e as cores de acordo com o seu gosto. Você pode digitar os intervalos numéricos ou incluir números e textos. Esta opção é livre para o analista decidir. O número de famílias quilombolas será representado pelo intervalo de classes definido pelo analista. Mesmo com o total de famílias sendo exibido sobre cada área demarcada, a classificação de campos ajudar a ampliar a percepção dos dados durante a criação de mapas temáticos. O passo final consiste em utilizar o Compositor de Impressão para construir o mapa.
  • 7. 7 Ora, mas qual a finalidade de classificar campos com intervalos pré-definidos? Tente imaginar uma quantidade imensa de cores para representar 3.500 famílias. Seria inviável, não é mesmo?
  • 8. 8 Contatos Jorge Santos Consultor em Geotecnologias E-mail: jorgepsantos@outlook.com Skype: jorgepsantos2002 Processamento Digital – Geotecnologias e Software Livre Endereço: http://www.processamentodigital.com.br/ Twitter: http://twitter.com/jpsantos2002 Facebook: http://www.facebook.com/ProcessamentoDigital LinkedIn: http://br.linkedin.com/pub/jorge-santos/10/38b/8a4/ Atuação  Consultor para Projetos que envolvem Demandas de SIG/PDI;  Instrutor para Treinamento Avançado em Geotecnologias;  Instrutor para Treinamento Avançado no Processamento Digital de Imagens.