Top 5 bibliothèques Python pour héberger et partager votre PyGWalker en tant qu'application Web
Dans le monde actuel centré sur les données et en constante évolution, partager vos idées est aussi important que les générer. Python, en tant que langage de premier plan en science des données, offre de nombreuses bibliothèques pour créer des applications Web à partir de vos analyses de données. Si vous êtes fan de pygwalker
pour la visualisation interactive, vous avez de la chance ! Cet article vous présente les 5 meilleures bibliothèques pour héberger et partager vos visualisations pygwalker
en tant qu'applications Web.
- Streamlit
- Gradio
- Dash
- Shiny-Python
- Flask
1. Streamlit
Présentation:
Streamlit (opens in a new tab) est une bibliothèque Python extrêmement populaire qui transforme les scripts de données en applications Web partageables en quelques minutes seulement, au lieu de semaines. Vous pouvez considérer Streamlit comme Flask adapté aux data scientists, ce qui permet un développement rapide d'applications de données sans avoir à plonger dans les subtilités du développement Web. De plus, Streamlit offre une plateforme transparente pour convertir pygwalker
en une application Web en direct, vous permettant de partager avec un public plus large et de ne pas se contenter de présenter des rapports statiques. L'utilisateur peut poser des questions et poursuivre l'exploration en fonction de ses besoins.
Fonctionnalités clés:
- Simplicité: Transformez vos scripts de données en applications Web en quelques lignes de code seulement.
- Widgets interactifs: Ajoutez facilement des curseurs, des boutons et des champs de saisie de texte pour manipuler les visualisations.
- Rechargement à chaud: Visualisez les modifications en temps réel sans redémarrer votre application.
Intégration avec PyGWalker:
Streamlit et PyGWalker offrent une combinaison puissante. L'API récente de pygwalker
facilite son utilisation avec Streamlit, en permettant l'utilisation du moteur de calcul duckdb
, une fonctionnalité exclusive à leur combinaison. Voici un guide d'intégration étape par étape :
-
Configuration de l'environnement : Assurez-vous d'avoir Python 3.6 ou une version supérieure. Installez les dépendances nécessaires avec la commande :
pip install pandas pygwalker streamlit
-
Intégration de PyGWalker dans Streamlit : Créez un nouveau script Python nommé
pygwalker_demo.py
. Utilisez leStreamlitRenderer
depygwalker.api.streamlit
pour une intégration transparente :from pygwalker.api.streamlit import StreamlitRenderer, init_streamlit_comm import pandas as pd import streamlit as st st.set_page_config( page_title="Utiliser Pygwalker dans Streamlit", layout="wide" ) init_streamlit_comm() st.title("Utiliser Pygwalker dans Streamlit") @st.cache_resource def get_pyg_renderer() -> "StreamlitRenderer": df = pd.read_csv("https://kanaries-app.s3.ap-northeast-1.amazonaws.com/public-datasets/bike_sharing_dc.csv") return StreamlitRenderer(df, spec="./gw_config.json", debug=False) renderer = get_pyg_renderer() renderer.render_explore()
-
Exploration des données dans Streamlit avec PyGWalker : Exécutez votre application Streamlit en utilisant la commande :
streamlit run pygwalker_demo.py
. Cette commande démarrera votre application Streamlit et vous pourrez visualiser vos données de manière interactive en utilisant la fonctionnalité intuitive de glisser-déposer de PyGWalker. -
Sauvegarde de l'état du graphique PyGWalker : Lorsque votre rendu pygwalker est en mode débogage et que le paramètre
spec
pointe vers un chemin de fichier JSON local, vous pouvez sauvegarder la configuration de votre graphique en cliquant sur le bouton de sauvegarde dans l'interface d'exploration.
Plus d'informations : Comment utiliser PyGWalker avec Streamlit
2. Gradio
Présentation: Gradio (opens in a new tab) vous permet de créer une interface utilisateur autour de modèles d'apprentissage automatique. Mais ce n'est pas limité à cela. Sa facilité de création d'interfaces personnalisées est inégalée.
Fonctionnalités clés:
- Flexibilité de l'interface: Créez des interfaces à partir de listes déroulantes, de curseurs, de zones de texte, etc.
- Déploiement rapide: Créez et déployez rapidement des prototypes d'apprentissage automatique.
- Partage: Obtenez des liens partageables pour vos applications, ce qui facilite la collaboration.
Intégration avec PyGWalker:
Le composant d'interface HTML
de Gradio peut héberger des visualisations pygwalker
.
import gradio as gr
import pygwalker as pyg
code_html = pyg.walk(..., return_html=True)
gr.Interface(fn=None, inputs=None, outputs=gr.HTML()).launch()
Plus d'informations : Comment utiliser PyGWalker avec Gradio
3. Dash
Présentation: Dash (opens in a new tab) de Plotly est un framework productif pour créer des applications Web analytiques. Aucun JavaScript n'est requis.
Fonctionnalités clés:
- Réactivité: Construisez des applications réactives autour des graphiques Plotly.
- Personnalisable: Concevez votre interface utilisateur avec une vaste gamme de composants Dash.
- Intégration: Prise en charge étendue d'autres bibliothèques de graphiques Plotly.
Intégration avec PyGWalker:
Avec le composant html.Div
de Dash, les visualisations pygwalker
peuvent être intégrées de manière transparente.
import dash
import dash_dangerously_set_inner_html
import dash_html_components as html
import pygwalker as pyg
from datasets import load_dataset
# load dataset
dataset = load_dataset("gradio/NYC-Airbnb-Open-Data", split="train")
df = dataset.to_pandas()
app = dash.Dash()
html_code = pyg.walk(df, return_html=True)
app.layout = html.Div([
dash_dangerously_set_inner_html.DangerouslySetInnerHTML(html_code),
])
if __name__ == '__main__':
app.run_server(debug=True)
4. Shiny-Python
Présentation:
Alors que la bibliothèque Shiny de R est renommée pour les applications interactives, le portage Python, shiny
, apporte des capacités similaires à Python.
Fonctionnalités clés:
- Réactivité: Créez des applications avec des liaisons réactives pour des mises à jour en direct.
- Composants d'interface utilisateur: Shiny offre une pléthore de composants d'interface utilisateur.
Intégration avec PyGWalker:
En utilisant le composant ui.HTML
, les visualisations pygwalker
peuvent être intégrées dans l'application Shiny.
from shiny import App, ui
import pygwalker as pyg
code_html = pyg.walk(..., return_html=True)
app_ui = ui.page_fluid(
ui.HTML(code_html)
)
app = App(app_ui)
Plus d'informations : Comment utiliser PyGWalker avec Shiny-Python
5. Flask
Présentation: Flask (opens in a new tab) est un framework d'application Web WSGI léger. Bien qu'il ne soit pas spécifiquement destiné aux applications de données, sa flexibilité est inégalée.
Fonctionnalités clés:
- Microframework : Flask vous offre les bases pour exécuter une application Web.
- Extensions : Améliorez les capacités de Flask grâce à des extensions.
Intégration avec PyGWalker:
Vous pouvez afficher le code HTML de pygwalker
au sein d'une application Flask en utilisant la fonction render_template
.
from flask import Flask, render_template_string
import pygwalker as pyg
app = Flask(__name__)
@app.route('/')
def home():
code_html = pyg.walk(..., return_html=True)
return render_template_string(code_html)
if __name__ == '__main__':
app.run(debug=True)
Conclusion
Vos histoires de données méritent un public plus large, et ces bibliothèques le permettent ! Que vous construisiez un simple prototype ou une application de données complète, ces bibliothèques combinées à pygwalker
offrent une combinaison puissante pour rendre vos données accessibles et interactives. Plongez-vous dedans, expérimentez et laissez vos visualisations briller sur le web !