Heim  >  Artikel  >  Backend-Entwicklung  >  Wie formatiere ich die Datetime-Achse eines Matplotlib-Diagramms, um nur Jahr und Monat anzuzeigen?

Wie formatiere ich die Datetime-Achse eines Matplotlib-Diagramms, um nur Jahr und Monat anzuzeigen?

Barbara Streisand
Barbara StreisandOriginal
2024-10-27 00:26:31176Durchsuche

How to Format the Datetime Axis of a Matplotlib Graph to Display Year and Month Only?

Ändern des Datetime-Achsenformats in einem Matplotlib-Diagramm

Beim Zeichnen einer Zeitreihe mit einem Datetime-Index ist es oft wünschenswert, das zu formatieren X-Achsenbeschriftungen zur Anzeige einer bestimmten Detailebene, z. B. Jahr-Monats-Kombinationen. Dies kann durch die Verwendung der DateFormatter-Klasse aus dem Modul matplotlib.dates erreicht werden.

Problem:

Ein Benutzer möchte eine nach Datum und Uhrzeit indizierte Reihe, aber das Diagramm zeichnen Zeigt Zeitwerte sekundengenau an, was zu unübersichtlichen Beschriftungen führt. Das gewünschte Format besteht darin, nur Jahr und Monat anzuzeigen (z. B. „2014-01“ oder „März 2016“).

Lösung:

Um die gewünschte Formatierung zu erreichen , befolgen Sie diese Schritte:

  1. Importieren Sie die erforderlichen Module: numpy (np), pandas (pd), matplotlib.pyplot (plt) und matplotlib.dates (mdates).
  2. Erstellen Sie einen Beispiel-DataFrame mit einem Datum/Uhrzeit-Index und zufälligen Werten.
  3. Erstellen Sie eine Figur und Achsen mit plt.subplots().
  4. Plotten Sie die Reihe durch Aufrufen von ax.plot(df.index, df .values).
  5. Geben Sie die Teilstriche der X-Achse mit ax.set_xticks(df.index) an.
  6. Verwenden Sie DateFormatter, um die Haupt- und Nebenstrichformatierer anzugeben. In diesem Beispiel wird mdates.DateFormatter("%Y-%m") verwendet, um Datumsangaben im Format „JJJJ-MM“ anzuzeigen.
  7. Drehen Sie die Teilstrichbeschriftungen der x-Achse (optional) mit _ = plt .xticks(rotation=90) .

Das resultierende Diagramm zeigt die Seriendaten mit der gewünschten Datum-Uhrzeit-Achsenformatierung an und zeigt nur die Jahres- und Monatswerte an.

Das obige ist der detaillierte Inhalt vonWie formatiere ich die Datetime-Achse eines Matplotlib-Diagramms, um nur Jahr und Monat anzuzeigen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn