Мне не удалось найти хорошее решение с помощью других вопросов или документации.
Это импорт, который я использовал до сих пор:
Код: Выделить всё
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from datetime import datetime, date, time
import matplotlib.dates as mdates
Код: Выделить всё
Datetime proton_density proton_temp He4toprotons proton_speed x_dot_RTN Proton Mass Flux
----------------------------------------------------------------------------------------
1998-01-23 11.625 58930.0 0.0224 380.90 379.91 7.406307e-19
1998-02-19 9.569 64302.0 0.0294 380.99 380.23 6.097867e-19
1998-03-18 8.767 66770.0 0.0348 384.00 383.19 5.630929e-19
1998-04-14 7.410 121090.0 0.0352 448.44 446.58 5.558023e-19
1998-05-11 7.881 102230.0 0.0271 421.21 419.87 5.552362e-19
... ... ... ... ... ... ...
2021-09-19 8.244 55183.0 0.0356 384.52 383.22 5.302183e-19
2021-10-16 9.664 70601.0 0.0115 418.50 416.21 6.764725e-19
2021-11-12 6.137 93617.0 0.0256 450.47 449.30 4.624021e-19
2021-12-09 4.889 96768.0 0.0177 426.52 424.99 3.487845e-19
2022-01-05 7.280 85944.0 0.0310 434.17 433.01 5.286752e-19
Код: Выделить всё
ax_example = plt.subplot2grid((3, 6), (2, 1), colspan = 2)
H,xedges,yedges = np.histogram2d(SWEPAM_dataframe.index, SWEPAM_dataframe.proton_speed, bins=[50,50])
ax_example.pcolor(xedges, yedges, H.T)
ax_example.set_xlabel("Year")
ax_example.set_ylabel("Proton Speed (km/s)")

Как видите, ось X по умолчанию не находится в формате datetime. На самом деле я не уверен, как интерпретировать значения оси X по умолчанию, но здесь это не так важно. Я обнаружил, что мне следует использовать некоторую комбинацию ax2.xaxis.set_major_locator(loc) и ax2.xaxis.set_major_formatter(fmt). Однако каждый раз, когда я пытаюсь использовать эти команды, я получаю вышеупомянутую ошибку переполнения, и мне не удается повернуть ось X моей гистограммы в нужные даты.
Подробнее здесь: https://stackoverflow.com/questions/785 ... overflow-e