我正在学习有关将 Bokeh 连接到网络应用程序的教程,但我无法显示图表,只有一些显示 Bokeh 教程的文字。我发现很难找到一个可靠的散景教程(如果有人对库显示可以随用户输入更改的图形有任何其他建议,我很乐意查看它们)所以我不是非常确定如何解决此问题。
Python 代码
from flask import Flask, render_template
from bokeh.plotting import figure
from bokeh.embed import components
from bokeh.resources import CDN
app = Flask(__name__)
@app.route('/')
def index():
return 'Hello World!'
@app.route('/dashboard/')
def show_dashboard():
plots = []
plots.append(make_plot())
return render_template('dashboard.html', plots=plots)
def make_plot():
plot = figure(plot_height=300, sizing_mode='scale_width')
x = [0,1,2,3,4,5,6,7,8,9]
y = [2**v for v in x]
plot.line(x, y, line_width=4)
script, div = components(plot)
return script, div
if __name__ == '__main__':
app.run(debug=True)
布局 HTML
<!DOCTYPE html>
<html lang="en">
<head>
<link rel="stylesheet" href="http://cdn.pydata.org/bokeh/release/bokeh-0.12.13.min.css" type="text/css" />
<script type="text/javascript" src="http://cdn.pydata.org/bokeh/release/bokeh-0.12.13.min.js"></script>
<meta charset="utf-8">
<title>just going through some things</title>
</head>
<body>
<div>
<h1>Bokeh sample</h1>
{% block body %}{% endblock %}
</div>
</body>
</html>
仪表板 HTML
{% extends "layout.html" %}
{% block body %}
{% for plot in plots %}
{% for part in plot %}
{{part | safe}}
{% endfor %}
{% endfor %}
{% endblock %}