Highstock - 从JSON文件中提取数据

时间:2015-11-17 22:01:37

标签: javascript jquery json highcharts highstock

我知道在SO上有很多与此主题相关的类似问题但是,我没有成功实现我想要做的事情,所以我在这里写一个问题。请理解我是新人。

所以,基本上,使用Highstock - 这里可以找到的基本图http://www.highcharts.com/stock/demo/basic-line,我想从名为Json1.json的JSON文件中导入数据。我该怎么做? http://jsfiddle.net/x0g8hL0e/1/

在JavaScript中,我写了

$(function () {

    $.getJSON('Json1.json', function (data) {
        // Create the chart
        $('#container').highcharts('StockChart', {


            rangeSelector : {
                selected : 1
            },

            title : {
                text : 'Pressure'
            },

        });
    });

});

此外,是否可以只看到24小时格式而不是一年?

P.S,Json数据以这种方式格式化

[
{"Pressure": 1},
{"Pressure": 5},
{"Pressure": 3},
{"Pressure": 2},
{"Pressure": 4}
}]

1 个答案:

答案 0 :(得分:0)

您应该处理您的数据,因此它将采用Highcharts接受的格式。它可以(如API reference中所述):

  1. 数值数组。
  2. 包含2个值的数组数组。
  3. 具有命名值的对象数组。
  4. 其他选项是使用定义了keys的数组。

    如果您想使用例如第一个数据,然后你可以通过你的JSON并创建一个数值数组,其值从每个对象中取出,来自Pressure属性。

    $(function () {
    
        //$.getJSON('Json1.json', function (data) {
        // simulate JSON data
        var data = [{
            "Pressure": 1
        }, {
            "Pressure": 5
        }, {
            "Pressure": 3
        }, {
            "Pressure": 2
        }, {
            "Pressure": 4
        }],
            processedData = [];
        // process the data to match one of formats required by Highcharts - an array of numberical values
        // see: http://api.highcharts.com/highstock#series<line>.data
        Highcharts.each(data, function(d) {
            processedData.push(d.Pressure);
        });
        // Create the chart
        $('#container').highcharts('StockChart', {
            rangeSelector: {
                selected: 1
            },
            title: {
                text: 'Pressure'
            },
    
            series: [{
                data: processedData
            }]
    
        });
        //});
    
    });
    

    JSFiddle

    有关Highcharts的基本信息,您可以看到General Documentation