Visualisieren von Daten

Abgeschlossen

Eine der intuitivsten Möglichkeiten, die Ergebnisse von Abfragen zu analysieren, ist die Visualisierung in Diagrammen. Notebooks in Azure Databricks bieten einige Diagrammfunktionen auf der Benutzeroberfläche. Wenn diese Funktionalität nicht ausreicht, können Sie eine der vielen Python-Grafikbibliotheken verwenden, um Datenvisualisierungen im Notebook zu erstellen und anzuzeigen.

Verwenden integrierter Notebookdiagramme

Wenn Sie einen Dataframe anzeigen oder eine SQL-Abfrage in einem Spark-Notebook in Azure Databricks ausführen, werden die Ergebnisse unter der Codezelle angezeigt. Standardmäßig werden die Ergebnisse als Tabelle dargestellt, aber Sie können die Ergebnisse auch als Visualisierung ansehen und die Darstellung der Daten im Diagramm anpassen, wie hier gezeigt:

A screenshot of a notebook displaying a visualization of product counts by category.

Die integrierte Visualisierungsfunktionalität in Notebooks ist nützlich, wenn Sie die Daten schnell visuell zusammenfassen möchten. Wenn Sie mehr Kontrolle über die Formatierung der Daten haben oder Werte anzeigen möchten, die Sie bereits in einer Abfrage aggregiert haben, sollten Sie ein Grafikpaket verwenden, um Ihre eigenen Visualisierungen zu erstellen.

Verwenden von Grafikpaketen im Code

Es gibt viele Grafikpakete, mit denen Sie Datenvisualisierungen im Code erstellen können. Insbesondere unterstützt Python eine große Auswahl an Paketen, von denen die meisten auf der Basisbibliothek Matplotlib basieren. Die Ausgabe einer Grafikbibliothek kann in einem Notebook gerendert werden, sodass es einfach ist, Code zur Erfassung und Bearbeitung von Daten mit Inline-Datenvisualisierungen und Markdownzellen für Kommentare zu kombinieren.

Sie könnten z. B. den folgenden PySpark-Code verwenden, um Daten aus den hypothetischen Produktdaten zu aggregieren, die zuvor in diesem Modul untersucht wurden, und Matplotlib verwenden, um ein Diagramm aus den aggregierten Daten zu erstellen.

from matplotlib import pyplot as plt

# Get the data as a Pandas dataframe
data = spark.sql("SELECT Category, COUNT(ProductID) AS ProductCount \
                  FROM products \
                  GROUP BY Category \
                  ORDER BY Category").toPandas()

# Clear the plot area
plt.clf()

# Create a Figure
fig = plt.figure(figsize=(12,8))

# Create a bar plot of product counts by category
plt.bar(x=data['Category'], height=data['ProductCount'], color='orange')

# Customize the chart
plt.title('Product Counts by Category')
plt.xlabel('Category')
plt.ylabel('Products')
plt.grid(color='#95a5a6', linestyle='--', linewidth=2, axis='y', alpha=0.7)
plt.xticks(rotation=70)

# Show the plot area
plt.show()

Die Matplotlib-Bibliothek erfordert, dass die Daten in einem Pandas- und nicht in einem Spark-Dataframe vorliegen, sodass die toPandas-Methode verwendet wird, um sie zu konvertieren. Der Code erstellt dann eine Abbildung mit einer bestimmten Größe und zeichnet ein Balkendiagramm mit einer benutzerdefinierten Eigenschaftskonfiguration, bevor er den resultierenden Plot anzeigt.

Das durch den Code erzeugte Diagramm würde ähnlich wie die folgende Abbildung aussehen:

A bar chart showing product counts by category.

Sie können die Matplotlib-Bibliothek verwenden, um viele Arten von Diagrammen zu erstellen. Wenn Sie es vorziehen, können Sie auch andere Bibliotheken wie Seaborn verwenden, um sehr individuelle Diagramme zu erstellen.

Hinweis

Die Matplotlib- und Seaborn-Bibliotheken sind möglicherweise bereits auf Databricks-Clustern installiert, abhängig von der Databricks Runtime für den Cluster. Wenn nicht, oder wenn Sie eine andere Bibliothek verwenden möchten, die noch nicht installiert ist, können Sie diese dem Cluster hinzufügen. Ausführliche Informationen finden Sie in der Azure Databricks-Dokumentation unter Clusterbibliotheken.