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.
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