从Django直接输入D3图表

ono*_*ono 7 javascript django json d3.js

似乎所有D3示例图都将外部.csv或.tsv文件作为输入数据.有没有办法修改代码从Django中的变量中获取数据.假设{{data}}是JSON格式的,你如何在http://bl.ocks.org/3885304http://bl.ocks.org/3887051这样的图形中实现它?我试图避免总是写一个.csv文件.

mik*_*725 6

您始终可以创建一个视图,该视图将提供D3将使用的动态csv文件.这种方式还允许用户在需要原始数据而不是图表时下载数据.

def foo(request, ...):
    model = get_object_or_404(Foo, ...)
    data = model.get_data() # should return csv formatted string
    return HttpResponse(data, content_type='text/csv')
Run Code Online (Sandbox Code Playgroud)


Mar*_*tin 5

您可以在传递给模板标记变量和|safed 的字符串中使用格式正确的JSON,而不是异步加载数据(ajax样式).

退房的工作示例http://bl.ocks.org/4040034这是基于http://bl.ocks.org/3885304

您还应该查看SO上的相关问题,这个主题有很多.

  • 固定它.{{data | safe}} (2认同)