Tracé de ligne Pandas Dataframe : afficher la date sur l'axe X avec précision
Pour afficher avec précision les dates sur l'axe X d'une ligne Pandas Dataframe plot, il est important de comprendre les incompatibilités entre les utilitaires datetime de Pandas et Matplotlib.
Le module dates de Matplotlib gère datetime objets sous forme de nombres à virgule flottante qui représentent le temps en jours depuis le 0001-01-01 UTC, avec un décalage de 1. Cela diffère du format utilisé par Pandas, entraînant des problèmes potentiels.
Pour résoudre ce problème, un peut désactiver les capacités de gestion de la date et de l'heure de Pandas et s'appuyer à la place sur les options de formatage de Matplotlib. Ceci peut être réalisé en définissant x_compat=True lors du traçage du Dataframe :
test.plot(x_compat=True)
Cependant, cette approche signifie également sacrifier les capacités sophistiquées de formatage de date de Pandas. Pour surmonter cette limitation, envisagez d'utiliser directement le formatage de Matplotlib :
ax.xaxis.set_major_locator(dates.DayLocator()) ax.xaxis.set_major_formatter(dates.DateFormatter('%d\n\n%a'))
En utilisant DayLocator et DateFormatter du module de dates de Matplotlib, vous pouvez personnaliser l'affichage de la date sans compromettre la précision.
De plus, vous pouvez inverser l'axe des x et formater automatiquement le dates :
ax.invert_xaxis() plt.gca().autofmt_xdate(rotation=0, ha="center")
Cette approche offre une flexibilité dans le formatage de la date tout en garantissant la compatibilité entre Pandas et Matplotlib.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3