为什么我在散景应用程序服务器中看不到情节?

Why am I not seeing plot in bokeh application server?

我正在学习背景虚化并且正在申请。我 运行 使用文档 bokeh serve --show app 中给出的模式的目录,代码 运行s 成功并且我看到了模板的呈现和 CSS 正如我所料,但我确实看不到我想要生成的情节。

https://github.com/bokeh/bokeh/blob/master/examples/app/weather/main.py

我关注了这个并查看了建议使用 curdoc() 的 Whosebug,但我仍然没有看到情节。我正在使用 Python 3.6 和 Bokeh 0.13.0 Firefox 61.0 和 OS Ubuntu

这是我 main.py

的完整代码
from bokeh.plotting import figure
from bokeh.io import curdoc
from bokeh.layouts import row

p = figure(title='One sample graph',
            plot_width=700,
            plot_height=700,
            toolbar_location=None)

p.circle([1,2,3,4,5],[6,7,2,5,4], size=15)

curdoc().add_root(row(p))

我还查看了终端,看看那里是否有任何错误。它也没有任何错误,当我查看 HTML 服务器的源代码时,我没有看到生成绘图的代码。我错过了什么吗?请帮忙。

编辑 1:

我也看了下面的教程。这有没有任何模板和 CSS 的应用程序,并没有解决我的问题。

https://towardsdatascience.com/data-visualization-with-bokeh-in-python-part-iii-a-complete-dashboard-dc6a86aa6e23

编辑 2:这是终端的输出 window。

这是我简单地 运行 bokeh serve --show main.py 时的输出,在这种情况下,我只看到情节并丢失了我的模板和 CSS 信息。我也下载了Chrome,看看是不是浏览器有问题,没有。

我的代码中是否遗漏了什么?在 gitter 上,我被告知也可以使用 server_document(),我应该将该语句放在文档中的什么位置,以便正确呈现所有内容?

当显示 运行 bokeh serve --show appdirtemplates/index.html 时,但原始模板不包含对 embed 的任何调用以指定绘图的位置,因此没有显示任何绘图向上。有必要在模板中调用 embed,以便 Bokeh 知道将绘图放在哪里。在 index.html 中使用 embed 的更新模板如下所示:

main.py:

from bokeh.plotting import figure
from bokeh.io import curdoc
from bokeh.layouts import row 

p = figure(title='One sample graph',
            plot_width=700,
            plot_height=700,
            toolbar_location=None)

p.circle([1,2,3,4,5],[6,7,2,5,4], size=15)

curdoc().add_root(row(p, name='plotrow'))

templates/index.html:

{% extends base %}
{% block preamble %}
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<link href="https://fonts.googleapis.com/css?family=Noto+Sans" rel="stylesheet">
<link rel="stylesheet" href="app/static/special.css">
{% endblock %}
{% block contents %}
<title>Dashboard</title>
<div class="background">
<div class="header">
<h1>Text</h1>
<h2>Some more text</h2>
<p>Even more text</p>
</div>
<div class="bar"></div>
<div class="container">{{ embed(roots.plotrow) }}</div>
<div class="footer">
<p>Some extra text <br/>By someone</p>
</div>
</div>
{% endblock %}