Обрабатывается серия линейных графиков HighStockYДанные неверны - PullRequest
0 голосов
/ 19 сентября 2019

Фото с неисправной картой | Увеличение (меньше точек данных) строит графики правильно При построении логического значения во времени (в пошаговом режиме) Highstock 7.2.0 вводит интерполированные значения в диапазоне от 0 до 1. Я хотел бы, чтобы результат просто отображал 0 и1с в ступенчатом порядке.Смотрите прикрепленные фотографии.Выделенная строка показывает интерполированные значения.

Я смотрю на разницу между series.data и series.processedYData, и хотя series.data представляет собой смесь из 0 и 1, как и ожидалось, series.processedYData содержит некоторыеинтерполированные значения в диапазоне от 0 до 1. Если я увеличу масштаб на соответствующем временном диапазоне, он будет отображаться правильно.Это происходит только при получении большого набора данных (более 100 или около того).

scope.CreateChart = function () {
    if (scope.chart) scope.chart.destroy();
    scope.chart = new Highcharts.stockChart('trend', {
        rangeSelector: {
            enabled:false
        },
        legend: {
            layout: 'horizontal',
            align: 'center',
            verticalAlign: 'bottom',
            enabled:true
        },
        plotOptions: {
            connectNulls: false
        },


        chart: {
            zoomType: 'xy',
        },
        xAxis: {
            type: 'datetime',
            dateTimeLabelFormats: {
                millisecond: '%H:%M:%S.%L',
                second: '%H:%M:%S',
                minute: '%H:%M',
                hour: '%H:%M',
                day: '%b %e',
                week: '%b %e',
                month: '%b \'%y',
                year: '%Y'
            }
        },
        yAxis: [{ id: GuidSvc.Create(), title: { text: 'Default' }, opposite: false }],
        series: [
            {name: 'Series 1', 
             step: true,
             type: 'line',
             data: [[1568293051542,0],[1568293352761,0],[1568293652277,0]
        ],
        credits: { enabled: false },
        lang: {
            noData: "No tags selected.  Click on a tag to trend"
        },
        noData: {
            style: {
                fontWeight: 'bold',
                fontSize: '15px',
                color: '#ccc'
            }
        }
    });
};

1 Ответ

0 голосов
/ 20 сентября 2019

Это происходит, вероятно, из-за серии dataGrouping.Это концепция выборки значений данных в более крупные блоки для облегчения чтения и повышения производительности.

Таким образом, решение может состоять в том, чтобы отключить его или изменить метод аппроксимации, чтобы он показывал не среднее по группе, а один изего точки (так что это будет 0 или 1).

  plotOptions: {
    series: {
      dataGrouping: {
        enabled: false
      }
    }
  }

Ссылка API:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...