Highcharts не будет отображать данные - PullRequest
0 голосов
/ 29 октября 2018

Я пробую таблицу масштабируемых временных рядов старших чартов. Я получаю свои данные через:

$.getJSON(
        '/Data/DailyTime',
        function (data) {
            var v = [];
            var temp;
            data.forEach(function (item) {
                temp = "[" + (item[0]+989) + ", " + item[1] + "]";
                v.push(temp);
            });
         alert(v); //line 10

         var opt_dailytime = {
                // ....
                // ....
                // ....
                series: [{
                        type: 'area',
                        data:  v
                        }]
                // ....
                // ....
                // ....

вывод предупреждения в строке 10:

[1540772030989, 1],[1540772041989, 1],[1540772102989, 1],[1540793888989, 1], 
[1540805114989, 1],[1540807200989, 1],[1540820269989, 1],[1540831608989, 1], 
[1540832150989, 1],[1540832322989, 1],[1540833600989, 1],[1540834662989, 1], 
[1540834670989, 1],[1540834892989, 1],[1540835639989, 1],[1540835744989, 1], 
[1540836013989, 1],[1540836087989, 1],[1540836109989, 1],[1540842529989, 1], 
[1540842721989, 1],[1540847258989, 1],[1540847468989, 1],[1540856547989, 1]

при вводе этих данных вручную в параметрах старшей диаграммы они отображаются правильно:

series: [{
    type: 'area',
    data: [[1540772030989, 1],[1540772041989, 1],[1540772102989, 1],
          //........................................................
           [1540847258989, 1],[1540847468989, 1],[1540856547989, 1]]
}]

но когда я делаю что-то вроде:

series: [{
    type: 'area',
    data:  v
}]

или

series: [{
    type: 'area',
    data: "[" + v + "]"
}]

данные не отображаются ..

извините, я знаю, что я, должно быть, здесь упускаю что-то очень очевидное, но я немного новичок в javascript, поэтому, пожалуйста, помилуйте; m;

Вот мой весь JavaScript, но с добавленными вручную значениями: http://jsfiddle.net/vkm3hxo2/

1 Ответ

0 голосов
/ 29 октября 2018

Вы помещаете строки в ваш массив, это должны быть массивы или объекты.

Эта строка:

temp = "[" + (item[0]+989) + ", " + item[1] + "]";

должно быть

temp = [parseInt(item[0])+989, parseFloat(item[1])]

Или

temp = {x: parseInt(item[0])+989, y: parseFloat(item[1])}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...