2017-07-04 9 views
-1

Dies ist wahrscheinlich eine wirklich einfache Frage, aber ich habe erst vor ein paar Wochen begonnen, Javascript zu verwenden und habe noch nicht wirklich einen guten Überblick davon.chart.js Anzahl der Etiketten entspricht der Anzahl der Datenpunkte

Ich erzeuge ein Liniendiagramm mit chart.js und das Array mit den Datasets Daten hat eine variable Länge abhängig von Benutzereingaben. Ich kann die Anzahl der Labels nicht mit der Anzahl der Datenpunkte vergleichen. Wenn das Array also eine Länge von 10 hat, hat es nur 10 Punkte im Diagramm statt 15 oder eine andere Zahl, die ich fest in die "Labels" geschrieben habe: Attribut

should stop at 10

var count = dataArray.length; 
var labelnames = ["1st", "2nd", "3rd", "4th", "5th", "6th", "7th", "8th", "9th", "10th", "11th", "12th", "13th", "14th", "15th"]; 

Also hier, wenn dataarray Länge von 10 hat, würde ich wie diese eine Zeichenfolge mit 10 Etiketten wollen:

var labelsOnChart = ["1st", "2nd", "3rd", "4th", "5th", "6th", "7th", "8th", "9th", "10th"]; 

auf meinem Diagramm zu platzieren.

Antwort

0

Interessante Frage. Außerdem interessante Bibliothek 'Chart.js'. Sogar ich arbeite an demselben von letzten 2 Monaten.

Lösung

Dafür benötigen Sie eine vordefinierte Array zu erstellen, die global sein wird.

var labelnames = ["1st", "2nd", "3rd", "4th", "5th", "6th", "7th", "8th", .....]; 

Wann immer Sie Ihr Diagramm spezifische dataarrayset möchten folgende Sie dann

var count = dataArray.length; 
var requiredLabels = labelnames .slice(0,count); 

hoffen, dass dies Ihr Problem lösen !!

+0

wie Magie, funktioniert perfekt, vielen Dank. – Dracounius

Verwandte Themen