Я попытался воссоздать dataframe
и аналогичный error
в первом plot
в вопросе.На этом графике кажется, что iplot()
видит time column
как string
.Поэтому значения на y-axis
не соответствуют ожидаемым.(Jupyter Notebook 5.0.0, Python 3.6.6
)
Импорт библиотек
import datetime
from datetime import date
from datetime import timedelta
import pandas as pd
import numpy as np
from plotly import __version__
%matplotlib inline
import plotly.offline as pyo
import plotly.graph_objs as go
from plotly.offline import iplot
import cufflinks as cf
from plotly.offline import download_plotlyjs, init_notebook_mode, plot, iplot
init_notebook_mode(connected=True)
init_notebook_mode(connected=True)
cf.go_offline()
Создание примеров данных
a = [319, 320,329,330,331,333,334,335,336,337,338,339,345,353,362,363,369,406,407,408]
b = ['C1']*len(a)
time = ['85 days 09:29:11', '91 days 00:55:00', '100 days 21:15:00', '47 days 02:00:00',
'0 days 11:25:00', '9 days 13:35:00', '3 days 01:15:00', '0 days 00:10:00',
'0 days 05:00:00', '0 days 05:00:00', '2 days 21:10:00', '0 days 12:15:00',
'9 days 22:50:00', '1 days 12:17:28', '1 days 08:05:00', '0 days 15:50:00',
'1 days 08:05:00', '9 days 20:10:00', '12 days 22:05:00', '7 days 14:15:00'
]
df = pd.DataFrame({'b':b, 'a':a, 'time':time})
df['time'] = df['time'].apply(pd.Timedelta)
df.head(2)
Создатьстолбец, в котором время преобразуется в строку
df['str_time'] = str(df.time)
df.dtypes
Создать график: время в формате строки
(Примечание: оси X и Yпо сравнению с вопросом. Здесь время теперь рассматривается как категория. Хотя формат отличается от вопроса.)
df[['a', 'str_time']].iplot(kind = 'scatter')
Создание графика: время в формате даты и времени
df[['a', 'time']].iplot(kind = 'scatter')