Ошибка атрибута временной шкалы

Я пытаюсь нарисовать график, но получаю ошибку:

AttributeError: 'numpy.datetime64' object has no attribute 'toordinal'

Я попробовал некоторые рекомендуемые решения (converter & pandacnv), но они ничего не изменили.

Вот код:

import pandas            as pd
import datetime          as da
import matplotlib.dates  as dt
import matplotlib.pyplot as plt

from pandas.tseries import converter
converter.register()

import pandas.plotting._converter as pandacnv
pandacnv.register()

# Data
df = pd.DataFrame({'A': [da.datetime(2017,1,5,9,8),   da.datetime(2017,1,5,9,9),  da.datetime(2017,1,7,9,19), da.datetime(2017,1,7,9,19),  da.datetime(2017,1,7,9,19), da.datetime(2017,2,7,9,19), da.datetime(2017,2,7,9,19)],
                   'B': [da.datetime(2017,1,5,9,9),   da.datetime(2017,1,5,9,12), da.datetime(2017,1,7,9,26), da.datetime(2017,1,7,9,20),  da.datetime(2017,1,7,9,21), da.datetime(2017,2,7,9,23), da.datetime(2017,2,7,9,25)],
                   'C' :[1,                           2,                          3,                          4,                           5,                          6,                          7 ]})

# Visualisation
ax = plt.subplot()
ax = plt.hlines(df.C,
    dt.date2num(df.A),
    dt.date2num(df.B))

0 ответов

Если ваша цель - построить горизонтальные линии, используя A а также B столбцы как ось х и C Столбец как ось Y, вы можете напрямую использовать массивы данных. добавленной 1 день до B столбец, так как время меняется очень минимально, чтобы заметить, что на графике:

df['B'] = df['B']+pd.Timedelta("1D")
ax = plt.subplot()
ax.hlines(df.C.values, df.A.values, df.B.values, lw=2)
plt.show()

Выходной участок:

https://s tackru.com/images/5c05953078f400f740d5415162be9aa869101106.png

Я не видел никаких проблем с типом данных. Проблемой может быть дата в столбце B. В качестве альтернативы @Sandeep Kadapa, вы можете просто установить максимальную дату как xmax. Например:

 ax = plt.subplot()
ax.hlines(df.C.values, df.A.values, xmax='2017-01-02')
plt.show()
Другие вопросы по тегам