Построение нескольких наборов данных с помощью ajax — данные отображаются неправильно.

Я использую флот в попытке попытаться построить некоторые данные. У меня это работало с одним набором данных, и когда я попытался изменить код для использования более одного набора данных, я столкнулся с ошибкой, которую мне трудно отслеживать, и она перестала работать. Я уверен, что это изменение, которое я сделал, но хоть убей, я не могу его отследить.

По оси Y показаны значения -1,0, -0,5, 0, 0,5 и 1,0, что вряд ли соответствует ожидаемым значениям, а данных по оси X нет. График выглядит пустым.

Я пытаюсь сделать что-то похожее на график репутации в StackOverflow, но это будет представлять другие числовые значения. Первое значение пары dataдолжно быть отметкой времени (думаю, я правильно рассчитал ее), а второе значение пары data— это значение, которое нужно нанести на график.

Я удостоверился, что немои значения заключены в кавычки, что, как я видел, было одной из самых распространенных проблем.

Будем очень признательны за любой отзыв или помощь в указании на проблему.

stats.js

function plotField(){
    var field = 'activeUsers,totalUsers';
    var url = '/api/consoleGet_stats?field='+field;
    $.ajax({
        url: url,
        method: 'GET',
        dataType: 'json',
        success: function(datasets){
            var i = 0;
            console.log(datasets);
            $.each(datasets, function(key, val){
                val.color=i;
                i++;

                var data = [ $(this) ];
                console.log(data);

                var options = {
                    lines: { show: true },
                    points: { show: true },
                    xaxis: {mode: 'time', timeformat: "%y/%m/%d", tickDecimals: 0, tickSize: 1 }
                };

                var placeholder = $("#placeholder");

                $.plot(placeholder, data, options);
            });
        }
    });   
}

consoleGet_stats.php

<?php
    //simplified for example purposes
    $fields=explode(",",$_REQUEST['field']);

    foreach ($fields as $field){
        $rows=$dbConnect->getRows('select date, ' .$field. ' from websiteStats order by id asc');
        $resultData = array('label' => $field);
        foreach($rows as $row){
            $t = strtotime($row['date']." UTC") * 1000;
            $resultData['data'][]=array($t, (int)$row[$field]);
        }
        $results[]=$resultData;
    }
    die(Json_encode($results));
?>

вывод консоли

[Object { label="activeUsers", data=[6]}, Object { label="totalUsers", data=[6]}]
[[Object { label="activeUsers", data=[6], color=0}]]
[[Object { label="totalUsers", data=[6], color=1}]]

возврат json из firebug (форматирование добавлено для этой публикации)

[
    {"label":"activeUsers","data":[[1334583090000,26],[1334669491000,26],[1334755893000,26],[1334842290000,26],[1334928691000,26],[1335015093000,26]]},
    {"label":"totalUsers","data":[[1334583090000,150],[1334669491000,170],[1334755893000,193],[1334842290000,200],[1334928691000,225],[1335015093000,257]]}
]

enter image description here

6
задан Dutchie432 21 May 2012 в 14:10
поделиться