Помогите сформировать график по датам. Не могу понять как преобразовать start_time к дате.
Пробую вывести следующим кодом:
import pandas as pd from sqlalchemy import create_engine from bokeh.models.sources import ColumnDataSource from bokeh.plotting import figure, show from datetime import datetime dtm = lambda x: datetime.fromtimestamp(int(x)).strftime('%H:%M:%S %d.%m.%y') #sqlite3 = create_engine('sqlite:///test.db', echo=True) sqlite3 = create_engine('sqlite:///test.db', echo=False) query = "select start_time, speed_sps FROM data_1" #data = pd.read_sql_query(query, sqlite3, coerce_float=True, parse_dates=True) data = pd.read_sql_query(query, sqlite3, coerce_float=True) #data["start_time"] = data["start_time"].apply(dtm) data1 = data.set_index('start_time') print(data1) #source_static = ColumnDataSource(data) source_static = ColumnDataSource(data1) source = ColumnDataSource(data1) #print(data['start_time']) # source_static = ColumnDataSource(data=dict(date=data_list, t1=data_speed, t2=data_speed, t1_returns=[], t2_returns=[])) ts1 = figure(plot_width=900, plot_height=200) #ts1.line(x='start_time', y='speed_sps', source=source_static) ts1.line(data['start_time'], data['speed_sps'], color='navy', alpha=0.5) #ts1.circle('start_time', 'speed_sps', source=source, size=1, color=None, selection_color="orange") show(ts1)
data1 вывод:
speed_sps start_time 1499450876 304 1499450876 311 1499450876 308 1499450876 316 1499450876 317 ... ... 1500058896 244 1500058896 313 1500058896 312 1500058896 310 1500058896 311 1500058896 316 1500037934 317 1500033127 319 1500039017 318 1500033127 317 1500033127 313 1500052184 312 1500058896 241 [85 rows x 1 columns]
Получается фигня из вложения. Если преобразовать в дату через dtm, то даты выводится правильно в print(data1) но график открывается пустой. Было бы просто идеально если подскажите как получить график как по ссылке https://bokeh.pydata.org/en/latest/docs/user_guide/tools.html#formatting-tooltip-fields