Definition Was ist HoloViews?

Autor / Redakteur: Dipl.-Ing. (FH) Stefan Luber / Nico Litzel

HoloViews ist eine Open-Source-basierte Bibliothek für die Programmiersprache Python. Sie ist für Datenanalysen und das gleichzeitige Visualisieren der Daten vorgesehen. Interaktive Diagramme unterschiedlichsten Typs lassen sich mit relativ wenig Programmcode erstellen. HoloViews erfordert die Libraries NumPy and Param und arbeitet mit anderen Bibliotheken wie Datashader, Bokeh oder Matplotlib zusammen.

Firma zum Thema

(Bild: © aga7ta - stock.adobe.com)

HoloViews ist der Name einer Bibliothek für Python. Sie kommt im datenwissenschaftlichen Umfeld zur Analyse und Visualisierung von Daten zum Einsatz. Die Library ist für Datenanalysen und das gleichzeitige Visualisieren von multidimensionalen Daten vorgesehen. Sie erstellt interaktive Darstellungen mit unterschiedlichsten Diagrammtypen. Die Visualisierungen lassen sich mit wenig Programmcode erzeugen. Hierfür nutzt die Library eine abstrahierte Sichtweise und verknüpft die Daten mit Metadaten und Annotationen. Es entstehen Objekte mit eingebetteten Daten, die sich mit einfachen Kommandos vielfältig visualisieren lassen. Die Visualisierungsmöglichkeiten von HoloViews reichen bis zu Dashboard-artigen interaktiven Webdarstellungen. Visualisierungen lassen sich in HTML erzeugen und in Internetseiten einbetten.

Zur Nutzung benötigt HoloViews die Libraries NumPy und Param. Für das Plotting der Daten arbeitet HoloViews mit weiteren Bibliotheken wie Bokeh, Plotly oder Matplotlib zusammen. Für die Repräsentation großer Datenmengen und Pipeline-basiertes Rendering ist der Einsatz zusammen mit der Library Datashader möglich. HoloViews ist plattformunabhängig auf Rechnern mit Betriebssystemen wie Linux, Windows oder macOS nutzbar. Auch Jupyter Notebooks werden unterstützt. Die empfohlene Installationsart ist per Anaconda und conda-Befehl. Alternativ lässt sich HoloViews von GitHub laden und mit dem pip-Kommando installieren. Die Library steht unter BSD-Open-Source-Lizenz. Die aktuelle Version ist HoloViews 1.14.0 (Stand Dezember 2020).

Die Funktionsweise und Features der HoloViews Library

HoloViews verknüpft Daten mit Metadaten und Annotationen und erzeugt so eine abstrahierte Sicht auf die Rohdaten. Es entstehen Datenobjekte, die sich mit wenigen Kommandos auf unterschiedliche Art visualisieren lassen. Sowohl Analysen als auch interaktive Visualisierungen großer multidimensionaler Datenmengen werden unterstützt. Der Einsatz von HoloViews erfordert im Vergleich zu anderen Visualisierungstools ein etwas anderes Vorgehen. Zunächst sind die Rohdaten mit semantischen Daten zu versehen und Metadaten zu spezifizieren. Drei verschiedene Typen von Annotationen stehen zur Verfügung. „Type“ legt den Datentyp fest, „Dimensions“ spezifiziert die Dimensionen der Daten und „Group/Label“ ordnet den Daten eine verständliche, beschreibende Kategorie zu. Aus den Dimensionen und den Group/Label lassen sich Achsenbeschriftungen und Diagramm-Labels generieren.

Von HoloViews bereitgestellte Funktionen sind unter anderem:

  • Erstellen von Datenstrukturen, die sowohl die Daten als auch ihre Visualisierungen enthalten
  • Unterstützung unterschiedlicher Diagrammtypen
  • Verwendung interaktiver Darstellungsoptionen
  • umfangreiche Positionierungs- und Gruppierungsmöglichkeiten der einzelnen Elemente
  • direkte Unterstützung von Bokeh, Plotly und Matplotlib für das Plotting der Daten
  • Datenschnittstellen für unterschiedliche multidimensionale Daten und Daten in Tabellenform
  • Kompatibel mit NumPy, Pandas, Dask und weiteren Libraries
  • Support von Jupyter Notebooks
  • Support von IPython Notebooks

Typische Vorgehensweise zur Nutzung von HoloViews

Um HoloViews für eigene Datenanalysen und Visualisierungen zu nutzen, sind nur wenige Schritte notwendig. Im ersten Schritt erfolgt die Installation der HoloViews Library und aller benötigten oder abhängigen Bibliotheken. Anschließend können die Daten geladen werden. Dies ist beispielsweise über Pandas oder Seaborn und andere Datenstrukturen und -schnittstellen möglich. Die Daten werden, falls noch nicht geschehen, in das geeignete Format gebracht und mit den gewünschten Annotationen und Metadaten versehen.

Nachdem die Datenobjekte erstellt sind, startet die eigentliche Visualisierung. Mit sehr wenigen Zeilen Programmcode lassen sich mehrere unterschiedliche Diagramme gleichzeitig in einer einzigen Visualisierung erzeugen. Selbst Dashboard-ähnliche interaktive Darstellungen sind möglich. Unterstützte Diagrammtypen sind beispielsweise Streudiagramme, Balkendiagramme, Verteilungsdiagramme, Schachteldiagramme, Violin Plots und viele mehr. Die fertigen Visualisierungen lassen sich in verschiedene Formate exportieren und abspeichern oder beispielsweise in Form von HTML-Elementen in Webseiten einbetten.

Die Vorteile der Bibliothek HoloViews

Die Bibliothek HoloViews bietet für Datenanalysen und Datenvisualisierungen einige Vorteile. Sie visualisiert Daten mit wenigen Zeilen Programmcode auf unterschiedliche Art. HoloViews sorgt für nahtlose Datenanalysen und Visualisierungen. Die abstrahierte Sichtweise auf die Daten und die Verwendung von Annotationen und Metadaten erlaubt es den Datenwissenschaftler und Datenanalysten, sich auf das eigentliche Ziel der Datenauswertungen zu konzentrieren und sich nicht mit dem Prozess und der Programmierung der grafischen Darstellungen zu beschäftigen. Die Visualisierungsmöglichkeiten reichen von einfachen Diagrammen bis zu interaktiven Dashboards, die sich per HTML in einem Webbrowser darstellen und vom Anwender individuell anpassen lassen. HoloViews ist frei verfügbar, voll in die Python-Welt integriert und mit vielen weiteren Bibliotheken aus dem datenwissenschaftlichen Umfeld kompatibel.

(ID:47037978)

Über den Autor