Matplotlib ist eine weit verbreitete und leistungsstarke Python-Bibliothek zur Erstellung von Diagrammen und Visualisierungen. Seaborn ist eine auf Matplotlib basierende Bibliothek, die eine höhere Abstraktionsebene und ansprechende voreingestellte Designs bietet.
Matplotlib-Grundlagen
Um Matplotlib zu verwenden, musst Du zunächst die Bibliothek importieren:
import matplotlib.pyplot as plt
Erstellen eines einfachen Liniendiagramms:
import numpy as np
x = np.linspace(0, 10, 100)
y = np.sin(x)
plt.plot(x, y)
plt.show()
Diagrammtypen in Matplotlib
Matplotlib bietet verschiedene Diagrammtypen, z. B. Balkendiagramme, Streudiagramme und Histogramme.
Balkendiagramm:
x = ['A', 'B', 'C', 'D', 'E']
y = [3, 7, 2, 5, 8]
plt.bar(x, y)
plt.show()
Streudiagramm:
x = np.random.rand(50)
y = np.random.rand(50)
plt.scatter(x, y)
plt.show()
Histogramm:
data = np.random.randn(1000)
plt.hist(data, bins=30)
plt.show()
Seaborn-Grundlagen
Um Seaborn zu verwenden, musst Du die Bibliothek importieren:
import seaborn as sns
Seaborn bietet auch voreingestellte Designs, die die Ästhetik von Matplotlib-Diagrammen verbessern:
sns.set()
Diagrammtypen in Seaborn
Seaborn bietet zusätzliche Diagrammtypen und Funktionen, die auf Matplotlib aufbauen, z. B. Violin-Plots, Box-Plots und Heatmaps.
Violin-Plot:
import pandas as pd
data = pd.DataFrame({
"Category": ["A", "A", "B", "B", "C", "C"],
"Value": [3, 5, 7, 8, 4, 6]
})
sns.violinplot(x="Category", y="Value", data=data)
plt.show()
Box-Plot:
sns.boxplot(x="Category", y="Value", data=data)
plt.show()
Heatmap:
data = np.random.rand(10, 12)
sns.heatmap(data)
plt.show()
Fazit
Matplotlib und Seaborn sind leistungsstarke Werkzeuge zur Datenvisualisierung in Python. Während Matplotlib eine solide Grundlage für die Erstellung verschiedener Diagrammtypen bietet, ergänzt Seaborn die Funktionalität mit zusätzlichen Diagrammtypen und ansprechenden Designs. Durch das Kombinieren beider Bibliotheken kannst Du effektiv und einfach komplexe Datenvisualisierungen erstellen, um Deine Daten besser zu verstehen und zu präsentieren.