0

我在使用 Highstock 显示图表时遇到了一些困难。似乎我无法访问应该显示图形的 x 轴部分。我是 Highstocks 的新手,所以我的代码看起来很乱,但我的想法如下:首先从服务器访问 json 文件。将其转换为正确的格式 [[dateamp, value], ....]。然后显示图表。

这是我的 Json 文件(file.json):

[{"date":"2013-10-04T22:31:12.000Z","value":30000},{"date":"2013-10-04T22:31:58.000Z","value":35000},{"date":"2013-10-04T22:32:05.000Z","value":60000},{"date":"2013-10-04T22:32:12.000Z","value":45000}]

我的代码如下:

    $(function() {

chartOjb = new Object();
var mydata = [];

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

       $.each(data, function (index, item) {
            chartOjb.name = getTimestamp(item.date);
            chartOjb.data = item.value;
            mydata.push({ x: chartOjb.name, y: parseFloat(chartOjb.data) });


        }); 
      $('#container').highcharts('StockChart', {

          chart: {
                type: 'candlestick',
                zoomType: 'x'
            },

          navigator: {
                adaptToUpdatedData: false,
                series: {
                    data: mydata
                }
            },

            scrollbar: {
                liveRedraw: false
            },

          xAxis: {
                type: 'datetime',
                title: 'Time',
                //minRange: 3600 * 1000/15 // one hour
            },

          rangeSelector : {
              selected : 1
          },

          title : {

              text : value
          },

          series : [{
              name : 'Capacité',
              data : data,

              tooltip: {
                  valueDecimals: 2
              }
          }]          });         });

});

非常感谢您的帮助

4

1 回答 1

0

你能添加你的功能getTimestamp()吗?也许有什么不对劲。请记住:

  • x值应该是时间戳,
  • 当使用大量对象时{ x: x, y: y },设置turboThreshold
于 2013-10-08T10:17:58.143 回答