Pular para o conteúdo

QGIS: União entre Planilhas Excel e Shapefiles

Este post traz um tutorial de como unir planilhas excel com shapefiles no QGIS.

Em trabalhos com softwares SIG (Sistema de Informação Geográfica), é comum a busca por arquivos shapefiles que contenham um determinado dado/ fenômeno, para espacializa-lo em um mapa temático. Porém, e se os dados requeridos estão apenas em formato de planilha de textos? A união de dados em forma de texto (planilhas excel, por exemplo) com arquivos shapefiles é uma das formas de se espacializar informações, uma vez que nem sempre estes dados já estão inseridos nos arquivos shp.

COMO FUNCIONA A UNIÃO DE PLANILHAS COM O SHAPEFILE?

O princípio de união de planilha é simples: imagine um arquivo shapefile, que contém 3 pontos. Na tabela de atributos deste shape, existem duas colunas (atributos): “id” (um código numérico para identificar cada ponto) e “população” nestes pontos. Porém, você precisa de dados de renda e faixa etária destes pontos, que estão numa planilha excel (juntamente com a coluna “cod” que são os código dos pontos, igual à coluna “id” no shapefile).

O QGIS tem uma função de união que permite unir os dados da tabela excel à tabela shapefile, desde as duas apresentem uma coluna com dados em comum. Neste exemplo, seria a coluna de identificação dos pontos (id no “shapefile” e “cod” na planilha). Desta forma, as informações de renda e faixa etária são incluída diretamente na tabela de atributos do shapefile.

principio_uniao_planilha_shapefi

 

CONFIGURAÇÕES BÁSICAS PARA A UNIÃO DE PLANILHA EXCEL COM ARQUIVO SHAPEFILE

Para que a união entre a planilha excel e o arquivo shapefile seja bem sucedida, deve-se atentar à algumas configurações básicas nos arquivos utilizados:

  1. A planilha excel deve estar em formato .csv (valores Separados por Vírgulas): o formato padrão de planilhas excel é .xls e .xlsx. No entanto, há outros formatos utilizados, e softwares SIG fazem a importação destas planilhas se estiverem no formato .csv (Valores Separados por Vírgula). Caso a planilha que deseja utilizar não esteja neste formato, utilize a função “salvar como” e salve em .csv;
  2. A planilha excel e o arquivo shapefile devem possuir, ao menos, uma coluna em comum com o outro: tanto a tabela de atributos do shapefile como a planilha excel devem possuir uma coluna (campo) com dados em comum entre as duas tabelas. Os valores contidos nessa coluna devem ser únicos para cada célula, a fim de evitar que ocorra a união errada de dados. No Brasil, Estados, Municípios e Setores Censitários possuem códigos próprios, desenvolvidos pelo IBGE (Instituto Brasileiro de Geografia e Estatística), tanto em planilhas de dados como em arquivos shapefiles, o que facilita a união entre as duas fontes.
  3. Os dados na planilha excel devem estar em formatação uniforme (caixa alta ou baixa, separação de decimais etc.): todos os dados, tanto numéricos como textuais, devem estar devidamente formatados. O QGIS não reconhece o separador de milhares, então valores como “10.000” devem estar escritos como “10000”. O separador de decimais dever ser único, ou ponto ou vírgula (e deve ser dito, no ato de importação da planilha, qual é o utilizado nela). Verifique também a formatação de dados textuais. O QGIS é sensível à diferenciação de letras maiúsculas e minúsculas (ex. para o QGIS, “AA”, “Aa” “aA” e “aa” são 4 valores diferentes, por estarem escritos de forma diferentes).

config_uniao

 

EXEMPLO DE UNIÃO ENTRE PLANILHA EXCEL E ARQUIVO SHAPEFILE

Como exemplo prático, vamos inserir dados de produto interno bruto (PIB) per Capita, de 2017 nos municípios brasileiros. O exemplo pode ser aplicado a qualquer fonte de dados, loca, nacional ou internacional, desde que o shapefile e a planilha possuam uma coluna (campo) em comum.

A primeira coisa que deve ser feita é baixar o arquivo shape dos municípios brasileiro. Para isso, acesse o portal geociências do IBGE e baixe o shapefile da malha municipal, como na figura abaixo.

tutorial_00

Agora, acesse o portal de dados estatísticos do IBGE e faça download da planilha de dados do produto interno bruto dos municípios, como na figura abaixo. Assim você possui os dois arquivos necessários para fazer a união de tabelas e, consequentemente, poderá fazer um mapa temático de PIB dos Municípios Brasileiros.

tutorial_00b

Antes de começarmos a trabalhar no QGIS, devemos primeiro tratar a planilha baixada. Acesse-a e verifique que há várias colunas com códigos de Identificação (município, Estados, etc.). Interessa, a esse tutorial a coluna de códigos municipais, marcada em amarelo na figura abaixo.

tutorial_00c

Utilizando a barra de rolagem no canto inferior da tela, você pode navegar entre as demais colunas. a coluna “AN” possui dados de PIB per Capita (marcados em laranja na figura baixo), que são do interesse do tutorial.

