Во-первых, как сказал @Sameeresque, вам нужно преобразовать ваши данные в datetime, если это еще не сделано:
df.business_dt = pd.to_datetime(df.business_dt)
df.job_finish_time = pd.to_datetime(df.job_finish_time)
Во-вторых, я счел необходимым использовать
pd.plotting.register_matplotlib_converters()
чтобы построить график времени и даты. Наконец, вы можете использовать Pandas обработку даты и времени, чтобы извлечь время и затем построить график в обычном режиме.
Чтобы получить правильное форматирование даты / времени, мне пришлось немного поиграться с DateFormatter
(на основе этого ответа ). Обратите внимание, что ваши данные немного странные (два значения для каждого дня), поэтому они выглядят странно:
from matplotlib.dates import DateFormatter
df.business_dt = pd.to_datetime(df.business_dt)
df.job_finish_time = pd.to_datetime(df.job_finish_time)
pd.plotting.register_matplotlib_converters()
f, ax = plt.subplots(figsize=(10, 10))
ax.xaxis.set_major_formatter(DateFormatter('%d/%m/%Y'))
ax.yaxis.set_minor_formatter(DateFormatter('%H:%M:%S'))
ax.set_xlabel('Business dt')
ax.set_ylabel('Job Finish Time')
ax.plot(df.business_dt, df.job_finish_time.dt.time)
Вывод:
Основные тики на ось у не совсем правильная, но она почти там.