Skip to content
PYGWALKER
Anleitungen
Wie man PyGWalker in Shiny-Python integriert

Wie man PyGWalker in Shiny-Python integriert

Shiny-Python ist ein großartiges Framework zum Erstellen interaktiver Webanwendungen mit Python, und in Kombination mit pygwalker eröffnen sich neue Möglichkeiten für die Erstellung von datengetriebenen interaktiven Webanwendungen. In diesem Tutorial führen wir Sie durch den Prozess der Integration von pygwalker mit Shiny-Python.

Voraussetzungen:

  1. Stellen Sie sicher, dass sowohl die shiny- als auch die pygwalker-Bibliotheken installiert sind. Dies können Sie mit Pip tun:
pip install shiny pygwalker

Schritt-für-Schritt-Anleitung:

1. Erforderliche Bibliotheken importieren

Beginnen Sie mit dem Import der benötigten Module:

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

2. Datensatz laden

Für dieses Tutorial nutzen wir den NYC-Airbnb-Datensatz, aber Sie können ihn durch jeden gewünschten Datensatz ersetzen:

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

3. Gestalten der Shiny-Benutzeroberfläche

Definieren Sie die Benutzeroberfläche (UI) der Shiny-Anwendung mit ui-Komponenten:

app_ui = ui.page_fluid(
    ui.h1("Mit pygwalker in Shiny"),
    ui.markdown("Dies ist eine Demo zur Verwendung von [pygwalker](https://github.com/Kanaries/pygwalker) in Shiny."),
    ui.HTML(pyg.walk(df, spec="./viz-config.json", return_html=True, debug=False)),
)

Hier ist eine kurze Erklärung der UI-Komponenten:

  • ui.h1(): Fügt der Shiny-App eine Überschrift hinzu.
  • ui.markdown(): Ermöglicht das Hinzufügen von Text im Markdown-Format für Beschreibungen oder zusätzliche Informationen.
  • ui.HTML(): Hier kommt pygwalker ins Spiel. Die Funktion pyg.walk() verwandelt den Datensatz in eine interaktive Visualisierung, die dann über diese HTML-Komponente in der Shiny-App gerendert wird.

4. Definieren der Server-Funktion

Obwohl die Server-Funktion in diesem Beispiel leer ist, ist dies der Ort, an dem jegliches reaktive Verhalten definiert werden kann. Wenn die App komplexer wird, kann es sein, dass Sie diesen Abschnitt mit interaktiver Logik füllen müssen.

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

5. App instanziieren und ausführen

Erstellen Sie schließlich die Shiny-App-Instanz und führen Sie sie aus:

app = App(app_ui, server)

Wenn Sie die App sofort starten möchten, können Sie die Zeile hinzufügen:

app.run()

oder

shiny run --reload

Zusammenfassung

Durch die Integration von pygwalker in Shiny-Python können Sie die Leistung beider Tools nutzen, um eindrucksvolle und interaktive Datenvisualisierungs-Web-Apps zu erstellen. Dies bietet nicht nur ein ansprechendes Benutzererlebnis, sondern ermöglicht es auch einem breiteren Publikum, mit Ihren Daten-Einblicken in Kontakt zu treten. Legen Sie los und entfesseln Sie das Potenzial Ihrer Datensätze!

Referenzen

pygwalker-in-shiny Demo-Code (opens in a new tab)