使用Django

时间:2015-09-20 21:55:06

标签: javascript python django csv d3.js

我正在使用Django来创建我的网站,并且还希望将D3.js合并到一些我存储在CSV文件中的数据。通常我可以使用以下方式访问CSV文件:

{% static "data/values.csv" %}

所以如果我想在我的网站上链接它,我会做以下事情:

<a href="{% static "data/values.csv" %}">CSV File</a>

然而,在我开始绘制任何图形之前,我想使用JavaScript的console.log函数输出存储在CSV文件中的值,如下所示:

<script>
d3.csv("{% static "data/values.csv" %}", function (myArrayofObjects){
    myArrayofObjects.forEach(function (d){
        console.log(d.x + ", " + d.y);
    });
});
</script>

但是,在我的浏览器(Chrome)控制台中,我看到的只有

10 undefined, undefined

任何人都知道如何解决这个问题?谢谢。

修改

感谢您的帮助,但我一直在思考它。事实证明我应该打字:

console.log(d.Date + ", " + d.Value);

而不是

console.log(d.x + ", " + d.y);

因为那些是我的CSV文件中的标题(或第一行)。

1 个答案:

答案 0 :(得分:3)

我可能错了,但你没有用你的javascript调用csv文件中的列?的 csvData.getAllResponseHeaders()

<script type="text/javascript">
    var csvData;
    $(document).ready(function() {
       $("#btnGET").click(function() {
            csvData = $.ajax({
                type: "GET",
                url: "http://www.sites.com/data/sample_file.csv",
                dataType: "text/csv",
                success: function (result) {
                   alert(result);
                   alert("done!"+ csvData.getAllResponseHeaders())
                 }
            });
       });
    }) 

这应该对你有效:)