Как обновить график Highstock на подсвечнике с новой точкой данных - PullRequest
0 голосов
/ 08 января 2019

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

updatepoint.php выдает это как результат

{"time":"1546978140000", "open":"4112.89677", "high":"4112.9", "low":"4112.8", "close":"4112.9"}

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

chart: {
  events: {
    load: function() {
      addPopupEvents(this);
      var series = this.series[0];
      setInterval(function() {
        $.ajax({
          url: 'http://www.chart.blue/chart/Highstock/updatepoint.php',
          dataType: 'json',
          success: function(point) {
            series.addPoint([point.time, point.open, point.high, point.low, point.close], true, true);
          },
        });
      }, 60000);
    }
  }
},

1 Ответ

0 голосов
/ 09 января 2019

Вам необходимо преобразовать строковые значения в числа:

chart: {
    events: {
        load: function() {
            var series = this.series[0];
            setInterval(function() {
                $.ajax({
                    url: 'https://www.chart.blue/chart/Highstock/updatepoint.php',
                    dataType: 'json',
                    success: function(point) {
                        series.addPoint([+point.time, +point.open, +point.high, +point.low, +point.close], true, true);
                    },
                });
            }, 60000);
        }
    }
},

Демонстрационная версия: https://jsfiddle.net/BlackLabel/suj7zaf2/

...