tutorial_00d

No entanto, perceba que ela possui separador de milhares e, como foi escrito acima, deve formatar os números de maneira que sejam retirados os marcadores de milhares. Para isso, clique no nome “AN” para selecionar todas as células da coluna, vá na caixa de formatação e escolha a formatação “geral”. Assim, os valores só terão separador de decimais (decore o fato de o separador ser em vírgula, isto será importante ao importar a planilha no QGIS). Salve a planilha no formato .csv (Valores Separados por Vírgula).

tutorial_00e

No QGIS (aqui estamos utilizando a versão 3.4), insira o shapefile dos limites municipais.

tutorial_01

Agora, no “Gerenciador de Fontes de Dados”, onde escolheu o arquivo shapefile a ser inserido, clique na aba “Texto delimitado”. Clique nos três pontos (“…”) para procurar a planilha em csv.

tutorial_02

Agora deve-se configura como a planilha será inserida no QGIS, conforme a figura abaixo:

  • Em “Formato do arquivo”, marque a opção “delimitadores personalizados” e em “ponto-e-vírgula”;
  • Em “Opções de Gravações de Campos”, marque as opções “Primeiro registro tem nomes de campos”, “tipos de campos detectados” e “Separador decimal é a vírgula” (lembra que, na planilha, os decimais eram separados por vírgulas?);
  • Em “definição de geometria”, marque a opção “Sem geometria (atributo apenas de tabela). Escolha o SRC do projeto.

Verifique se na amostras de dados é possível identificar corretamente as colunas (campos) e seus respectivos valores. Quando estiver tudo configurado, clique em “Adicionar” e feche a tela. Veja que agora a tabela foi adicionada como uma camada, mas como não possui geometria, não parece na tela.

tutorial_03

Clique no shapefile e depois, abra a tabela de atributos dele. Veja que, na camada, existe uma coluna (campo) com o geocódigo do município, assim como a planilha excel. Portanto, esse dado será utilizados para unir as duas tabelas.

tutorial_04

Agora é a etapa de unir as tabelas. Clique com o botão direito no shapefile dos limites municipais e depois clique em “Propriedades”.

tutorial_05

Na aba “Uniões”, clique no símbolo de “+” verde, para adicionar uma união. Uma tela vai aparecer, para configurar a união das duas tabelas:

  • Em “Unir camadas”, escolha a planilha que foi importada para o QGIS (se for a única disponível, já deve estar sendo exibida);
  • Em “Unir campo”, escolha a coluna da planilha que possui os códigos municipais (no caso, a coluna “Código dos Municípios”);
  • Em “Campo alvo”, escolha a coluna (campo) do shapefile que possui os mesmos dados de códigos municipais (no caso, o campo “CD_GEOCMU”)
  • Deixe a opção “Armazenar temporariamente a camada unida na memória virtual”, para que a união ocorra inicialmente em arquivo temporário. Caso a união seja feita corretamente, pode-se salvar em definitivo o shapefile com os novos dados;
  • Clique em “Campos unidos” para selecionar que colunas da planilha excel quer que sejam unidas ao shapefile. Caso não marque esta opção, todos os dados da planilha serão automaticamente inseridos, o que pode gerar excesso de dados desnecessários ao shapefile, tornando-o desnecessariamente pesado. Para este tutorial, interessa somente a coluna de “Produto Interno Bruto per Capita, a Preços Correntes (R$ 1,00)”. Marque somente ela;
  • Clique em “Personalizar prefixo de nome do campo”. Esta opção permite criar um prefixo antes de do nome de cada coluna. Porém como os campos de shapefiles possuem uma quantidade limitada de caracteres, deixar o nome padrão pode tornar a maioria dos campos novos com o mesmo nome, dificultando sua identificação. Portanto, e delete o texto padrão apresentado para que os novos campos apresentem o nome de origem contido na planilha.

Após esta configuração, clique em “OK”.

tutorial_06

Agora vai aparecer as uniões realizadas nesse projeto do QGIS. Clique em “Apply”/”Aplicar” (o nome depende da tradução da sua versão do QGIS) e em “OK”.

tutorial_07

Abra a tabela de atributos do shapefile de limites municipais e uma nova coluna com o PIB per Capita foi adicionada à tabela. Se sua tabela de atributos está igual à figura abaixo, parabéns! Você acabou de adicionar dados de planilha excel em um shapefile! Feche a tabela de atributos, clique com o botão direito do mouse sobre a camada de limites municipais e salve-a no seu pc, para que o novo campo de PIB per Capita fique salvo permanentemente no shapefile.

tutorial_08

Agora você pode manipular os novos dados e criar mapas temáticos!

tutorial_09

 

Se você tiver outros dados de municípios para adicionar, é só repetir este procedimento com as demais planilhas de dados.

Até a próxima!

 

 

 

 

 

 

 

3 Comments »

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s

%d blogueiros gostam disto: