我写了一个小应用程序来可视化一些数据。该应用程序是Flask中的一个小型Web应用程序,我想在响应页面中提供bokeh组件。就像是:
script, div = components(figure)
return render_template('plot.html', div_plot=div, script_plot=script)
这种方法似乎适用于简单的图表或类似下面示例的图形,在这里我可以使用图形对象中的属性创建图形。就像是
fig = figure(plot_width=900, plot_height=200, tools=tools,x_axis_type='datetime')
fig.line('date', 't1', source=source_static)
script, div = components(fig)
不幸的是,对于Donut对象,事情似乎有所不同,您只能像这样创建Donut对象
pie_chart = Donut(data)
show(pie_chart)
如何从Donut中获取div和脚本?如何将其嵌入到现有的html页面中?
最佳答案
最后我自己找到了解决方案。
显然,没有必要遍历“图”对象。取而代之的是,
from bokeh.charts import Donut
import pandas as pd
data = pd.Series( ... some data ... )
script, div = components(Donut(data))
傻我
希望这会帮助某人。