in meinem Javascript habe ich definiert, wie ein LineChart
von Highcharts
zu füllen. Dies wird mit den Daten gefüllt, die von einer Datenbank angegeben werden. Die x-Achse des Diagramms hat den Typ datetime
und der x-Wert ist DateTime
.Highcharts x-Achse Datetime Ausgabe
xAxis: {
type: 'datetime',
labels: {
formatter: function() {
return Highcharts.dateFormat('%d %b - %H:%M:%S', this.value);
}
}
},
lineCharts[index].series[roiIndex].addPoint([point.creationDateTime, point.result]);
aber was ich sehe, ist die folgende:
Ich kann nicht finden, haben die solution..does jemand eine Idee? Vielen Dank!
EDIT
Jetzt Creation die in Millisekunden Epoche Zeit ist:
DateTime date = roi.created_at;
var epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
var creationDateTimeEpoch = Convert.ToInt64((date - epoch).TotalMilliseconds);
infact, ist der Wert , die mit https://www.epochconverter.com/ umgewandelt entsprechen den richtigen Wert. Aber jetzt sehe ich die Serie .
was sind Daten aus der Datenbank können Sie es posten –
'point.creationDateTime' sollte eine Zahl (timestamp) sein, nicht ein' DateTime' Typ. Wenn Sie auch beschreiben könnten, was genau falsch ist, wäre das großartig :) –
^das ist, was Ihr Problem verursacht. Ihre x-Werte haben nicht das Format, nach dem Highcharts sucht. Wenn Sie also die Werte als Daten formatieren, werden sie als "0" verarbeitet, was in der Zeit der Zeit den 1. Januar 1970 bedeutet, den Sie in Ihren Etiketten sehen. Sie müssen Ihren x-Wert als Zeitraum in Millisekunden senden. Ref: https://www.epochconverter.com/ – jlbriggs