У меня есть данные временных рядов, которые я хочу отображать изо дня в день, используя holoviews
на сервере bokeh
. Мой код сводится к:
import pandas as pd
import numpy as np
import holoviews as hv
hv.extension("bokeh", "matplotlib")
renderer = hv.renderer('bokeh')
df = pd.DataFrame(pd.date_range("2019-11-01", "2019-11-07", freq="H"), columns=["timestamp"])
df["level"] = 17
df = df.set_index("timestamp")
ds = hv.Dataset(df, kdims="timestamp", vdims="level")
days = list(sorted({t.date() for t in df.index}))
pattern_dim = hv.Dimension('Day', values=days)
dmap = hv.DynamicMap(lambda d: ds[d:d + np.timedelta64(1, 'D')].to(hv.Curve), kdims=[pattern_dim])
doc = renderer.server_doc(dmap)
Однако, когда я меняю день с помощью ползунка в bokeh serve ...
, мне приходится вручную настраивать панорамирование для просмотра новых данных. Можно ли это сделать с помощью обратного вызова?
Нечто подобное было запрошено для bokeh
без holoviews
: Вручную изменить диапазон х для графика Боке