如何通过json数据动态获取基线highchart

how to get basic line highchart dynamically through json data

本文关键字:获取 基线 highchart 动态 数据 何通过 json      更新时间:2023-09-26

我的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轴日期:2014年2月9日15:36:25数据用于y轴:33.82,33.42,40.83(用于三条不同的线,如数据1、数据2、数据3)

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

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

您首先需要从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轴类别中,它们会更多。逻辑表示将每个日期显示为单独的系列,就像我在示例中所做的那样。

请参阅此处的演示