展示實時統計數據時,可以利用Bokeh庫中的實時數據流功能來更新圖表。以下是一個簡單的示例代碼,展示如何使用Bokeh和Bokeh服務器來展示實時統計數據:
from bokeh.plotting import figure, curdoc
from bokeh.models import ColumnDataSource
import random
# 創建一個圖表
p = figure(plot_height=300, plot_width=800, title="Real-time Data", toolbar_location=None)
p.line(x=[], y=[], line_width=2, line_color="blue")
# 創建一個數據源
source = ColumnDataSource(data=dict(x=[], y=[]))
# 更新數據函數
def update():
new_data = dict(x=[source.data['x'][-1] + 1], y=[random.randint(0, 100)])
source.stream(new_data, rollover=100)
# 添加數據源到圖表
p.line(x='x', y='y', source=source)
# 每秒更新一次數據
curdoc().add_periodic_callback(update, 1000)
# 將圖表添加到當前文檔
curdoc().add_root(p)
要運行這段代碼,您需要在命令行中執行以下命令:
bokeh serve --show your_script.py
這將啟動Bokeh服務器,并在瀏覽器中打開一個頁面來展示實時統計數據的圖表。您可以根據需要調整圖表的樣式和更新頻率來滿足您的需求。