Quand j'ai set_major_formatter () après df.plot (), je souffrais du problème que la notation année et mois de xtick était cassée, mais je l'ai résolu, alors j'ai pris une note.
pandas:0.24.2 matplotlib:3.1.0
import pandas as pd
import numpy as np
N = 100
x = np.random.rand(N)
y = x**2
df = pd.DataFrame(
index=pd.date_range('2020-01-01', periods=N, freq='D'),
data=dict(x=x, y=y)
)
df.head()
#Utiliser la fonction de tracé des pandas
df.plot()
Si l'index DataFrame est DatetimeIndex, il formatera automatiquement la coche. Si ce format est correct, c'est très bien.
import matplotlib.dates as mdates
#Utiliser la fonction de tracé des pandas
ax = df.plot()
#Reformater
ax.xaxis.set_major_formatter(mdates.DateFormatter('%Y/%m/%d'))
L'affichage de% Y est étrange. Qu'est-ce que 0051 ans ... D'après le site ci-dessous, il semble que l'utilitaire datetime de pandas et matplotlib soit incompatible. https://code-examples.net/ja/q/2a2a615
import matplotlib.dates as mdates
# x_Passez l'option compat. Cela supprime l'ajustement automatique des graduations.
ax = df.plot(x_compat=True)
ax.xaxis.set_major_formatter(mdates.DateFormatter('%Y/%m/%d'))
% Y est maintenant correctement en 2020!
X_compat signifie-t-il x_compatibility? Selon la documentation officielle, x_compat est un paramètre qui supprime l'ajustement automatique des graduations. https://pandas.pydata.org/pandas-docs/stable/user_guide/visualization.html#suppressing-tick-resolution-adjustment
S'il y a une manière plus intelligente, j'apprécierais que vous puissiez m'apprendre.
Recommended Posts