Django与谷歌图表 [英] Django with google charts

查看:95
本文介绍了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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