0

我是 highchart 的新手

使用 highchart 团队给出的默认 JSON 值很好,这里是链接

默认高图表值

但是,当我尝试将输入作为 JSON 作为局部变量提供时,图中没有显示任何内容,这里是代码

var myval = new Array();
myval [0] = "1146096000000,69.36";
myval [1] = "1146182400000,70.39";
myval [2] = "1146441600000,69.60";

/******* OR ******/

//var myval = [ [1146096000000,69.36], [1146182400000,70.39], [1146441600000,69.60]];

/***** DOESN'T WORk *****/



 var obj = jQuery.parseJSON ( myval );

        $.getJSON(obj, function(data) {
        $('#container').highcharts('StockChart', {


            rangeSelector : {
                selected : 2
            },

            title : {
                text : 'value graph'
            },

            series : [{
                name : 'val 1',
                data : data,
                tooltip: {
                    valueDecimals: 2
                }
            }]
        });
    });

});
4

1 回答 1

1

如果您将 myVal 定义为:

var myVal = [ [1146096000000,69.36], [1146182400000,70.39], [1146441600000,69.60]];

那么它已经是json了,不需要使用parseJSON解析。您可以简单地设置

data = myVal;

如果 myVal 定义为

var myval = new Array();
myval [0] = "1146096000000,69.36";
myval [1] = "1146182400000,70.39";
myval [2] = "1146441600000,69.60";

那么 myval 是一个包含字符串的 json 对象。您可以解析出数组的每个元素(例如使用拆分)或像这样定义它:

var myval = new Array();
myval [0] = [1146096000000,69.36];
myval [1] = [1146182400000,70.39];
myval [2] = [1146441600000,69.60];

在这种情况下,它也已经是一个 json 对象,不需要解析。

唯一需要解析 JSON 的情况是原始数据是 json 对象的字符串表示形式,例如从 ajax 调用获取数据时。

于 2013-04-26T08:24:21.277 回答