2013-03-27 81 views
1

這段代碼是爲了顯示一個圖表,但並不:谷歌圖 - 圖中沒有顯示

google.load("visualization", "1", {packages:["corechart"]}); 
    google.setOnLoadCallback(drawChart); 
    function drawChart() { 
    data.addcColumn('string', 'Type'); 
    data.addColumn('number', 'Job Registration'); 
    data.addRows([ 
    <?php foreach ($chart_result as $result) { 
      echo $result; 
     }?> 
    ]); 

    var options = { 
     title: 'Job Registration by Type', 
     hAxis: {title: '', titleTextStyle: {color: 'red'}} 
    }; 

    var chart = new google.visualization.ColumnChart(document.getElementById('visualization')); 
    chart.draw(data, options); 
    } 

當我提交表單和視圖頁面的源代碼,這是data.addRows結果:

data.addRows([ 
    [' Engineer',1],['Assistant',1],['Developer',4],[' Ninja!',1],['Web Application Developer',1], 
    ]); 

這看起來我的權利,但這是我第一次使用谷歌分析(或JavaScript ...)和我是一個遵循現有圖表的一個例子相當密切,所以也許它不是一切都好。任何想法,爲什麼這可能不工作?

乾杯

回答

0

您有兩個問題。

首先是你沒有定義數據。

以下行添加到您的代碼:

var data = new google.visualization.DataTable(); 

第二個是一個愚蠢的語法錯誤:

data.addcColumn('string', 'Type'); 

應該是:

data.addColumn('string', 'Type'); 

以及與這些魔法一樣,它的工作原理:

function drawVisualization() { 
    var data = new google.visualization.DataTable(); 
    data.addColumn('string', 'Type'); 
    data.addColumn('number', 'Job Registration'); 
    data.addRows([ 
    [' Engineer',1], 
    ['Assistant',1], 
    ['Developer',4], 
    [' Ninja!',1], 
    ['Web Application Developer',1], 
    ]); 

    var options = { 
    title: 'Job Registration by Type', 
    hAxis: {title: '', titleTextStyle: {color: 'red'}} 
    }; 

    var chart = new google.visualization.ColumnChart(document.getElementById('visualization')); 
    chart.draw(data, options); 
}