2013-02-26 92 views
0

我正在尝试从JSON数据创建一系列highstock标志hHighstock从json获取标志数据

JSON格式:[[timestamp, title],[timestamp, title] ...]

,我也有一个关联数组一样[{x: timestamp, title: "flag"}, ...]

尝试过是否有可能与JSON数据,或者只与像所有highstock标志的例子给定的代码创建它们:

'data': [{ 
    'title':'E', 
    'x':1330560000000 
}], 

+0

提出了一个例如在jsfiddle.net,我们可以玩与它在一起! – 2013-02-26 13:48:30

+0

我没有一个JSON文件在线,但这应该是好的:http://jsfiddle.net/eKQcK/我只是想从我的数据出JSON数组 – spyfx 2013-02-26 13:55:52

回答

0

我认为你需要按照Highstock example和使用data这样的:

data: [{ 
    x: Date.UTC(2011, 1, 14), 
    title: 'E' 
}], 

当我这样做,使用例如,它的工作原理(与固定太synax错误!)。

+0

我知道它的作品,当即时通讯使用highstock的例子,但我必须使用我的web服务中的数据。必须有方法从php/ajax/json获取数据... – spyfx 2013-02-26 14:25:11

+0

然后答案是肯定的,您可以使用JSON服务中的数据来获取标志数据,就像您使用Web服务中的JSON一样获取常规数据。再次使用getJSON()。 – 2013-02-26 14:26:49

+0

多数民众赞成我所做的 - 另一个[jsfiddle示例](http://jsfiddle.net/aSkMg/1/),第二个函数参数是从我的getJSON JSON数据() – spyfx 2013-02-26 14:31:50

0

它应该工作正常,请大家看一下例子:

data.json

[{ 
      "name" : "AAPL", 
      "id":"dataseries", 
      "data" :[ 
[1141171200000,69.10], 
[1141257600000,69.61], 
[1141344000000,67.72], 
[1141603200000,65.48], 
[1141689600000,66.31], 
[1141776000000,65.66], 
[1141862400000,63.93], 
[1141948800000,63.19], 
[1142208000000,65.68], 
[1142294400000,67.32], 
[1142380800000,66.23], 
[1142467200000,64.31], 
[1142553600000,64.66], 
[1142812800000,63.99], 
[1142899200000,61.81], 
[1142985600000,61.67], 
[1143072000000,60.16], 
[1143158400000,59.96], 
[1143417600000,59.51], 
[1143504000000,58.71], 
[1143590400000,62.33], 
[1143676800000,62.75], 
[1143763200000,62.72]], 
      "tooltip": { 
       "yDecimals": 2 
      } 
},{ 
       "type": "flags", 
       "name": "Flags on axis", 
         "onSeries": "dataseries", 
       "data": [{ 
        "x": 1143417600000, 
        "title": "On axis" 
       }], 
       "shape": "squarepin" 
      }] 

和脚本:

$.getJSON('data.json', function(data) { 

    window.chart = new Highcharts.StockChart({ 
     chart : { 
      renderTo : 'container' 
     }, 

     rangeSelector : { 
      selected : 1 
     }, 

     plotOptions: { 
      series: { 
       stacking: 'normal' 
      } 
     }, 

     series : data 
    }); 
});