Heim >Backend-Entwicklung >Python-Tutorial >Wie werden Daten auf der X-Achse eines Pandas-Dataframe-Liniendiagramms genau angezeigt?

Wie werden Daten auf der X-Achse eines Pandas-Dataframe-Liniendiagramms genau angezeigt?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-29 18:01:03666Durchsuche

How to Display Dates Accurately on the X-axis of a Pandas Dataframe Line Plot?

Pandas Dataframe-Liniendiagramm: Datum auf der X-Achse genau anzeigen

Zum genauen Anzeigen von Daten auf der X-Achse einer Pandas Dataframe-Linie plot ist es wichtig, die Inkompatibilitäten zwischen den Datetime-Dienstprogrammen von Pandas und Matplotlib zu verstehen.

Das Datetime-Modul von Matplotlib verarbeitet Datetime-Objekte als Gleitkommazahlen, die die Zeit in Tagen seit dem 01.01.0001 UTC mit einem Offset von darstellen 1. Dies unterscheidet sich von dem von Pandas verwendeten Format, was zu potenziellen Problemen führen kann.

Um dieses Problem zu lösen, kann man die Datum/Uhrzeit-Verarbeitungsfunktionen von Pandas deaktivieren und sich stattdessen auf die Formatierungsoptionen von Matplotlib verlassen. Dies kann erreicht werden, indem beim Plotten des Datenrahmens x_compat=True festgelegt wird:

test.plot(x_compat=True)

Dieser Ansatz bedeutet jedoch auch, dass die ausgefeilten Datumsformatierungsfunktionen von Pandas geopfert werden müssen. Um diese Einschränkung zu überwinden, sollten Sie die Formatierung von Matplotlib direkt verwenden:

ax.xaxis.set_major_locator(dates.DayLocator())
ax.xaxis.set_major_formatter(dates.DateFormatter('%d\n\n%a'))

Durch die Verwendung von DayLocator und DateFormatter aus dem Datumsmodul von Matplotlib können Sie die Datumsanzeige anpassen, ohne die Genauigkeit zu beeinträchtigen.

Darüber hinaus können Sie kann die x-Achse umkehren und die Daten automatisch formatieren:

ax.invert_xaxis()
plt.gca().autofmt_xdate(rotation=0, ha="center")

Dieser Ansatz bietet Flexibilität bei der Datumsformatierung und gewährleistet gleichzeitig die Kompatibilität zwischen Pandas und Matplotlib.

Das obige ist der detaillierte Inhalt vonWie werden Daten auf der X-Achse eines Pandas-Dataframe-Liniendiagramms genau angezeigt?. 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