我正在尝试创建一个可以使用3个小部件修改的绘图。但是,每个新的窗口小部件更改都不会考虑先前的窗口小部件选择(例如,如果使用窗口小部件1进行选择,然后修改窗口小部件2,则窗口小部件2的修改将考虑原始图形,而不是使用窗口小部件1进行的更改)。
我正在尝试避免使用Custom_JS,因为我没有使用Javascript的经验。有没有办法组合这些功能,以便小部件中的任何更改都考虑到以前的小部件交互?
MyServer
答案 0 :(得分:1)
你的问题对我来说不是很清楚。你在谈论以前的小部件状态吗?回调可以访问所有其他小部件的当前状态,因此如果您想要保留其先前状态的历史记录,则必须明确跟踪该状态。
然而,我立即注意到不应该做的事情,所以我要发布一个答案只是为了引起人们的注意。不要创建新的CDS对象只是为了使用他们的.data
属性并扔掉它们:
new1 = ColumnDataSource(df_closed.loc[(df_closed.Quote_Amount < N)])
source.data = new1.data
有很多机器,它们提供了所有自动同步Bokeh的其他功能。特别是CDS是非常重量级的复杂对象,上面这样做是一种可以破坏事物的已知反模式。相反,如果您只需要一个新的合适.data
字典,请使用from_df
:
new_data = ColumnDataSource.from_df(df_closed.loc[(df_closed.Quote_Amount < N)])
source.data = new_data