2013-03-24 3 views
1

Мне сложно отображать массив данных на графике флота. Я использую jQuery Ajax/PHP/MySQL для этого.Вставка данных в флот

Я создан массив с этим PHP/MySQL:

$result = mysql_query("SELECT * FROM happiness"); 
    $array = array(); 
    while($row = mysql_fetch_array($result)) { 
    $array[] = $row[3]; 
    $array[] = $row[2]; 
    } 

    echo json_encode($array); 

и передать его через JQuery Ajax для Flot как это:

$.ajax({          
     url: 'receive-happiness.php', 
     dataType: 'json',      
     success: function(data)   
     { 
      var graph_data = [data];    
      alert(graph_data); 
      $.plot($("#graph"), [graph_data], options); 
     } 
    }); 

Когда я предупредит graph_data, я получаю это:

23,8,23,1,24,0,25,0,26,9,27,10,28,9 

Но когда я проверяю график флота, он отображает только одну точку данных в (23,8). Что происходит не так?

ответ

3

Ваши данные графа должны быть массивом сгруппированных координат точки.

Попробуйте это:

$result = mysql_query("SELECT * FROM happiness"); 
$array = array(); 
while($row = mysql_fetch_array($result)) { 
    $array[] = array($row[3], $row[2]); 
} 

echo json_encode($array); 

Когда вы оповещать свои данные графика, это должно выглядеть примерно так:

[ [23, 8], [23, 1], [24, 0], [25, 0], [26, 9], [27, 10], [28, 9] ] 

См Data format документацию Флот.

Смежные вопросы