Tamanho de fonte
Alto contraste
Altura de linha

Criando seu primeiro app com Streamlit

Avatar de Ana Maria Gomes Ana Maria Gomes
8 minutos de leitura 4 meses atrás

Se você já se perguntou como criar um web app de forma rápida e simples, o Streamlit pode ser a resposta que você estava procurando. Streamlit é uma biblioteca em Python que permite transformar scripts em aplicativos web interativos com apenas algumas linhas de código. Neste guia, vamos explorar o que é o Streamlit, como instalá-lo, e como criar seu primeiro app. Vamos lá?

Introdução ao Streamlit

O Streamlit é uma ferramenta poderosa que permite a criação de web apps de maneira rápida e intuitiva. Ele é especialmente útil para cientistas de dados, analistas e qualquer pessoa que queira transformar scripts Python em aplicativos interativos sem precisar de conhecimentos avançados em desenvolvimento web.

O que é o Streamlit?

Streamlit é uma biblioteca de Python que ganhou muita popularidade nos últimos anos por sua capacidade de criar e compartilhar aplicativos de dados de forma rápida e fácil. Com o Streamlit, é possível desenvolver dashboards interativos e visualizações de dados com poucas linhas de código. Ele é amplamente utilizado para prototipagem rápida e é conhecido por sua simplicidade e eficiência, permitindo que desenvolvedores transformem scripts de dados em aplicativos web interativos sem a necessidade de conhecimentos avançados em desenvolvimento web.

Por que usar o Streamlit para criar web apps?

A principal vantagem do Streamlit é a sua simplicidade. Você não precisa ser um desenvolvedor web para criar aplicativos interativos. Com apenas algumas linhas de código, você pode adicionar gráficos, tabelas, widgets e muito mais ao seu app. Além disso, o Streamlit permite uma rápida iteração, o que é perfeito para prototipagem e experimentação. Sua popularidade crescente e a facilidade de uso fazem dele uma ferramenta poderosa para desenvolvedores de todos os níveis.

Instalando o Streamlit

Antes de começar a criar seu app, você precisa instalar o Streamlit. A instalação é simples e pode ser feita de várias maneiras, dependendo do seu ambiente de desenvolvimento.

Requisitos básicos

Para instalar o Streamlit, você precisa ter o Python instalado em sua máquina. Recomenda-se usar o Python 3.6 ou superior.

Passo a passo para instalação

Usando pip

A maneira mais comum de instalar o Streamlit é usando o pip, o gerenciador de pacotes do Python. Abra o terminal e execute o seguinte comando:

pip install streamlit

Usando Anaconda

Se você prefere usar o Anaconda, também é possível instalar o Streamlit através do Anaconda Navigator. Basta abrir o Anaconda Navigator, ir até a seção “Environments”, selecionar o ambiente desejado e procurar por “streamlit” na aba “Not installed”. Clique em “Apply” para instalar.

Possíveis problemas e soluções

Durante a instalação, você pode encontrar alguns problemas comuns, como conflitos de versão ou falta de permissões. Se isso acontecer, tente atualizar o pip com o comando pip install --upgrade pip ou execute o terminal como administrador.

Criando seu primeiro script em Streamlit

Agora que você já instalou o Streamlit, é hora de criar seu primeiro script. Vamos começar com uma estrutura básica e adicionar um título ao nosso app.

Estrutura básica de um script Streamlit

A estrutura básica de um script Streamlit é bastante simples. Você só precisa importar a biblioteca e começar a adicionar elementos ao seu app.

import streamlit as st

st.title("Meu Primeiro App com Streamlit")

Adicionando um título ao seu app

No exemplo acima, usamos a função st.title() para adicionar um título ao nosso app. No entanto, você pode substituir o texto “Meu Primeiro App com Streamlit” por qualquer título que desejar.

Adicionando um gráfico simples

Vamos adicionar um gráfico simples ao nosso app usando a função st.line_chart(). Esta função permite criar gráficos de linha de forma rápida e fácil.

import pandas as pd
import numpy as np

data = pd.DataFrame(
    np.random.randn(50, 3),
    columns=['a', 'b', 'c']
)

st.line_chart(data)

Executando seu app Streamlit

Depois de criar seu script, você deve executá-lo para, em seguida, visualizar o app no navegador.

Para rodar seu script, abra o terminal, navegue até o diretório onde o script está salvo e execute o seguinte comando:

streamlit run nome_do_seu_script.py

Visualizando seu app no navegador

Após executar o comando acima, o Streamlit abrirá automaticamente uma nova aba no seu navegador padrão, onde você poderá visualizar seu app.

Adicionando elementos básicos ao seu app

Agora que você já sabe como criar e executar um script básico, vamos adicionar alguns elementos ao nosso app, como texto, tabelas e gráficos.

