我一直在尝试使用散景中的日期,但无法找到方法,然后我在散景中遇到了DateRangeSlider但是不知道如何初始化和使用它的语法。我在bokeh中使用DateRangeSlider需要帮助!需要带代码的示例。
答案 0 :(得分:6)
from datetime import date
from bokeh.models.widgets import DateRangeSlider
from bokeh.layouts import layout
from bokeh.io import curdoc
date_range_slider = DateRangeSlider(title="Date Range: ", start=date(2017, 1, 1), end=date.today(), value=(date(2017, 9, 7), date(2017, 10, 15)), step=1)
l = layout(children=[[date_range_slider]], sizing_mode='fixed')
curdoc().add_root(l)
curdoc().title = "DateRangeSlider Example"
这应创建一个日期范围滑块,从2017年1月1日到今天(2017年10月17日,在这种情况下)
以下是此示例的屏幕截图:
出于某种原因,即使指定的值为01/01/2017,开始日期也会设置为01/01/2016。当我将它设置为1月2日时,年份将更改为2017年。我想这是一个错误。
编辑:在最新版本的散景中按预期工作。
答案 1 :(得分:0)
我找到了问题的解决方案,我能够处理日期。猜猜怎么样?不是DateRangeSlider!我在pandas日期框架中以字符串的形式提供这些日期。例如lookup = pd.read_csv("file.csv", sep=',')
。
我正在接受“从”和“到”日期的输入以进行搜索。 TextInput,然后我使用to_datetime()
函数将所有日期字符串和输入字符串转换为“pandas.tslib.Timestamp”对象,例如lookup.Created_Date=pd.to_datetime(lookup['Created_Date'])
查找是我的pandas数据帧。然后我能够比较并呈现所需的输出:D。
答案 2 :(得分:0)
较新的bokeh版本中有一个名为DateSlider
的滑块,可以满足您的需求。
在@Aarvi的示例中,
date_slider = DateSlider(title="Date Range: ", start=date(2017, 1, 1), end=date.today(), value=date(2017, 9, 7), step=1)