Wie man ein Zeitreihendiagramm mit Matplotlib in Python erstellt
Updated on
In diesem Tutorial lernen Sie, wie Sie mit Matplotlib in Python ein Zeitreihendiagramm erstellen. Egal, ob Sie Aktienkurse, Web-Aktivitäten oder andere zeitabhängige Daten visualisieren, Matplotlib ist ein leistungsstolles Tool für Datenvisualisierung und -analyse. Wir zeigen Ihnen, wie Sie Tick-Marker und Beschriftungen anpassen, mit Daten auf der horizontalen Achse arbeiten und Hilfsmarkierungen hinzufügen können, um eine detailliertere Ansicht Ihrer Daten zu erhalten.
Möchten Sie schnell Data Visualizations in Python erstellen?
PyGWalker ist ein Open-Source Python-Projekt, das dabei helfen kann, den Datenanalyse- und Visualisierungsworkflow direkt in einer Jupyter Notebook-basierten Umgebung zu beschleunigen.
PyGWalker (opens in a new tab) verwandelt Ihr Pandas Dataframe (oder Polars Dataframe) in eine visuelle Benutzeroberfläche, in der Sie Variablen per Drag & Drop ziehen und ablegen können, um Diagramme ganz einfach zu erstellen. Verwenden Sie einfach folgenden Code:
pip install pygwalker
import pygwalker as pyg
gwalker = pyg.walk(df)
Sie können PyGWalker jetzt in diesen Online-Notebooks ausführen:
Und vergessen Sie nicht, uns auf GitHub eine ⭐️ zu geben!
Was ist Matplotlib und wofür wird es verwendet?
Matplotlib ist eine Datenvisualisierungsbibliothek für Python. Es bietet eine Vielzahl von Werkzeugen zum Erstellen von statischen, animierten und interaktiven Visualisierungen in Python. Matplotlib wird in der Wissenschaft, Industrie und Regierung häufig zum Erstellen von Diagrammen und Grafiken verwendet.
Wie kann ich die Tick-Marker und Beschriftungen auf einem Zeitreihendiagramm mit Matplotlib anpassen?
Sie können die Tick-Marker und Beschriftungen auf einem Zeitreihendiagramm mit Matplotlib anpassen, indem Sie die Methoden set_xticks()
und set_xticklabels()
verwenden. Diese Methoden ermöglichen es Ihnen, die Position und das Format der Tick-Marker und Beschriftungen auf der horizontalen Achse festzulegen.
import matplotlib.pyplot as plt
import pandas as pd
# Daten laden
data = pd.read_csv("data.csv")
# Datums-Spalte in datetime konvertieren
data["date"] = pd.to_datetime(data["date"])
# Plot erstellen
fig, ax = plt.subplots()
# Tick-Positionen und Beschriftungen festlegen
ax.set_xticks(data["date"])
ax.set_xticklabels(data["date"].dt.strftime("%Y-%m"))
# Daten plotten
ax.plot(data["date"], data["value"])
# Plot anzeigen
plt.show()
In diesem Beispiel laden wir zunächst die Daten mithilfe der Pandas-Bibliothek und konvertieren die Datums-Spalte in ein datetime-Format. Anschließend erstellen wir das Plot-Objekt mit Matplotlib und legen die Tick-Positionen und Beschriftungen mit den Methoden set_xticks()
und set_xticklabels()
fest. Schließlich plotten wir die Daten und zeigen den Plot mit der Methode show()
an.
Wie kann ich mit Daten auf der horizontalen Achse in Matplotlib arbeiten?
Sie können mit Daten auf der horizontalen Achse in Matplotlib arbeiten, indem Sie die Funktion date2num()
aus dem Modul matplotlib.dates
verwenden. Diese Funktion wandelt ein Datumsobjekt in eine Gleitkommazahl um, die verwendet werden kann, um Daten auf der horizontalen Achse zu plotten.
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import pandas as pd
# Daten laden
data = pd.read_csv("data.csv")
# Datums-Spalte in datetime und date2num-Format konvertieren
data["date"] = pd.to_datetime(data["date"]).apply(mdates.date2num)
# Plot erstellen
fig, ax = plt.subplots()
# Daten plotten
ax.plot_date(data["date"], data["value"], linestyle="solid")
# Plot anzeigen
plt.show()
In diesem Beispiel laden wir zunächst die Daten mithilfe der Pandas-Bibliothek und konvertieren die Datums-Spalte in ein datetime-Format. Anschließend verwenden wir die Funktion date2num()
, um die Datums-Spalte in ein Format umzuwandeln, das von Matplotlib geplottet werden kann. Schließlich plotten wir die Daten mit der Methode plot_date()
und zeigen den Plot mit der Methode show()
an.
Was ist ein MonthLocator und wie wird er in Matplotlib verwendet?
Ein MonthLocator
ist eine Klasse in Matplotlib, die verwendet wird, um die Positionen der Tick-Markierungen auf der horizontalen Achse für ein Zeitreihendiagramm festzulegen. Die Klasse MonthLocator
kann verwendet werden, um Tick-Positionen in regelmäßigen Abständen von Monaten zu generieren.
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import pandas as pd
# Daten laden
data = pd.read_csv("data.csv")
# Datums-Spalte in datetime und date2num-Format konvertieren
data["date"] = pd.to_datetime(data["date"]).apply(mdates.date2num)
# Plot erstellen
fig, ax = plt.subplots()
# Tick-Locator festlegen
ax.xaxis.set_major_locator(mdates.MonthLocator())
# Tick-Formatter festlegen
ax.xaxis.set_major_formatter(mdates.DateFormatter("%Y-%m"))
# Daten plotten
ax.plot_date(data["date"], data["value"], linestyle="solid")
# Plot anzeigen
plt.show()
In diesem Beispiel laden wir zunächst die Daten mit der Pandas-Bibliothek, konvertieren die Datumsspalte in ein Datumsformat und konvertieren es in das Format, das von Matplotlib geplottet werden kann. Dann erstellen wir das Plot-Objekt und setzen den Tick-Locator mit der Methode set_major_locator()
auf regelmäßige Intervalle von Monaten. Schließlich plotten wir die Daten und zeigen den Plot mit der Methode show()
an.
Wie füge ich Hilfs-Major-Tick-Marken zu einem Zeitreihenplot mit Matplotlib hinzu?
Sie können Hilfs-Major-Tick-Marken zu einem Zeitreihenplot mit Matplotlib hinzufügen, indem Sie die Methode set_minor_locator()
des xaxis
-Objekts verwenden. Diese Methode ermöglicht es Ihnen, die Position der Hilfs-Major-Tick-Marken auf der horizontalen Achse festzulegen.
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import pandas as pd
# Daten laden
data = pd.read_csv("data.csv")
# Datumsspalte in datetime und date2num Format konvertieren
data["date"] = pd.to_datetime(data["date"]).apply(mdates.date2num)
# Plot erstellen
fig, ax = plt.subplots()
# Tick-Locator setzen
ax.xaxis.set_major_locator(mdates.MonthLocator())
# Tick-Formatter setzen
ax.xaxis.set_major_formatter(mdates.DateFormatter("%Y-%m"))
# Hilfs-Major-Tick-Locator setzen
ax.xaxis.set_minor_locator(mdates.MonthLocator(bymonthday=15))
# Daten plotten
ax.plot_date(data["date"], data["value"], linestyle="solid")
# Plot anzeigen
plt.show()
In diesem Beispiel laden wir zunächst die Daten mithilfe der Pandas-Bibliothek und konvertieren die Datumsspalte in ein Datumsformat. Dann erstellen wir das Plot-Objekt und setzen den Tick-Locator und Tick-Formatter wie zuvor. Schließlich setzen wir den Hilfs-Major-Tick-Locator mit der Methode set_minor_locator()
auf monatliche Intervalle am 15. Tag jedes Monats. Wir plotten die Daten und zeigen den Plot mit der Methode show()
an.
Fazit
Matplotlib ist ein leistungsstarkes Werkzeug zur Erstellung von Zeitreihenplots in Python. Mit seinen vielfältigen Anpassungsoptionen können Sie schöne und informative Visualisierungen Ihrer zeitabhängigen Daten erstellen. Egal, ob Sie gerade erst mit der Datenvisualisierung beginnen oder ein erfahrener Datenanalyst sind, Matplotlib ist eine wertvolle Ergänzung Ihrer Werkzeugkiste.
Weitere Python-Tutorials: