Skip to content
PYGWALKER
Tutoriels
Comment utiliser PyGWalker avec Gradio

Démo sur Huggingface (opens in a new tab)

Comment utiliser PyGWalker avec Gradio

Pygwalker est une bibliothèque Python qui transforme vos données en une application de visualisation interactive (comme Tableau ou PowerBI). Par exemple, dans Jupyter Notebook, les data scientists utilisent souvent Pygwalker pour transformer les données en un module interactif intégré dans Jupyter, où ils peuvent explorer les visualisations en utilisant le glisser-déposer ou le langage naturel, sans écrire de code ou passer à d'autres outils.

Cependant, comment partager la visualisation interactive avec les autres ? Comment permettre à vos utilisateurs d'explorer les données par eux-mêmes ? Dans ce tutoriel, nous vous montrerons comment utiliser Pygwalker avec Gradio pour construire une application d'exploration et de partage de données.

Qu'est-ce que Gradio ?

Gradio (opens in a new tab) est une bibliothèque Python qui vous permet de créer rapidement des composants d'interface utilisateur personnalisables autour de vos modèles d'apprentissage automatique, de vos modèles d'apprentissage profond et d'autres fonctions. Il vous permet de créer une interface utilisateur simple et partageable pour votre modèle en seulement quelques lignes de code. Gradio est un excellent outil pour créer rapidement une application web pour partager votre modèle avec les autres.

Comment utiliser PyGWalker avec Gradio

Avant de commencer à exécuter Pygwalker avec Gradio, assurez-vous que votre ordinateur dispose d'un environnement Python configuré (version 3.6 ou supérieure). Une fois cela fait, suivez ces étapes simples :

Super ! Vous avez déjà fait des progrès substantiels. Je vais vous aider à compléter l'article du tutoriel avec les informations fournies.

Guide étape par étape pour intégrer PyGWalker avec Gradio

1. Installation

Avant de plonger, vous devez avoir installé les bibliothèques pygwalker et gradio. Si ce n'est pas déjà fait, c'est un jeu d'enfant avec pip :

pip install pygwalker gradio

2. Importer les bibliothèques nécessaires

Importez tous les modules essentiels dont vous aurez besoin, comme indiqué dans votre code :

import gradio as gr
import pygwalker as pyg
from datasets import load_dataset

3. Charger votre jeu de données

Pour ce tutoriel, nous utilisons le jeu de données NYC-Airbnb de Gradio, mais n'hésitez pas à 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()

4. Construire l'interface Gradio avec PyGWalker

Utilisez la fonctionnalité de blocs de Gradio pour encapsuler les composants de l'interface utilisateur, comme indiqué dans le code fourni :

with gr.Blocks() as demo:
    gr.Label("Exploration visuelle des données NYC-Airbnb avec PyGWalker et Gradio")
    gr.Markdown("Il s'agit d'une application de données construite avec les bibliothèques Pygwalker et Gradio. Vous pouvez utiliser des opérations de glisser-déposer pour explorer les données. Commencez votre analyse maintenant !")
    gr.HTML(pyg.walk(dataset=df, spec="./viz-config.json", debug=False, return_html=True))

Voici une explication détaillée :

  • gr.Label(): Fournit une étiquette ou un titre pour votre interface Gradio.
  • gr.Markdown(): Vous permet d'inclure un texte formaté en markdown pour des descriptions ou des informations détaillées.
  • gr.HTML(): C'est là que Pygwalker intervient. La fonction pyg.walk() transforme le jeu de données en une visualisation interactive, qui est ensuite rendue dans l'interface Gradio grâce à ce composant HTML.

5. Lancer l'application

Enfin, avec une seule commande simple, vous pouvez lancer l'application web :

demo.launch()

En exécutant le script, votre visualisation interactive des données devrait être disponible dans un navigateur. Vous pouvez explorer le jeu de données en utilisant les fonctionnalités de glisser-déposer ou de langage naturel (une clé d'API kanaries est nécessaire pour l'activer).

Démo sur Huggingface (opens in a new tab)

Une façon plus native d'intégrer Pygwalker avec Gradio

Pygwalker contient des fonctionnalités avancées, telles que le calcul du noyau, qui permettent d'accélérer l'exploration des données avec un moteur alimenté par duckDB. Depuis Pygwalker version>=0.3.10, il existe une prise en charge native pour Gradio.

from pygwalker.api.gradio import PYGWALKER_ROUTE, get_html_on_gradio
 
with gr.Blocks() as demo:
    # Charger le jeu de données
    dataset = load_dataset("gradio/NYC-Airbnb-Open-Data", split="train")
    df = dataset.to_pandas()
    pyg_app = get_html_on_gradio(df, spec="./viz-config.json")
    gr.HTML(pyg_app)
 
app = demo.launch(app_kwargs={
    "routes": [PYGWALKER_ROUTE]
})

Conclusion

En combinant la puissance de Pygwalker et Gradio, vous pouvez rapidement construire et partager des visualisations de données interactives. Cela permet non seulement de simplifier l'exploration des données, mais également de démocratiser l'accès aux connaissances issues des données, permettant ainsi aux non-techniciens d'interagir avec vos découvertes. Essayez-le et partagez vos connaissances avec le monde entier !

Références

[1] Gradio (opens in a new tab) [2] Documentation PyGWalker (opens in a new tab) [3] Jeu d'essai pygwalker + gradio (opens in a new tab) [4] Dépôt Github PyGWalker (opens in a new tab)