2

我对 Web 开发完全陌生,这是我第一个使用 Python 和 Flask 的 Web 应用程序。出于绘图目的,我使用 python-nvd3。我按照这里的说明操作:http: //python-nvd3.readthedocs.org/en/latest/introduction.html#documentation

我正在使用他们为饼图提供的示例代码(在上面的链接中)。我安装了 python-nvd3(我可以导入)。当我运行我的 python 应用程序时,它会重新加载 Flask 服务器(localhost),我可以在 Firefox 中查看 HTML 页面,但是该图不存在。当我转到 Tools->Web Developer->Web Console 时,我可以看到页面源代码。它显示以下错误:

[14:08:38.311] ReferenceError: nv is not defined @ http://localhost:5000/view_plot:20

默认情况下,python-nvd3 在自动生成的 HTML 页面中添加以下脚本:

<link media="all" href="./bower_components/nvd3/src/nv.d3.css" type="text/css" rel="stylesheet" />

<script src="./bower_components/d3/d3.min.js" type="text/javascript"></script>

<script src="./bower_components/nvd3/nv.d3.min.js" type="text/javascript"></script>

但是,当我尝试访问这些链接时出现 404 错误(为什么它们是相对路径?)。我认为这是错误的原因。有没有人遇到过这个问题?

4

1 回答 1

0

有一个名为 assets_directory 的设置目录保存资产 (./bower_components/) https://github.com/areski/python-nvd3/blob/master/nvd3/NVD3Chart.py#L78

您可以使用它来指向不同的资产目录,即您将与 Flask 一起使用的目录。

或者,您也可以将其更改为使用 CDN

于 2014-02-18T13:40:24.317 回答