如何通过json数据动态获取基本行高图

时间:2014-09-08 07:42:20

标签: javascript json graph charts highcharts

我的json数据是:

{"09/02/2014 15:36:25":[33.82,33.42,40.83],"08/11/2014 16:25:15":[36.6,33.42,40.45],"07/30/2014 08:43:57":[0.0,0.0,0.0],"08/12/2014 22:00:52":[77.99,74.1,80.12],"08/12/2014 21:19:48":[56.91,63.23,52.42],"07/23/2014 13:37:46":[0.0,0.0,0.0],"08/11/2014 17:35:21":[40.9,43.83,38.34]}

我希望这些数据成为高图表基本线图,我想要x轴的日期和y轴的数据。 例如:日期是针对x轴:09/02/2014 15:36:25 数据是y轴:33.82,33.42,40.83(三个不同的行说data1,data2,data3)

用于手动生成的图表我正在使用:http://jsfiddle.net/gh/get/jquery/1.9.1/highslide-software/highcharts.com/tree/master/samples/highcharts/demo/line-basic/

如何从json数据上面获取动态生成的图形

1 个答案:

答案 0 :(得分:0)

首先需要从JSON数据中获取值,如:

Object.keys(data); //this will return dates
data[xAxis[0]]; //this gives the values corresponding to each date (currently first date)

然后您需要动态地使用这些值填充图表:

var chart = $("#container").highcharts();
for(var i=0; i<xAxis.length; i++) {
    chart.addSeries({
        name: xAxis[i],
        data: data[xAxis[i]]
    });
}

并且顺便说一句,您无法在xAxis上显示日期,因为如果您将日期设置为大于此值,则每个数据值都有3个点但x轴类别。逻辑表示将显示每个日期作为单独的系列,就像我在我的例子中所做的那样。

<强> See the DEMO here