Skip to content
PYGWALKER
Tutoriels
Comment intégrer PyGWalker avec Shiny-Python

Comment intégrer PyGWalker avec Shiny-Python

Shiny-Python est un excellent framework pour créer des applications Web interactives en utilisant Python, et le combiner avec pygwalker ouvre de nouvelles possibilités pour créer des applications Web interactives basées sur les données. Dans ce tutoriel, nous vous guiderons à travers le processus d'intégration de pygwalker avec Shiny-Python.

Prérequis :

  1. Assurez-vous d'avoir installé les bibliothèques shiny et pygwalker. Vous pouvez le faire en utilisant pip :
pip install shiny pygwalker

Guide étape par étape :

1. Importez les bibliothèques nécessaires

Commencez par importer les modules nécessaires :

from shiny import App, ui
import pygwalker as pyg
from datasets import load_dataset

2. Chargez le jeu de données

Pour ce tutoriel, nous utilisons le jeu de données NYC-Airbnb, mais vous pouvez le remplacer par n'importe quel jeu de données de votre choix :

dataset = load_dataset("gradio/NYC-Airbnb-Open-Data", split="train")
df = dataset.to_pandas()

3. Concevez l'interface utilisateur de Shiny

Définissez l'interface utilisateur (UI) de l'application Shiny en utilisant les composants ui :

app_ui = ui.page_fluid(
    ui.h1("Utilisation de pygwalker avec Shiny"),
    ui.markdown("Il s'agit d'une démonstration de l'utilisation de [pygwalker](https://github.com/Kanaries/pygwalker) avec Shiny."),
    ui.HTML(pyg.walk(df, spec="./viz-config.json", return_html=True, debug=False)),
)

Voici une brève description des composants de l'UI :

  • ui.h1(): Ajoute un en-tête à l'application Shiny.
  • ui.markdown(): Vous permet d'inclure du texte au format markdown pour les descriptions ou les informations supplémentaires.
  • ui.HTML(): C'est là que pygwalker entre en jeu. La fonction pyg.walk() transforme le jeu de données en une visualisation interactive, qui est ensuite rendue dans l'application Shiny à travers ce composant HTML.

4. Définissez la fonction serveur

Bien que dans cet exemple, la fonction serveur soit vide, c'est là que tout comportement réactif serait défini. À mesure que l'application devient plus complexe, vous pourriez vous retrouver à remplir cette section avec une logique interactive supplémentaire.

def server(input, output, session):
    ...

5. Instanciez et exécutez l'application

Enfin, créez l'instance de l'application Shiny, puis exécutez-la :

app = App(app_ui, server)

Si vous souhaitez lancer immédiatement l'application, vous pouvez ajouter la ligne :

app.run()

ou

shiny run --reload

Conclusion

En intégrant pygwalker avec Shiny-Python, vous pouvez exploiter la puissance des deux outils pour créer des applications Web impressionnantes et interactives de visualisation de données. Cela offre non seulement une expérience utilisateur enrichissante, mais permet également à un public plus large de s'engager avec vos insights. Lancez-vous et exploitez le potentiel de vos jeux de données !

Références

Code de démonstration pygwalker-in-shiny (opens in a new tab)