Adicionando texto e títulos

Você pode adicionar diferentes tipos de texto ao seu app usando funções como st.header(), st.subheader() e st.text().

st.header("Este é um cabeçalho")
st.subheader("Este é um subcabeçalho")
st.text("Este é um texto simples")

Exibindo tabelas de dados

O Streamlit oferece várias maneiras de exibir tabelas de dados. Vamos explorar algumas delas.

Usando st.write()

A função st.write() é uma das mais versáteis do Streamlit. Você pode usá-la para exibir texto, tabelas, gráficos e muito mais.

import pandas as pd

df = pd.DataFrame({
    'Coluna 1': [1, 2, 3, 4],
    'Coluna 2': [10, 20, 30, 40]
})

st.write(df)

Usando st.dataframe()

A função st.dataframe() permite exibir uma tabela interativa, onde o usuário pode ordenar e filtrar os dados.

st.dataframe(df)

Usando st.table()

A função st.table() exibe uma tabela estática, ideal para quando você não precisa de interatividade.

st.table(df)

Adicionando imagens

Você pode adicionar imagens ao seu app usando a função st.image(). Basta fornecer o caminho da imagem ou uma URL.

st.image("caminho/para/sua/imagem.png", caption="Esta é uma imagem")

Interatividade básica com widgets

Uma das grandes vantagens do Streamlit é a facilidade de adicionar interatividade aos seus apps. Vamos ver como adicionar alguns widgets básicos.

Adicionando um slider

Um slider permite que o usuário selecione um valor dentro de um intervalo.

valor = st.slider("Selecione um valor", 0, 100, 50)
st.write("O valor selecionado é:", valor)

Adicionando um botão

Um botão pode ser usado para acionar uma ação específica.

if st.button("Clique aqui"):
    st.write("Botão clicado!")

Adicionando uma caixa de seleção

Uma caixa de seleção permite que o usuário selecione ou desmarque uma opção.

if st.checkbox("Mostrar tabela"):
    st.write(df)

Adicionando um menu suspenso

Um menu suspenso permite que o usuário selecione uma opção de uma lista.

opcao = st.selectbox("Escolha uma opção", ["Opção 1", "Opção 2", "Opção 3"])
st.write("Você selecionou:", opcao)

Exemplo prático: Criando um app simples

Vamos criar um app simples que exibe dados de uma tabela e permite interatividade com widgets.

Passo a passo para criar um app que exibe dados de uma tabela

  1. Crie um novo script Python e adicione o seguinte código:
import streamlit as st
import pandas as pd
import numpy as np

st.title("Exemplo de App com Streamlit")

# Carregar dados
df = pd.DataFrame({
    'Coluna 1': [1, 2, 3, 4],
    'Coluna 2': [10, 20, 30, 40]
})

# Exibir tabela
st.write("Tabela de dados:")
st.write(df)

# Adicionar slider
valor = st.slider("Selecione um valor", 0, 100, 50)
st.write("O valor selecionado é:", valor)

# Adicionar checkbox
if st.checkbox("Mostrar tabela"):
    st.write(df)

# Adicionar gráfico interativo
data = pd.DataFrame(
    np.random.randn(50, 3),
    columns=['a', 'b', 'c']
)
st.line_chart(data)

Adicionando interatividade com widgets

No exemplo acima, adicionamos um slider e uma caixa de seleção para permitir que o usuário interaja com o app. O slider permite selecionar um valor, e a caixa de seleção permite mostrar ou ocultar a tabela de dados. Além disso, adicionamos um gráfico interativo para tornar o app mais dinâmico.

Conclusão

Neste guia, exploramos o que é o Streamlit, como instalá-lo e como criar seu primeiro app. Aprendemos a adicionar elementos básicos como texto, tabelas e widgets, e vimos um exemplo prático de um app simples. O Streamlit é uma ferramenta poderosa e fácil de usar, ideal para quem quer criar web apps interativos de forma rápida e intuitiva.

Se você gostou deste guia e quer aprender mais, recomendamos explorar a documentação oficial do Streamlit e experimentar criar seus próprios apps. O próximo passo pode ser aprender a adicionar gráficos mais complexos, integrar APIs ou até mesmo compartilhar seus apps com o mundo usando o Streamlit Community Cloud.

Projetos práticos para tentar

  1. Crie um dashboard de visualização de dados.
  2. Desenvolva um app que consome dados de uma API.
  3. Prototipe uma ferramenta de análise de dados interativa.

Referências

Imagem de um notebook

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
Inicie agora

Comentários

Comentar
Faça parte da discussão Crie sua conta gratuita e compartilhe
sua opinião nos comentários
Entre para a Asimov