从ajax推出的highchart系列

时间:2013-03-20 13:58:56

标签: highcharts

我试图绘制日期和值,这是我的代码:

function getDaily(vsatid){
$.ajax({
     type: "POST",
     url: "daily_graph.php",
     data: "id=" + vsatid,
     success: function(obj1){
     options.series[0].data = obj1.date;
     options.series[1].data = obj1.ebno;
     }
var chart = new Highcharts.Chart(options);  
});}

任何人都可以告诉我如何推动系列,所以我可以得到x作为日期时间和y作为值。 下面是我使用json_encode从mysql数据库解析为json的数据。

  

[{ “日期”: “1363700566”, “的EbNo”:8.04},{ “日期”: “1363701638”, “的EbNo”:8.02},{ “日期”: “1363705226”, “的EbNo”:7.93 },{ “日期”: “1363709087”, “的EbNo”:7.65},{ “日期”: “1363712661”, “的EbNo”:7.69},{ “日期”: “1363716221”, “的EbNo”:7.44}, { “日期”: “1363719708”, “的EbNo”:7.19},{ “日期”: “1363723254”, “的EbNo”:6.97},{ “日期”: “1363726853”, “的EbNo”:6.99},{”日期 “:” 1363730481" , “的EbNo”:7.04},{ “日期”: “1363734045”, “的EbNo”:6.92},{ “日期”: “1363737697”, “的EbNo”:7.07},{ “日期” : “1363741201”, “的EbNo”:7.27},{ “日期”: “1363744878”, “的EbNo”:7.35},{ “日期”: “1363748625”, “的EbNo”:7.48},{ “日期”:” 1363752211" , “的EbNo”:0},{ “日期”: “1363755741”, “的EbNo”:7.69},{ “日期”: “1363759347”, “的EbNo”:7.76},{ “日期”: “1363762894” “的EbNo”:7.83},{ “日期”: “1363766640”, “的EbNo”:7.82},{ “日期”: “1363770121”, “的EbNo”:7.82},{ “日期”: “1363773789”,”的EbNo “:7.69},{” 日期 “:” 1363777209" , “的EbNo”:6.78},{ “日期”: “1363780874”, “的EbNo”:8.15}]

所有答案都会欣赏.. 问候 mahrus

3 个答案:

答案 0 :(得分:0)

每个数据点应定义为:

Var mydata = [[1363700566000,8.04], [1363701638,8.02] ]

或者,您可以使用此表单指定更多的点选项:

Var my data = [{x:1363700566000,y:8.04}, {x:1363701638,y:8.02} ]

请注意,日期以毫秒为单位指定,因此您需要将其乘以1000。

Options.series[0].data = mydata

答案 1 :(得分:0)

你的日期应该是时间戳,所以你应该使用parseFloat()函数将字符串转换为数字,然后乘以1000以实现适当的javascript时间戳格式。

答案 2 :(得分:0)

try
chart.series[0].addPoint(obj1.date);
chart.series[1].addpoint(obj1.ebno)


//     options.series[0].data = obj1.date;
//     options.series[1].data = obj1.ebno;

by using two series u will get 2 diff x values for two diff series
if u want to get x,y val for same series 

parse the obj1 to json . or 
add

               type:"GET",
                   url: "delete",
            //       dataType:"json",
                       data:chart.series[0].data,

try
 $.each(obj1,function(index,object){
 chart.series[0].addPoint(object);
 });                
  // will iterate all the objects and add it to series

where obj1 should contain
[{"x":"1363700566","y":8.04}