如何在 Bokeh 仪表板中显示和更新打印语句列表?
Posted
技术标签:
【中文标题】如何在 Bokeh 仪表板中显示和更新打印语句列表?【英文标题】:How can I show and update a list of print statements in a Bokeh dashboard? 【发布时间】:2019-01-29 04:00:09 【问题描述】:有没有办法创建散景仪表板的一部分来显示 python 会话的控制台输出?
我正在创建一个带有散景的前端仪表板,该仪表板运行一个可能需要一段时间并执行很多工作的过程。我想要一个部分来显示一些沿途执行的打印语句。理想情况下,我希望有一个小部件类型的对象,可以直接在仪表板中显示输出。
【问题讨论】:
您可以创建一个Div 元素并根据需要更新内容 @ChesuCR 谢谢,我看看那个。 如果可以回答的 [bokeh] 问题得到答案,这对维护者很有帮助。使用Div
确实是一个合适的解决方案。你们当中有人会将该信息添加为真正的答案吗?
@ChesuCR 或 Nate,如果您有时间,如果您可以发布一个包含如何实现此目标的最小示例的答案,将会非常有帮助。
当然@joelostblom,我稍后会发布一些东西
【参考方案1】:
只是一个简单的示例,使用列表 os 消息的内容(使用 html 代码)更新 Div
元素。我认为您可以根据自己的需要进行调整:
from bokeh.layouts import column
from bokeh.io import curdoc
from bokeh.models import Button
from bokeh.models.widgets import Div
div = Div(
text='',
width=200,
height=200
)
msg_list = []
def update_div():
msg_num = len(msg_list)
msg_list.append(': New message'.format(msg_num))
m = ''
for msg in msg_list:
m += '<li></li>'.format(msg)
div.text = '<ul></ul>'.format(m)
bt = Button(
label="Update div",
button_type="success",
width=50
)
bt.on_click(update_div)
curdoc().add_root(
column(children=[bt, div])
)
【讨论】:
以上是关于如何在 Bokeh 仪表板中显示和更新打印语句列表?的主要内容,如果未能解决你的问题,请参考以下文章
将小部件与 pandas_bokeh 结合起来;收到“ValueError”消息
保存 Bokeh 仪表板(独立),其中包含内部制作的所有数据
将来自 bupaR 的动画流程图集成到 Python 中的 Bokeh 仪表板中;有办法吗?
使用 Python 的 Bokeh 和 Folium 模块创建的仪表板/地图是不是安全?数据是不是上传到任何外部服务器?