2015-01-27 19 views
5

Ich habe Problem in Google-Diagramm.How To dynamisch Zeile zu Google Chart mit for loop

Ich benutze asp.net Mvc. Nachdem ich Daten vom Controller abgeholt habe, übertrage ich sie in Google-Chart.

, wenn ich die manuelle Daten verwenden, zum Beispiel

wenn ich diese verwenden `

['Month', 'Bolivia', 'Ecuador', 'Madagascar', 'Papua New Guinea', 'Rwanda', 'Average'], 
['2004/05', 165,  938,   522,    998,   450,  614.6], 

Es Zeigen Sie mir richtig.

aber wie kann ich meine Daten dynamisch in Google Diagramm hinzufügen

dies ist mein Code

success: function (chartsdata) { 


      debugger; 
      for (var i = 0; i < chartsdata.length; i++) { 

       var data = google.visualization.arrayToDataTable([ 
           ['Element', 'Density', { role: 'style' }], 
           [chartsdata[i].MonthValue , chartsdata[i].CountValue, '#b87333'] 

       ]); 

       debugger; 
       var options = { 
        title: '', 

       }; 
       var chart = new google.visualization.ComboChart(document.getElementById('chartdiv')); 
       chart.draw(data, 
        options); 
      } 
+0

Wie haben Sie chartsdata zugeordnet? – abiNerd

Antwort

5

Die Art und Weise Sie tun, ist wrong.You sollte wie unten etwas tun:

var data=[]; 
var Header= ['Element', 'Density', { role: 'style' }]; 
data.push(Header); 
for (var i = 0; i < chartsdata.length; i++) { 
     var temp=[]; 
     temp.push(chartsdata[i].MonthValue); 
     temp.push(chartsdata[i].CountValue); 

     data.push(temp); 
    } 
var chartdata = new google.visualization.arrayToDataTable(data); 
3

können Sie "google.visualization.DataTable()" und seine "addRow()" Google code

verwenden
var data = new google.visualization.DataTable(); 
data.addColumn('string', 'Month'); 
data.addColumn('number', 'Count'); 

for (var i = 0; i < chartsdata.length; i++) { 
    data.addRow([chartsdata[i].month, chartsdata[i].count]); 
} 
+1

Das war einfach und funktionierte gut für mich, danke. – Scott