flot从json获取数据但显示空白图

时间:2011-09-01 11:07:52

标签: flot

这是代码,当我手动将json数据粘贴到系列中时,获得了图形但是通过ajax调用我能够获取json数据但是图表是空白的。

$(document).ready(function(){
$.ajax({
            url:"sqljson.php",
            method:"GET",
            datatype:"json",
            success:graph
        })

        function graph(series){
                var data=series;

                alert(series);
                var options={
                lines:{show:true},
                points:{show:true,hoverable:true},
                grid:{hoverable:true,clickable:true}
                }

            $.plot($("#place"),[data], options);    
            }


    });

json数据:在警报窗口中获取

[["253","5"],["254","32"],["255","10"],["256","50"],["257","1"],["258","2"["259","100"],["260","38"],["261","2"],["262","20"],["263","2000"],["264","500"],    ["265","400"],["266","10"],["267","50"],["268","9"],["269","200"],["270","40"]["271","700"],["272","188"],["273","73"]]

1 个答案:

答案 0 :(得分:3)

根据Flot FAQ

  

问:当我使用JSON数据作为源时,Flot无效!

     

答:实际上,Flot喜欢JSON数据,你只是格式错误。   仔细检查你没有输入字符串而不是数字,   如[[“0”,“ - 23”],[“5”,“4.3”]]。这是最常见的错误,并且   错误可能不会立即显示,因为Javascript可以做一些   自动转换。

您需要更改输出JSON,因此没有引号,即:

[[253,5],[254,32],[255,10],[256,50],[257,1],[258,2],[259,100],[260,38],[261,2],[262,20],[263,2000],[264,500],[265,400],[266,10],[267,50],[268,9],[269,200],[270,40][271,700],[272,188],[273,73]]

但是,这可能不会这样做,它需要采用类似于this的格式,所以:

{
 "label": "example",
  "data": [[253,5],[254,32],[255,10],[256,50],[257,1],[258,2],[259,100],[260,38],[261,2],[262,20],[263,2000],[264,500],[265,400],[266,10],[267,50],[268,9],[269,200],[270,40][271,700],[272,188],[273,73]]
}
相关问题