High charts (Time Series Zoomable) not working with my data

点点圈 提交于 2019-12-24 09:59:26

问题


I just started to play around with high charts (Time-Series Zoomable) and I have a JSON data something like this:

[
    {"StartTime":"2018-06-11T00:00:00","TotalReq":10},
    {"StartTime":"2018-06-12T00:00:00","TotalReq":34},
    {"StartTime":"2018-06-15T00:00:00","TotalReq":31},
    {"StartTime":"2018-06-16T00:00:00","TotalReq":2},
    {"StartTime":"2018-06-18T00:00:00","TotalReq":38},
    {"StartTime":"2018-06-19T00:00:00","TotalReq":69},
    {"StartTime":"2018-06-20T00:00:00","TotalReq":39},
    {"StartTime":"2018-06-21T00:00:00","TotalReq":100},
    {"StartTime":"2018-06-22T00:00:00","TotalReq":180},
    {"StartTime":"2018-06-25T00:00:00","TotalReq":104},
    {"StartTime":"2018-06-26T00:00:00","TotalReq":101},
    {"StartTime":"2018-06-27T00:00:00","TotalReq":123}
]

I'm trying to pass the StartTime (dates) as my x-axis parameter and TotalReq (count) as my y-axis parameter.

But for some reason when I pass this data to the graph, it doesn't load the data to the graph (Blank screen). Am I going wrong somewhere? Correct me, if so. Much thanks in advance.

Here is the working example from highcharts that i'm currently working on. Jsfiddle.


回答1:


Highcharts needs time in milliseconds.

So your options are to convert your string in javascript, like this:

new Date("2018-06-27T00:00:00").getTime()

Which means that for the whole table you would do this:

var arr = [
  {"StartTime":"2018-06-11T00:00:00","TotalReq":10},
  {"StartTime":"2018-06-12T00:00:00","TotalReq":34},
  {"StartTime":"2018-06-15T00:00:00","TotalReq":31},
  {"StartTime":"2018-06-16T00:00:00","TotalReq":2},
  {"StartTime":"2018-06-18T00:00:00","TotalReq":38},
  {"StartTime":"2018-06-19T00:00:00","TotalReq":69},
  {"StartTime":"2018-06-20T00:00:00","TotalReq":39},
  {"StartTime":"2018-06-21T00:00:00","TotalReq":100},
  {"StartTime":"2018-06-22T00:00:00","TotalReq":180},
  {"StartTime":"2018-06-25T00:00:00","TotalReq":104},
  {"StartTime":"2018-06-26T00:00:00","TotalReq":101},
  {"StartTime":"2018-06-27T00:00:00","TotalReq":123}]

arr.map(function(data) { return {x: new Date(data.StartTime).getTime(), y: data.TotalReq }})

Which returns the millisecond value for that date. Or to do it in c#.

Working JSFiddle example: https://jsfiddle.net/ewolden/rxLkn2u5/



来源:https://stackoverflow.com/questions/51168055/high-charts-time-series-zoomable-not-working-with-my-data

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!