1
resposta

Integração Flask, Pandas e Plotly

É possível fazer uma APP em Flask com um dashboard alimentado pelo Pandas e Plotly ou outra lib de gráficos?

Em outras palavras, é possível fazer a integração de dados vindos do Pandas e gráficos gerados pela Plotly ou outra lib com o Flask?

1 resposta

Olá Jose, como você está?

Peço desculpas pela demora em obter um retorno.

Sim, é possível criar uma aplicação Flask com um dashboard alimentado pelo Pandas e Plotly ou outra biblioteca de gráficos. Para integrar essas bibliotecas em sua aplicação Flask, você pode criar rotas que processam os dados usando o Pandas e geram os gráficos usando o Plotly. Em seguida, você pode renderizar esses gráficos em uma página HTML usando um template Flask.

Abaixo, um exemplo simples de como integrar o Pandas e o Plotly em sua aplicação Flask:

import pandas as pd
import plotly.graph_objs as go
from flask import Flask, render_template_string

app = Flask(__name__)

dashboard_html = """
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Dashboard de Vendas</title>
</head>
<body>
    {{ plot|safe }}
</body>
</html>
"""

@app.route('/')
def home():
    data = pd.DataFrame({
        'mes': ['Jan', 'Fev', 'Mar', 'Abr', 'Mai', 'Jun'],
        'valor': [10, 20, 15, 25, 30, 20]
    })
    fig = go.Figure([go.Bar(x=data['mes'], y=data['valor'])])
    return render_template_string(dashboard_html, plot=fig.to_html())

if __name__ == '__main__':
    app.run(debug=True)

Resultado:

Imagem contendo a exibição do gráfico criado em uma página web, pelo código apresentado anterior a esta imagem.

No código acima, estamos utilizando o Flask para criar um aplicativo web e renderizar um dashboard de vendas. Primeiramente, criamos uma string com o código HTML para a página do dashboard. Em seguida, utilizamos o decorator `@app.route('/')para criar a rota principal do nosso aplicativo. Dentro da funçãohome(), criamos umDataFramedo Pandas com dados simulados e usamos a biblioteca Plotly para gerar um gráfico de barras com base nesses dados. Por fim, utilizamos a funçãorender_template_string()` para renderizar a página do dashboard com o gráfico gerado pelo Plotly. Lembrando que, em uma aplicação real, você provavelmente irá ler os dados de uma fonte externa (como um banco de dados ou um arquivo CSV) em vez de incluí-los diretamente no código.

Para se aprofundar nestes assuntos, deixo abaixo algumas indicações de cursos e leituras:

Espero ter ajudado. Não hesite em voltar ao fórum para continuar aprendendo e interagindo com a comunidade.

Em caso de dúvidas estou à disposição.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!