Bokeh怎么动态调整数据集

avatar
作者
筋斗云
阅读量:0

在 Bokeh 中,可以通过以下方法动态调整数据集:

  1. 使用 ColumnDataSource:将数据存储在 ColumnDataSource 对象中,然后在需要更新数据时,直接修改 ColumnDataSource 对象中的数据即可。例如:
from bokeh.plotting import figure from bokeh.models import ColumnDataSource from bokeh.io import curdoc  # 创建 ColumnDataSource 对象 source = ColumnDataSource(data={'x': [1, 2, 3], 'y': [4, 5, 6]})  # 创建图形 p = figure() p.circle('x', 'y', source=source)  # 更新数据 def update_data():     new_data = {'x': [4, 5, 6], 'y': [7, 8, 9]}     source.data = new_data  curdoc().add_periodic_callback(update_data, 1000) 
  1. 使用 CustomJS 回调函数:可以在 Bokeh 图形中添加 CustomJS 回调函数来动态更新数据。例如:
from bokeh.plotting import figure from bokeh.models import ColumnDataSource, CustomJS from bokeh.io import curdoc  # 创建 ColumnDataSource 对象 source = ColumnDataSource(data={'x': [1, 2, 3], 'y': [4, 5, 6]})  # 创建图形 p = figure() p.circle('x', 'y', source=source)  # 定义 CustomJS 回调函数 callback = CustomJS(args={'source': source}, code="""     var data = source.data;     // 更新数据     data['x'] = [4, 5, 6];     data['y'] = [7, 8, 9];     source.change.emit(); """)  # 添加回调函数 source.js_on_change('data', callback) 

这些方法可以帮助您在 Bokeh 中动态调整数据集。您可以根据需要选择适合您的情况的方法。

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!