2016-11-14 5 views
1

Kann ChartJS leere Werte verarbeiten?ChartJS: Wie füge ich leere Werte hinzu?

Zum Beispiel gibt es eine Liste von Etiketten:

`['January','February','March','April','May','June]` 

Und es gibt eine Liste von Werten [1,null,null,5,null,1].

In diesem Fall möchte ich, dass ChartJS handelt, dass es keine Werte für Februar, März und Mai gibt, so dass es Zeilen direkt zwischen Januar und April und Juni zieht.

enter image description here

Es gibt ähnliche Fragen, aber sie wollen keine Linie ziehen unter die Null Like this Werte, ich möchte Linien zwischen engsten keine Nullwerte ziehen.

Dies ist der Graph, wenn es 0 statt Nullwerte gibt.

enter image description here

+1

Sie könnten die lineare Interpolation selbst durchführen. – Pointy

+0

Beause Null ist ein korrekter Wert, so dass die Linie am unteren Rand des Diagramms gezeichnet wird. Ich habe ein Bild an das Diagramm angehängt, wenn diese Werte auf Null gesetzt sind. Das Diagramm sollte Trends zeigen. –

+0

Nun Chart.js ist einfach nicht sehr schlau. Wenn Sie möchten, dass das Liniendiagramm Punkte durchläuft, die nicht in Ihren echten Daten enthalten sind, müssen Sie die Werte mit Ihrem eigenen Code berechnen. – Pointy

Antwort

0

Verwenden Sie die spanGaps Option:

var t = ['January', 'February', 'March', 'April', 'May', 'June']; 
var vals = [1,null,null,5,null,1]; 

var chartdata ={ 
    labels:t, 
    datasets :[ 
    { 
    data:vals, 
    spanGaps: true 
    } 
    ] 
}; 

var ctx = document.getElementById("mycanvas").getContext('2d'); 
var lineGraph = new Chart(ctx,{ 
    type: 'line', 
    data: chartdata 
}); 

Hinweis: Sie müssen möglicherweise mit der Linienspannung und y-Achse min und max experimentieren, es zu erhalten suchen, wie Sie wollen, aber dies sollte erfüllen Sie Ihre grundlegenden Anforderungen.

Verwandte Themen