Buchbesprechung: Python Dash – interaktive Datenanalyse und -visualisierung

Wer sich für das Erstellen interaktiver Dashbords zur Datenanalyse und -visualisierung mit Python interessiert, findet im No-Starch-Buch vielfältige Anregungen.

Lesezeit: 5 Min.
In Pocket speichern
vorlesen Druckansicht Kommentare lesen
Buchbesprechung: Python Dash – Interaktive Datenanalyse und -visualisierung

(Bild: Shutterstock.com / Redpixel.pl)

Von
  • Tam Hanna

Adam Schroeder, Christian Mayer, Ann Marie Ward
Python Dash
Build Interactive Data Analysis and Visualization Apps with Python and Plotly
No Starch Press, 2022
200 Seiten, ab 34,99 US-Dollar (Buch, eBook)
ISBN: 978-1-71850-222-2

Attraktive und idealerweise im Webbrowser bedienbare Dashboards sind inzwischen das Mittel der Wahl, wenn es darum geht, das Management im Unternehmen mit Zahlen und Fakten zu versorgen – und auch vom Erfolg der Anwendungsdigitalisierung zu überzeugen. Unter dem Titel "Python Dash" schickt der No-Starch-Verlag nun ein neuartiges Lehrbuch ins Rennen, das Python-Entwicklerinnen und -Entwicklern das "komfortable" Erstellen webbasierter Dashboards näherbringen möchte.

Was für den Rezensenten des neuen Buchs auf den ersten Blick wie die Quadratur des Kreises erscheint, ist in der Praxis eine durchaus vernünftige Entscheidung. Die von Guido van Rossum vor gut 30 Jahren erschaffene Programmiersprache hat sich in den Bereichen Data Science und Datenvisualisierung nämlich einen festen Platz erobert. Daher erscheint es naheliegend, die bereits in einer Python-Umgebung vorliegenden Informationen und Daten auch direkt von dort über ein Web-Interface dem Management aufbereitet zu präsentieren. Diese Vorgehensweise entspricht dem grundlegenden Gedanken hinter dem Python-Plotly-Ökosystem, dem sich das Autorentrio Adam Schroeder, Christian Mayer und Ann Marie Ward in dem knapp 200 Seiten starken Werk "The Book of Dash" eingehender widmet.

Zum Auftakt in das Buch frischen die Autoren ein paar Python-Grundlagen insbesondere zur Syntax von Listen und ähnlichen Datenstrukturen auf – die sollten erfahrenen Python-Entwicklerinnen und -Entwicklern allerdings keine Kopfschmerzen bereiten. Die darauffolgende Einführung in die PyCharm-IDE empfindet der Rezensent hingegen als sehr begrüßenswert, bietet sie doch vielfältigen nützliche Hilfestellung beim Programmieren, die reine Texteditoren vermissen lassen. Ein Crash-Kurs zur Pandas-Bibliothek, die vor allem Data Scientists zu schätzen wissen, komplettiert den ersten Teil des Buches.

Ab Seite 57 kommen die Autoren dann zur eigentlichen Sache des Werks: die praktische Arbeit mit Plotly Dash. Anhand von vier komplett implementierten Beispiel-Dashboards, die verschiedene realitätsnahe Daten-Visualisierungsaufgaben gemeinsam zu lösen suchen, erhalten interessierte Leserinnen und Leser Einblick in die Möglichkeiten von Plotly. Das erste Beispiel überführt die Informationen aus einer CSV-Datei in die Darstellung eines Twitter-Popularitätscharts. Dabei gehen die Autoren bereits darauf ein, wie man Callbacks und andere Methoden der "Interaktivität" nutzt.

Mit Diagramm-Typen wie dem Choropleth-Diagramm, das eine Weltkarte mit zusätzlichen Informationen aufrüstet, nähern sich die Autoren in den weiteren Beispielen fortgeschritteneren Themen. Für die eigentliche Interaktion zwischen Browser und Python kommt dabei unter anderem das Bootstrap-Components-Paket zum Einsatz, das das im Browser erscheinende Dashboard nach den Regeln des Responsive Web-Designs gestaltbar macht.

(Bild: No Starch Press)

Ab einer gewissen Größe respektive Komplexität werden auch solche, auf den ersten Blick einfach erscheinende Dashboards zu schwer wartbaren Monolithen. Das Autorenkollektiv trägt dem Rechnung durch die Vorstellung eines "größeren" Projekts, das sich um Asset Location im Finanzwesen kümmert – so wie sie beispielsweise bei den Analyse-Oberflächen von Online-Brokern typischerweise zu finden ist. Der Fokus liegt dabei allerdings nicht primär auf der finanzmathematischen Darstellung, sondern vor allem auf Methoden zum Organisieren und Strukturieren des Codes, um das Dashboard später nicht zu einem Wartungs-Horror werden zu lassen.

Zu guter Letzt folgt noch ein Kapitel, das sich mit der Visualisierung von den in Machine-Learning-Prozessen angefallenen Daten auseinandersetzt. Neben einer Erklärung der Support Vector Machine (SVM) finden sich auch Vorführungen, wie man die Elemente am "bequemsten" anzeigt. Abschließend folgen noch zwei allgemeinere Abschnitte mit Hinweisen, die neben verschiedenen Tricks zur Arbeit mit Plotly einige Grundlagen zur Installation und Syntax von Python anbieten.

Die vorliegende Buchbesprechung entstand anhand einer nicht finalen Version des E-Books. Der No-Starch-Verlag erlaubt Rezensenten und Lesern den Zugriff auf "halbfertige" Bücher, die im Rahmen des Access-Programms zur Verfügung gestellt werden. Obwohl diese Texte den letzten Lektoratsdurchlauf noch vor sich haben, bietet die Textqualität im Fall von "Python Dash" schon jetzt keinerlei Anlass zur Kritik. Die Visualisierungen sind umfangreich, der englische Text ist auch für Nicht-Muttersprachler problemlos verständlich.

Unterm Strich ist "Python Dash" – auch angesichts der kompakten Länge von weniger als 200 Seiten – eine bequeme Schnell-Einführung, die Python-Programmierern, die sich mit der Aufgabe konfrontiert sehen ein Dashboard zu realisieren, einen schnellen Einstiegsweg ebnet. Der Kauf erscheint daher für all jene empfehlenswert, die sich das relevante Know-how ansonsten mühsam und langwierig aus der Dokumentation aneignen müssten – nach Erfahrung des Rezensenten fallen dabei schnell viele teure Mannstunden an.

Tam Hanna
befasst sich seit dem Jahr 2004 mit Handcomputern und Elektronik. Derzeit liegt sein Fokus auf interdisziplinären Anwendungen von Informationstechnologie.

(map)