jqPlot добавляет значение 0

Я использую библиотеку jqPlot для построения диаграмм. Я использую JS для извлечения файла JSON, создания строки с использованием значений из файла JSON, преобразования ее во вложенный массив (единственный формат, который нравится jqPlot), а затем передачи в jqplot. jqPlot прекрасно читает массив и отображает правильные значения, но в конце добавляет значение 0.

Вот код строки:

$(function () {
    $.getJSON("test.json", chartData);
    function chartData(data) {
                $.each(data.values, function(index,val){ 
                    chartValues += val + ",";
                });
            };

вот код, который преобразует его во вложенный массив:

var temp = new Array();
temp = chartValues.split(',');
var temp2 = new Array(temp);
alert(temp2);

Поэтому, когда temp2 передается в jqplot, он добавляет ноль, но когда я передаю ему идентичный вложенный массив с именем test, который объявлен вручную, он не добавляет ноль. Вот они для сравнения:

var test = [[12,32,21,23,34,43,52,86,25,]];

а вот темп2

[[12,32,21,23,34,43,52,86,25,]]

Любые идеи? Я также был бы признателен за любую помощь с моей логикой в ​​​​этом, поскольку я чувствую, что мог бы создать вложенный массив более элегантно.


person Squishy    schedule 19.04.2012    source источник


Ответы (2)


Я не уверен на 100% на данный момент, но я думаю, что в ..... 86,25,]] это неправильно. Это может быть причиной добавления нулевого значения. Попробуйте устранить это. Другое дело, что вы можете обращаться к массивам данных в json-файлах напрямую, используя базовые методы доступа. Попробуйте на json org.

person Shamitha Silva    schedule 23.04.2012
comment
Спасибо за ответ. Я понял, что, несмотря на то, что он не отображал конечное нулевое значение, новый массив добавлял 0 значение после последнего, - простая строка кода (ниже) устранила проблему. - person Squishy; 23.04.2012

В этом случае решением было удаление последнего символа в строке (перед преобразованием в массив).

newStr = chartValues.substring(0, chartValues.length-1);
person Squishy    schedule 23.04.2012