Как я могу сделать так, чтобы ось X моей 2D-гистограммы использовала даты, избегая при этом ошибок переполнения при формPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как я могу сделать так, чтобы ось X моей 2D-гистограммы использовала даты, избегая при этом ошибок переполнения при форм

Сообщение Anonymous »

Я работаю с набором усредненных за месяц данных временных рядов, охватывающих более 20 лет, и поместил эти данные в фрейм данных pandas. Индекс кадра данных состоит из объектов datetime, которые охватывают временной диапазон набора данных. Я успешно создал подграфик двумерной гистограммы как по времени, так и по другому параметру — скорости протонов. Ось X гистограммы была создана действием, которое выглядит как действие по умолчанию, но я не знаю, как это интерпретировать. Я пытался отформатировать ось X с помощью команд matplotlib, в первую очередь функций локатора/форматирования даты, но они продолжают выдавать огромную ошибку переполнения, которая заканчивается: «OverflowError: int слишком большой для преобразования».
Мне не удалось найти хорошее решение с помощью других вопросов или документации.
Это импорт, который я использовал до сих пор:

Код: Выделить всё

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from datetime import datetime, date, time
import matplotlib.dates as mdates
Ниже приведен кадр данных pandas, который я использовал. Прошу прощения, если форматирование странное. Я не знал, как поделиться таблицей, поэтому скопировал фрейм данных прямо из своего блокнота. Здесь столбцы должны быть разделены табуляцией.

Код: Выделить всё

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
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как мне сделать так, чтобы локальная разработка в рельсах не использовала кешированные ресурсы?
    Anonymous » » в форуме CSS
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Предоставляет ли Webpack информацию о машине, которая его использовала?
    Гость » » в форуме Javascript
    0 Ответы
    28 Просмотры
    Последнее сообщение Гость
  • Матплотлибская шкала гистограммы y-ось постоянным фактором
    Anonymous » » в форуме Python
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Javafx 3D Могу ли я поменять местами ось X и ось Y в групповом объекте?
    Anonymous » » в форуме JAVA
    0 Ответы
    108 Просмотры
    Последнее сообщение Anonymous
  • Диаграмма слоя Альтаира, ось X и ось Y + галочки должны быть вместе
    Anonymous » » в форуме Python
    0 Ответы
    29 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»