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:
- Stellen Sie sicher, dass sowohl die
shiny- als auch diepygwalker-Bibliotheken installiert sind. Dies können Sie mit Pip tun:
pip install shiny pygwalkerSchritt-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_dataset2. 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 kommtpygwalkerins Spiel. Die Funktionpyg.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 --reloadZusammenfassung
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!