Suchen

Definition Was ist Seaborn?

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

Seaborn ist eine frei verfügbare Bibliothek für die Programmiersprache Python. Mit der Library lassen sich Daten visualisieren. Die Bibliothek baut auf der Library Matplotlib auf und benötigt weitere Libraries wie NumPy, SciPy und Pandas. Seaborn lässt sich einsetzen, um Daten in anschauliche Grafiken und Diagramme zu verwandeln. Es werden verschiedene Diagrammtypen, Maps und Plots unterstützt.

Firma zum Thema

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

Seaborn ist der Name einer Library für Python. Sie baut auf der Library Matplotlib auf und ermöglicht es, mit einfacher Syntax anschauliche Datenvisualisierungen zu erzeugen. Im Vergleich zu nur mit Matplotlib erzeugten Visualisierungen wirken die Grafiken moderner und sind mit weniger Kommandos zu erstellen.

Seaborn bietet ein High-Level Interface, das Datenstrukturen von Pandas unterstützt. Die Library hat einen deklarativen, datenorientierten Charakter. Anstatt sich um die Details der grafischen Aufbereitung der Daten zu kümmern, können sich Programmierer auf die konkreten Ziele der Visualisierung konzentrieren. Zahlreiche unterschiedliche Diagrammtypen, Maps und Plots werden unterstützt. Es lassen sich univariate und bivariate Verteilungsdiagramme, Torten-, Linien- und Balkendiagramme, Scatter Plots, Heat Maps, Regressionsdiagramme und Vieles mehr erstellen.

Um Seaborn einzusetzen, sind neben Python einige weitere Libraries wie NumPy, SciPy und Pandas notwendig. Die Installation von Seaborn ist beispielsweise über den Python-Paketmanager PIP möglich. Seaborn ist frei verfügbar und steht unter BSD-Lizenz. Die Entwicklung findet über die GitHub-Plattform statt. Aktuelle Version der Library ist die Version v0.11.0 (Stand September 2020).

Die Ziele der Entwicklung der Seaborn Library

Prinzipiell lassen sich alleine mit der Library Matplotlib anschauliche Datenvisualisierungen erzeugen. Allerdings ist die Matplotlib-API eher ein Low-Level Interface. Es ist relativ viel Programmcode notwendig, um die Daten in die gewünschte grafische Form umzusetzen. Die Pandas-Datenstrukturen werden nicht unterstützt. Ein Hauptziel der Entwicklung von Seaborn war es, ein High-Level Interface bereitzustellen, das mit Pandas-Datenstrukturen umgehen kann und ansprechende Datenvisualisierungen schon mit wenigen Zeilen Programmcode ermöglicht. Programmierer sollen sich nicht mehr um die Details der grafischen Darstellung kümmern müssen, sondern sich auf die konkreten Ziele der Visualisierung konzentrieren können.

Abhängigkeiten der Seaborn Library von anderen Libraries

Die Library Seaborn ist nicht standalone einsetzbar. Es bestehen Abhängigkeiten zu weiteren Python Libraries. Folgende Libraries müssen installiert sein:

  • Pandas
  • NumPy
  • SciPy
  • Matplotlib

Pandas stellt die Datenstrukturen für Python und Seaborn zur Verfügung. Die Bibliothek NumPy ermöglicht es, mit mehrdimensionalen Arrays und weiteren Funktionen der linearen Algebra zu arbeiten. SciPy ist die Library für wissenschaftliches Rechnen. Sie bietet komplexe mathematische Funktionen und Operationen. Matplotlib schließlich ist die Grundlage für Seaborn. Seaborn setzt auf der Library Matplotlib auf und erweitert deren Möglichkeiten und Funktionen.

Merkmale und Funktionen der Bibliothek Seaborn

Merkmale und Funktionen der Library Seaborn sind:

  • Bereitstellung zahlreicher ästhetisch ansprechender grafischer Vorlagen (Themes)
  • Visualisierung univariater und bivariater Daten
  • Nutzung der NumPy- und SciPy-Funktionalität und weiterer Python Libraries
  • Verwendung der Pandas-Datenstrukturen
  • einfache und flexible Visualisierung von Verteilungen
  • geeignet für statistische Plots und die Visualisierung von Regressionsmodellen und Zeitreihen
  • Bereitstellung eines High-Level Interfaces – ansprechende Visualisierungen mit wenig Programmcode
  • Bereitstellung einer Auswahl geeigneter Farbpaletten
  • Erstellen von Verteilungsdiagrammen, Torten-, Linien- und Balkendiagrammen, Scatter Plots, Heat Maps und Vieles mehr
  • Möglichkeit der Anwendung von Matplotlib-Befehlen auf Seaborn-Plots (um zum Beispiel Achsentitel zu einem Diagramm hinzuzufügen)

Abgrenzung und Unterscheidungsmerkmale zu Matplotlib

Schon alleine mit der Library Matplotlib lassen sich ansprechende Visualisierungen erzeugen. Seaborn arbeitet auf Basis von Matplotlib und ist nicht als Konkurrenz-Library zu sehen, die Matplotlib ersetzt. Sie ergänzt viel mehr die Möglichkeiten von Matplotlib. Ziel ist es, mit wenig Zeilen Programmcode ansprechende Visualisierungen zu erstellen, ohne sich um die grafischen Details kümmern zu müssen. Während das Low-Level Interface von Matplotlib alle Möglichkeiten zur Datenvisualisierung offen hält, konzentriert sich Seaborn mit seinem High-Level Interface auf eine möglichst einfache Umsetzung der Visualisierung. Die Befehle haben eine gute Lesbarkeit und sind verständlich.

Seaborn erleichtert Anfängern den Einstieg in das Erstellen von professionell aussehenden Visualisierungen. Programmierer müssen nicht wie mit Matplotlib viel Zeit darauf verwenden, die grafischen Darstellungen in der gewünschten Art zu gestalten. Seaborn stellt zahlreiche vorgefertigte Themes bereit, die für Entwickler direkt für ihre Visualisierungen einsetzbar sind. Ein weiterer gravierender Unterschied zwischen Matplotlib und Seaborn ist, dass Seaborn direkt mit Pandas-Datenframes und -Datenstrukturen umgehen kann. In Matplotlib sind die Möglichkeiten in dieser Hinsicht sehr begrenzt.

(ID:46971771)

Über den Autor