1

我正在尝试让 django 从模型中提供 CSV 数据以使用 d3.js 生成图形。当我在服务器上有相同的 CSV 数据并且我将分散的路径传递给 CSV 文件时,此示例有效。

我正在关注此处发布的解决方案Direct data input from Django for a D3 graph以提供 CSV 数据。

我在分散函数中收到一个错误,声称传递的数据为空。

视图.py

def serve_data(request):
    model = get_object_or_404(FileData, pk = 1)
    data = model.get_data()
    return HttpResponse(data, content_type = "text/csv")

模板

<script type="text/javascript">
    $.get('/site/serve_data/', function(data) 
    {
        $('.result').html(data);
        scatter(data); // Here's the call to the javascript function
    });
</script>

javascript

function scatter(csvData)
{
    // ERROR HERE: csvData is null
    d3.csv(csvData, function(data)
    {
        data.forEach(function(d) 
        {
        // work with data
        });
    });
});

我在正确的轨道上吗?

编辑

当我从浏览器调用 URL 时,该serve_data函数确实返回 CSV 数据。

4

1 回答 1

1

您只是在滥用d3.csv,它需要一个 URL。见https://github.com/mbostock/d3/wiki/CSV#wiki-csv

于 2013-01-11T21:22:44.340 回答