Почему на графике показано нулевое значение, а на самом деле значение не равно нулю? - PullRequest
0 голосов
/ 24 февраля 2020

Я создаю объект с осями X и Y. Затем массив, а затем график данных. Я знаю, что некоторые данные из x дублированы, но я думаю, что программа суммирует соответствующие дубликаты в y и показывает их.

Данные рассчитываются и отображаются в настоящее время, но когда я наведу указатель мыши на столбцы, они показывают значения, такие как 0 или 4, хотя это явно не так. Любые предложения, почему это происходит? Вы можете видеть изображения:

Javascript:

                var str1 = ["2019", "2018", "2017", "2016", "2015", "2014", "2014"];
                var str = [14, 22, 32, 15, 14, 6,0];

                var trace = {
                x: str1,
                y: str,
                type:'bar'
                };

                var data = [trace];

                var mydiv = document.getElementById('chart');
                Plotly.newPlot(mydiv, data);

Pciture от того, как выглядят данные:

enter image description here

enter image description here

Изображение того, как выглядит график:

enter image description here

1 Ответ

0 голосов
/ 24 февраля 2020

Как вы определили, проблема вызвана дублирующимися значениями в серии X.

Если у вас есть такой дубликат, например, здесь ("2014"):

var str1 = ["2019", "2018", "2017", "2016", "2015", "2014", "2014"];
var str = [14, 22, 32, 15, 14, 6,0];

Избавься от таких, вот так:

for (let i = str1.length - 1; i > 0; i--) {
    if (str1[i] === str[i-1]) {
        str1.splice(i, 1);
        str[i-1] += str[i];
        str.splice(i, 1);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...