Se você está começando a explorar o mundo da programação e deseja criar aplicações web interativas, o Streamlit é uma ferramenta poderosa e fácil de usar. Neste guia, vamos aprender como exibir mapas no Streamlit, uma funcionalidade que pode ser extremamente útil para visualizar dados geográficos de maneira intuitiva. Vamos lá?
Introdução ao Streamlit e Mapas
O que é o Streamlit?
O Streamlit é uma biblioteca de código aberto em Python que permite criar aplicações web interativas de forma rápida e simples. Com ele, você pode transformar scripts de dados em aplicativos web bonitos e funcionais com poucas linhas de código.
O que são mapas no Streamlit?
Mapas no Streamlit são representações visuais de dados geográficos. Eles permitem que você visualize pontos de dados em um mapa, facilitando a análise e a compreensão de informações espaciais.
Por que usar mapas em suas aplicações?
Usar mapas em suas aplicações pode ser extremamente benéfico para visualizar dados de localização, identificar padrões geográficos e tomar decisões informadas. Seja para mostrar a localização de clientes, pontos de interesse ou qualquer outro dado geográfico, os mapas tornam a análise mais intuitiva e visualmente atraente.
Configurando o Ambiente
Instalando o Streamlit
Antes de começarmos a criar nossos mapas, precisamos instalar o Streamlit. Você pode fazer isso facilmente usando o pip:
pip install streamlit
Criando um novo projeto
Depois de instalar o Streamlit, crie um novo diretório para o seu projeto e dentro dele, um novo arquivo Python. Vamos chamá-lo de app.py
.
mkdir meu_projeto
cd meu_projeto
touch app.py
Primeiros Passos com Mapas no Streamlit
Importando bibliotecas necessárias
Para começar, precisamos importar o Streamlit e outras bibliotecas que vamos utilizar, como o Pandas para manipulação de dados.
import streamlit as st
import pandas as pd
import numpy as np
Criando um DataFrame com coordenadas de exemplo
Vamos criar um DataFrame com algumas coordenadas de exemplo para exibir no nosso mapa.
df = pd.DataFrame(
np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],
columns=['lat', 'lon']
)
Como usar st.map no Streamlit
Para exibir mapas no Streamlit, inicialmente, você pode utilizar a função st.map
. Esta função permite, de maneira simples e rápida, renderizar mapas interativos. Primeiramente, é necessário que o Streamlit esteja instalado e que você importe a biblioteca no seu script. Em seguida, você pode, então, usar st.map
para exibir um mapa com base em um DataFrame que contenha coordenadas geográficas (latitude e longitude). Além disso, esta função é ideal para visualizações geoespaciais básicas e pode ser facilmente combinada com outras funcionalidades do Streamlit, resultando na criação de aplicações web interativas.
Exibindo um Mapa Simples
Utilizando a função st.map
A função st.map
do Streamlit facilita a exibição de mapas. Vamos ver um exemplo básico.
st.map(df)
Exemplo básico de exibição de mapa
No seu arquivo app.py
, adicione o seguinte código para exibir um mapa simples:
import streamlit as st
import pandas as pd
import numpy as np
df = pd.DataFrame(
np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],
columns=['lat', 'lon']
)
st.map(df)
Para executar o aplicativo, use o comando:
streamlit run app.py
Personalizando o Mapa
Alterando o tamanho dos pontos
Você pode personalizar o tamanho dos pontos no mapa usando o parâmetro size
.
st.map(df, size=20)
Mudando a cor dos pontos
Também é possível alterar a cor dos pontos utilizando o parâmetro color
.
st.map(df, color='#0044ff')
Utilizando colunas diferentes para latitude e longitude
Se suas coordenadas estiverem em colunas diferentes, você pode especificar quais colunas usar para latitude e longitude.
df = pd.DataFrame({
"col1": np.random.randn(1000) / 50 + 37.76,
"col2": np.random.randn(1000) / 50 + -122.4,
"col3": np.random.randn(1000) * 100,
"col4": np.random.rand(1000, 4).tolist(),
})
st.map(df, latitude='col1', longitude='col2', size='col3', color='col4')
Exemplos Práticos
Exemplo 1: Mapa com pontos de interesse
Vamos criar um mapa que exibe pontos de interesse em uma cidade.
poi = pd.DataFrame({
'lat': [37.77, 37.78, 37.79],
'lon': [-122.41, -122.42, -122.43],
'name': ['POI 1', 'POI 2', 'POI 3']
})
st.map(poi)
Exemplo 2: Mapa com dados de localização de clientes
Agora, vamos criar um mapa que exibe a localização de clientes.
clientes = pd.DataFrame({
'lat': [37.76, 37.75, 37.74],
'lon': [-122.40, -122.39, -122.38],
'cliente': ['Cliente 1', 'Cliente 2', 'Cliente 3']
})
st.map(clientes)
Conclusão
Neste guia, primeiramente, aprendemos como exibir mapas no Streamlit, começando com a configuração do ambiente. Em seguida, avançamos para a personalização dos mapas, complementando o aprendizado com exemplos práticos. Além disso, vale destacar que os mapas são uma ferramenta poderosa para visualizar dados geográficos, o que, por sua vez, pode tornar suas aplicações ainda mais interativas e informativas
Se você gostou deste tutorial e quer continuar aprendendo, recomendamos explorar mais sobre o Streamlit e suas funcionalidades. Você pode começar com a documentação oficial do Streamlit ou conferir outros exemplos práticos na página de exemplos do Streamlit.
Referências
Cursos de programação gratuitos com certificado
Aprenda a programar e desenvolva soluções para o seu trabalho com Python para alcançar novas oportunidades profissionais. Aqui na Asimov você encontra:
- Conteúdos gratuitos
- Projetos práticos
- Certificados
- +20 mil alunos e comunidade exclusiva
- Materiais didáticos e download de código
Comentários