python – Bokeh中设置的静态路径变量在哪里(对于create_html_snippet)

前端之家收集整理的这篇文章主要介绍了python – Bokeh中设置的静态路径变量在哪里(对于create_html_snippet)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在尝试使用Bokeh的’create_html_snippet’方法在网页中展示pandas / seaborn图.

作为测试,我在这里克隆了@ rpazyaquian的演示回购 – https://github.com/rpazyaquian/bokeh-flask-tutorial/wiki/Rendering-Bokeh-plots-in-Flask.不幸的是,由于回购创建以来散景的变化,它无法工作.

页面上的主要HTML输出完全相同,但显然唯一的散文文件名不同.

唯一的区别在于散景生成的* .embed.js文件.如下面的摘录所示,该文件中的主机/静态路径变量似乎无法正常工作.使用内置的Flask开发服务器和gunicorn进行测试.

这是@ rpazyaquian的Heroku site工作版的顶部部分:

var host = "";

var staticRootUrl = "http://localhost:5006/bokeh/static/";
if (host!=""){

    staticRootUrl = host + "/static/";
    var bokehJSUrl = window.location.protocol + "//" + staticRootUrl + "js/bokeh.js";
}
else {
    bokehJSUrl = staticRootUrl +"js/bokeh.js";
}

这是使用Heroku 0.4的无法工作的本地版本:

var host = "";

var staticRootUrl = "http://localhost:5006/bokeh/static/";
if (host!=""){

    staticRootUrl = "//" + host + "/bokehjs/static/";
    var bokehJSUrl = staticRootUrl + "js/bokeh.js";
}
else {
    bokehJSUrl = staticRootUrl +"js/bokeh.js";
}

明显的问题:

>主机不是http:// localhost:5006,使用开发服务器时的http://127.0.0.1:5000/或者使用gunicorn / Nginx时选择的是什么
>我不知道’bokehjs’文件夹的设置位置 – 但这里看起来并不相关.

关于Bokeh中发生了哪些变化的想法可以解决这个问题?或者使用替代方法通过Flask模板成功提供Bokeh绘图的任何人 – 让我知道是否有更好的路线.我只是想返回图表的HTML片段以输出到模板中.

最佳答案
更新:此函数已被弃用.请现在使用更好的bokeh.embed模块:

https://github.com/ContinuumIO/bokeh/blob/master/bokeh/embed.py

您可以在以下位置查看其使用示例:

https://github.com/ContinuumIO/bokeh/tree/master/examples/embed

猜你在找的Python相关文章