使用Django在HTML中显示mpld3图表

3
我正在使用mpld3通过django在HTML页面中显示matplotlib图表。我使用mpld3.fig_to_dict方法从matplotlib图形生成一个字符串,并将其保存在JSON变量中。
我不知道如何在HTML中调用JSON变量。
<div id="fig01"></div>

<script type="text/javascript">
var json01 = { <snip JSON code> };
mpld3.draw_figure("fig01", json01);
</script>

在views.py中创建的json变量:
json01 = json.dumps(mpld3.fig_to_dict(fig))
return render_to_response('plot/main.html', json01)

这段代码返回一个空的HTML页面。 我也尝试像这样调用JSON变量,但它也不起作用。

var json01 = "{{json01}}";

我认为问题出在JavaScript变量上,因为当我在JavaScript中设置图表点时,一切正常。
1个回答

5

答案是... 在views.py文件中:

js_data = json.dumps(mpld3.fig_to_dict(fig))
return render_to_response('plot.html', {"my_data": js_data})

在模板中:
graph = {{ my_data|safe }};

mpld3.draw_figure("fig01", graph);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接