散景中的DateRangeSlider如何工作?

时间:2017-07-17 12:13:19

标签: bokeh daterangepicker

我一直在尝试使用散景中的日期,但无法找到方法,然后我在散景中遇到了DateRangeSlider但是不知道如何初始化和使用它的语法。我在bokeh中使用DateRangeSlider需要帮助!需要带代码的示例。

3 个答案:

答案 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日,在这种情况下)

以下是此示例的屏幕截图:

日期范围滑块,具有所选的默认范围 Date Range Slider with the chosen default range

日期范围滑块全系列 Date Range Slider with full range

出于某种原因,即使指定的值为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)