2013-02-04 12 views
5

Ho il compito di inserire dati dinamici su Google PieChart.Inserimento di dati dinamici in Google Pie Chart

Playground

In quel link poso questo codice:

function drawVisualization() { 
// Create and populate the data table. 
var data = google.visualization.DataTable(); 

var mycars=["Saab","Volvo","BMW"]; 
var mypoints=[4,12,45]; 

data.addColumn('string', 'Cars'); 
data.addColumn('number', 'Numbers'); 
data.addRows(mycars.length); 
for (var i = 0; i < mycars.length; i++){ 
    data.setCell(i,0,mycars[i]); 
    data.setCell(i,1,mypoints[i]); 
} 
// Create and draw the visualization. 
new google.visualization.PieChart(document.getElementById('visualization')). 
draw(data, {title:"So, how was your day?"}); 
} 

Nell'esempio seguente ottengo matrici dinamiche mycars e mypoints, poi tenta di inserire tali matrici al diagramma entro for loop.

PieChart non viene visualizzato. Cosa c'è che non va?

risposta

3

Si ha un errore javascript. È necessario utilizzare la parola chiave new durante l'istanziazione del DataTable.

Sostituire

var data = google.visualization.DataTable(); 

con

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

Jeff, vi ringrazio molto per l'aiuto! –

0

ho risolto il problema utilizzando il codice in jQuery come questo:

$("#piechart_3d").show(); 
google.load("visualization", "1", { 
    packages: ["corechart"], callback: function() { 
     var data = google.visualization.arrayToDataTable([ 
         ['Going', 'a Day'], 
         ['Car', 11], 
         ['Bus', 2], 
         ['Moto', 2] 
        ]); 
     var options = { 
         title: 'Report', 
         backgroundColor: 'transparent', 
         is3D: true, 
        }; 

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