Como Criar Mapas Interativos em Python com a Biblioteca Plotly [Guia Prático]

Aprenda como criar mapas em Python usando a biblioteca Plotly. Veja como transformar dados geográficos em gráficos interativos com poucos comandos no Jupyter ou VS Code.

Se quiser pode acompanhar esse conteĂşdo em formato de vĂ­deo ou pode acessar o nosso Canal do YouTube para mais vĂ­deos!

Para receber por e-mail o(s) arquivo(s) utilizados na aula, preencha:

NĂŁo vamos te encaminhar nenhum tipo de SPAM! A Hashtag Treinamentos Ă© uma empresa preocupada com a proteção de seus dados e realiza o tratamento de acordo com a Lei Geral de Proteção de Dados (Lei n. 13.709/18). Qualquer dĂşvida, nos contate.

Como criar Mapas em Python

Você sabia que é possível criar mapas interativos no Python? Com as bibliotecas certas, dá para visualizar dados geográficos de forma clara e dinâmica, ideal para apresentar insights com impacto visual!

Quando trabalhamos com análise de dados, criar visualizações interativas e dinâmicas é uma excelente maneira de explorar e apresentar as informações.

O Python possui diversas bibliotecas que facilitam essa tarefa, como Matplotlib, Seaborn, Folium e Plotly.

Entre essas ferramentas, Plotly se destaca quando queremos criar gráficos interativos e dinâmicos, sendo intuitiva e fácil de integrar aos nossos projetos. É com essa biblioteca que iremos trabalhar para criar mapas em Python.

Nesta postagem, você aprenderá como criar um gráfico de mapa de calor interativo, utilizando Pandas para manipulação dos dados e Plotly Express para visualização.

Bibliotecas Gráficas no Python: Qual Escolher?

Existem várias bibliotecas para criar gráficos e mapas em Python. As mais conhecidas são:

  • Matplotlib: Ăłtima para gráficos estáticos e personalizados
  • Seaborn: facilita a criação de gráficos estatĂ­sticos com poucos comandos
  • Plotly: ideal para criar gráficos e mapas interativos, com zoom e animações
  • Folium: baseada em Leaflet.js, permite criar mapas interativos diretamente em notebooks, sendo muito usada em projetos com geolocalização

Se você está procurando criar gráficos interativos, a biblioteca Plotly é uma das mais recomendadas. Ela é intuitiva, poderosa e fácil de integrar aos seus projetos. É com ela que vamos trabalhar neste tutorial.

Quer saber mais sobre outras bibliotecas? Confira:

Instalando as Bibliotecas Necessárias

Para esta aula, você precisará de duas bibliotecas instaladas: Pandas para manipulação e análise de dados, e Plotly Express para gerar o gráfico do mapa de calor.

A instalação pode ser feita diretamente no terminal do seu editor de código ou no prompt de comando com o seguinte comando: pip install pandas plotly.

instalando as bibliotecas necessárias: plotly e pandas

Se quiser explorar outras formas de visualização geográfica no futuro, também vale a pena instalar o Folium: pip install folium

A biblioteca folium python Ă© uma excelente alternativa para criar mapas com marcadores personalizados, rotas e camadas, especialmente Ăştil quando se trabalha com dados espaciais mais complexos.

Configurando o Ambiente - Trabalhando com Mapas no Python

Para visualizar os mapas com interatividade, recomendamos usar o Jupyter Notebook ou se estiver usando o VS Code, instale a extensĂŁo do Jupyter.

Ambos permitem que o mapa seja renderizado dentro da célula, facilitando a exploração dos dados.

ĂŤcone PythonPython Impressionador

Você vai aprender a linguagem de Programação que mais cresce no Mundo para fazer automações incríveis, desenvolver sites, fazer análises de dados, trabalhar com Ciência de Dados, Inteligência Artificial, mesmo que você nunca tenha tido nenhum contato com Programação na vida.

Começar agoraSeta para a direita
Fundo PythonTelas Python
Luz Python

Importar e Visualizar a Base de Dados

No material disponível para download, você encontrará a base de dados que usaremos nesta aula: Cidades.csv.

Esse dataset foi obtido através do Kaggle e você pode conferir a fonte original aqui: Brazilian E-Commerce Public Dataset by Olist

Essa Ă© uma base pĂşblica de dados contendo cerca de 100.000 pedidos de produtos brasileiros feitos por e-commerce, organizados por regiĂŁo.

Para simplificar o trabalho e focar no objetivo de criar um gráfico de mapa em Python, a base de dados no material dessa aula já foi simplificada e consolidada.

Na base, estĂŁo registradas as quantidades de vendas feitas em e-commerce por CEP no Brasil.

Para carregar e visualizar o DataFrame, precisaremos importar a biblioteca Pandas e ler o arquivo CSV.

Python
import pandas as pd

tabela = pd.read_csv("Cidades.csv")
display(tabela)
Visualizando o dataframe

