Django与谷歌图表 [英] Django with google charts
本文介绍了Django与谷歌图表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试在我的网页上显示google图表,但我无法确定如何将值从django视图传递给javascript,以便我可以绘制图表。
I'm trying to get google charts displayed on my page, but i can't figure how to pass values from django views to javascript so i can draw charts.
Django代码:
array = ([
['Year', 'Sales', 'Expenses'],
['2004', 1000, 400],
['2005', 1170, 460],
['2006', 660, 1120],
['2007', 1030, 540]
]);
args['array']= array
return render_to_response('progress.html',args)
progres.html:
progres.html :
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var djangoData = '{{array}}';
var data = google.visualization.arrayToDataTable(djangoData);
var options = {
title: 'Company Performance'
};
var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
chart.draw(data, options);
}
</script>
这样,图表就不会显示出来。有什么建议么 ?
This way, the chart doesn't get displayed. Any suggestions ?
推荐答案
google.visualization.arrayToDataTable()显示为2D(javascript)数组。你传递的是一个字符串。您需要将其解析成数组。尝试:
google.visualization.arrayToDataTable() appears to take a 2D (javascript) array. What you are passing it is a string. You'll need to parse it into an array. Try:
var djangoData = JSON.parse('{{ array }}');
var data = google.visualization.arrayToDataTable(djangoData);
这篇关于Django与谷歌图表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文