2016-07-11 30 views
0

Ich versuche ein Google-Streudiagramm mit meinen eigenen Daten zu erstellen. Das Beispiel von Google sieht so aus:Zweidimensionales Array für Google Scatterplot wird nicht korrekt erstellt

var data = google.visualization.arrayToDataTable([ 
     ['Age', 'Weight'], 
     [ 8,  12], 
     [ 4,  5.5], 
     [ 11,  14], 
     [ 4,  5], 
     [ 3,  3.5], 
     [ 6.5, 7] 
    ]); 

Jedes Element im Array repräsentiert einen Punkt im Diagramm. In meinem Code habe ich zwei Arrays (eins für x-Werte, eins für y-Werte). Ich möchte diese beiden Arrays so kombinieren, dass sie zum obigen Beispiel passen. Mein Code sieht so aus:

Hinweis: Ich erstelle das Skript in Groovy, daher die Ausdrücke $ {}. Wenn ich drucken Sie das Array gibt er folgendes:

[["n50, Number of contigs"], ["136431, 712"], ["203520, 267"], ... 

Wie kann ich die richtigen Angebote für meinen ersten Eintrag bekommen und die Anführungszeichen für die Zahlen entfernen?

Antwort

0

ist dieses einfache Skript Lassen Sie versuchen (ich versuche nie Groovy zu lernen, so dass ich hoffe, es funktioniert):

var n50 = ${n50Values}; 
    var contigs = ${contigValues}; 
    var dataArray = [[]]; 

    var headline = new Array(); 
    headline.push("n50"); 
    headline.push("Number of contigs"); 
    dataArray.push(headline); 

    for (var i = 0; i < n50.length; i++){ 
    var row = new Array(); 
    row.push(n50[i]); 
    row.push(contigs[i]); 
    dataArray.push(row); 
    } 
+0

Dank für Ihre Antwort danken. Ich erzeuge ein HTML-Dokument in meinem Groovy-Skript, also bin der Code JavaScript, ich habe gerade die Daten aus Groovy importiert. Ihr Code funktioniert fast. Es gibt mir die richtige Ausgabe, aber es erstellt ein leeres Element am Anfang des Arrays. Ich kann aber nicht herausfinden warum. – Sven

+0

ändern "var dataArray = [[]];" zu "var dataArray = new Array();" – Marcus

+0

oder von "var dataArray = [[]];" zu "var dataArray = [];" wenn es dir mehr gefällt :) – Marcus