As colunas do dataset incluem Ă­ndices, prefixo do CEP, latitude, longitude, estados e a quantidade de vendas por CEP.

Essas informações são essenciais para criarmos um gráfico de mapa em Python, pois temos as coordenadas geográficas (latitude e longitude) e a métrica que queremos exibir (quantidade, o número de vendas).

Essas são as principais informações que você precisará sempre que desejar criar um mapa: coordenadas geográficas e a métrica a ser representada no mapa.

Como Criar Mapa em Python com Plotly

O Plotly oferece uma série de ferramentas que permitem criar gráficos de forma rápida e intuitiva. Para isso, utilizaremos o Plotly Express e a função density_mapbox, que nos ajuda a criar mapas de calor em Python, representando valores por meio de cores.

A escala do gráfico se adapta automaticamente ao nível de zoom aplicado, facilitando a visualização das informações.

Para criar o mapa, é necessário fornecer a base de dados e dois parâmetros principais: lat (latitude) e lon (longitude). No nosso dataset, esses parâmetros correspondem às colunas geolocation_lat e geolocation_lng.

O parâmetro z define qual coluna será usada para representar a magnitude ou quantidade de cada ponto no mapa.

Essa informação é visualizada por meio de cores: valores maiores aparecem em amarelo e os menores, em roxo. No nosso caso, o parâmetro z será a coluna quantidade, que contém as informações das vendas.

Para ajustar o tamanho das "bolhas" exibidas no mapa, utilizamos o parâmetro radius (raio). Quanto maior o valor, maior será o raio do ponto exibido.

O zoom controla o nível de aproximação do mapa. Valores maiores focam em áreas menores, enquanto valores menores abrangem áreas mais amplas.

Por fim, precisamos definir o mapbox_style, que define o estilo visual do mapa. Por exemplo, podemos utilizar o estilo open-street-map, que mostra ruas e detalhes geográficos ao aplicar zoom.

Depois de configurar esses parâmetros, exibimos o gráfico utilizando o método show().

Python
import plotly.express as px

grafico = px.density_mapbox(
    tabela,
    lon="geolocation_lng",
    lat="geolocation_lat",
    z="quantidade",
    mapbox_style="open-street-map",
    zoom=3,
    radius=10
)

grafico.show()
Gráfico de mapa em Python

Ajustando o Layout do Gráfico

Ao gerar o gráfico, você perceberá que ele vem com margens padrão. Essas margens fazem parte do layout padrão do Plotly, mas podemos ajustá-las para melhorar a aparência do gráfico.

Para isso, usamos a função update_layout(), que permite modificar diversos aspectos do layout. No nosso caso, ajustaremos o parâmetro margin, que controla o tamanho das margens ao redor do gráfico.

Podemos definir as margens como zero para remover completamente o espaço ao redor do gráfico, fazendo com que ele ocupe toda a área de visualização.

O parâmetro margin é um dicionário que aceita as seguintes chaves:

  • "r": Margem direita (right)
  • "t": Margem superior (top)
  • "b": Margem inferior (bottom)
  • "l": Margem esquerda (left)
Python
import plotly.express as px

grafico = px.density_mapbox(
    tabela,
    lon="geolocation_lng",
    lat="geolocation_lat",
    z="quantidade",
    mapbox_style="open-street-map",
    zoom=3,
    radius=10)

grafico.update_layout(margin={"r": 0, "t": 0, "b": 0, "l": 0})
grafico.show()
Criar mapa em Python com Plotly

Com isso, você terá seu gráfico de mapa pronto. Agora, será possível interagir com ele, aplicando zoom e explorando os dados de forma mais detalhada.

Interagindo com o mapa em Python

Para mais informações sobre o Plotly e suas funcionalidades, como a criação de mapas de calor e outros gráficos interativos, acesse a documentação oficial: Documentação Plotly

Conclusão – Como criar Mapas em Python

Na aula de hoje, você aprendeu a criar mapas em Python com apenas algumas linhas de código. Utilizando a biblioteca Plotly, é possível criar gráficos interativos e visuais atrativos, otimizando a apresentação de dados e insights.

A combinação do Pandas para manipulação de dados e do Plotly Express para visualização oferece uma solução simples, prática e poderosa para suas análises de dados.

O Plotly também oferece diversas outras funcionalidades para personalização de gráficos. Caso queira saber mais sobre essa biblioteca, confira nossa aula: Como Criar Gráficos no Python Utilizando o Plotly

E, se você quer se destacar no mercado de trabalho e se tornar uma referência em sua empresa com análises de dados precisas e insights valiosos, confira nossos cursos completos:

Hashtag Treinamentos

Para acessar outras publicações de Python, clique aqui!


Quer aprender mais sobre Python com um minicurso básico gratuito?

Posts mais recentes de Python

Posts mais recentes da Hashtag Treinamentos