Django网站中的散景渲染问题
Posted
技术标签:
【中文标题】Django网站中的散景渲染问题【英文标题】:Issue with Bokeh rendering in Django website 【发布时间】:2017-05-14 03:15:43 【问题描述】:在views.py
from django.shortcuts import render
from django.template.loader import get_template
from django.http import HttpResponse
from bokeh.plotting import figure, output_file, show
from bokeh.embed import components
# Create your views here.
def homepage(request):
template = get_template('index.html')
plot = figure()
plot.line([1,2,3,4,5],[5,4,3,2,1])
script, div = components(plot)
html = template.render(locals())
return HttpResponse(html)
在templates/index.html
我使用散景生成以下代码:
<div class="bk-root">
<div class="plotdiv" id="a3a4c265-dec8-4057-b9ed-d39afda33e2d"></div>
</div>
当我使用div | safe
但结果什么都没有显示
我应该怎么做才能使图形显示?
更新“模板/index.html”
div | safe
<script type="text/javascript" src="http://cdn.bokeh.org/bokeh/release/bokeh-0.9.0.min.js"></script>
script | safe
【问题讨论】:
您是否也在模板化返回的脚本?您必须在模板中同时包含脚本和 div。 这个问题可能会有所帮助:***.com/questions/29508958/… @bigreddot 是的,我也回来了。我在上面更新 你真的在使用 Bokeh 版本0.9.0
!?那已经很老了,如果您正在运行 python 库的最新/当前版本,那么几乎可以肯定这种不匹配是问题所在。 CDN 中的 BokehJS 版本(即 script 标签中的版本)和安装的 python 库版本需要匹配。
thx!!它确实有效!!因为我在网上复制教程所以我忽略了如果版本匹配XDD
【参考方案1】:
CDN 中的 BokehJS 版本(在 script 标签中)必须与 python 库版本对应
【讨论】:
以上是关于Django网站中的散景渲染问题的主要内容,如果未能解决你的问题,请参考以下文章
在布局中绘制多个图表的散景会引发错误:(BOTH_CHILD_AND_ROOT)