«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как точно отображать даты на оси X линейного графика Pandas Dataframe?

Как точно отображать даты на оси X линейного графика Pandas Dataframe?

Опубликовано 21 ноября 2024 г.
Просматривать:539

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

Линейный график Pandas Dataframe: точное отображение даты на оси X

Чтобы точно отображать даты на оси X линии Pandas Dataframe сюжет, важно понимать несовместимость между утилитами datetime Pandas и Matplotlib.

Модуль дат Matplotlib обрабатывает объекты datetime как числа с плавающей запятой, которые представляют время в днях, начиная с 0001-01-01 UTC, со смещением 1. Это отличается от формата, используемого Pandas, что приводит к потенциальным проблемам. .

Чтобы решить эту проблему, можно отключить возможности обработки даты и времени Pandas и вместо этого полагаться на параметры форматирования Matplotlib. Этого можно добиться, установив x_compat=True при построении графика данных:

test.plot(x_compat=True)

Однако этот подход также означает принесение в жертву сложных возможностей форматирования даты Pandas. Чтобы преодолеть это ограничение, рассмотрите возможность использования форматирования Matplotlib напрямую:

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

Используя DayLocator и DateFormatter из модуля дат Matplotlib, вы можете настроить отображение даты без ущерба для точности.

Кроме того, вы можете инвертировать ось X и автоматически форматировать даты:

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

Этот подход обеспечивает гибкость форматирования даты, обеспечивая при этом совместимость между Pandas и Matplotlib.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3