2016-10-31 1 views
-1

Ich versuche, zwei verschiedene Listen, die ein Diagramm Werte und Beschriftungen zu jsonify darstellen, dann an Javascript-Funktion übergeben, um das Diagramm zu zeichnen, aber es hat nie mit mir gearbeitet. Es funktionierte nur, wenn ich eine einzige Liste für Werte ohne die Etikettenliste zurückgab.Wie man zwei Arrays mit jsonify in Flask zurückgibt?

Das folgende ist mein Flask Skript:

enter image description here

Das folgende ist mein Javascript-Code enthält, jQuery und AJAX-Funktion:

<script> 

     var getValues = $.get('/data'); 
     getValues.done(function(values,labels){ 

     var data = { 
     labels: [ 
      labels.labels 
     ], 

     series: [ 
      values.values 
     ] }; 

     var options = { 
      width : 800, 
      height : 400 
     } 

     var myChart = new Chartist.Bar('.ct-chart', data, options); 

     }); 

    </script> 
+0

Anstatt ein Bild von Text zu machen, post den eigentlichen Code. – davidism

Antwort

0

Ihr /data Endpunkt liefert JSON Objekt, das Sie in Ihrerangeben könnenParameter.

$.get('/data', function(response){ 
    var data = { 
     labels: response.labels, 
     series: [response.values] 
    }; 

    var options = { 
     width : 800, 
     height : 400 
    } 

    var myChart = new Chartist.Bar('.ct-chart', data, options); 
}, "json"); 
+0

Das war schnell !!! Danke vielmals. –

+0

Bei kiran.koduru eine andere Frage bitte. Ich versuche, eine andere Kopie dieses Diagramms zu erstellen, indem ich eine andere Route in flask anlege und den Javascript-Code unter Berücksichtigung der neuen $ .get-Variablen dupliziere, aber jedes Mal, wenn das erste Diagramm gezeichnet und das zweite vernachlässigt wird. –

+0

@ A.Youssef können Sie Klassennamen ersetzen, um das Diagramm mit 'neuen Chartist.Bar ('. Ct-chart1', Daten, Optionen)' und 'neue Chartist.Bar ('. Ct-chart2', Daten, Optionen) zu erstellen '. Stellen Sie sicher, dass Ihre div Klassennamen auch entsprechend markiert sind. –