как исправить вертикальное положение оси y = 0, даже если данные изменяются (данные будут отрицательными) - PullRequest
0 голосов
/ 22 мая 2019

В верхнем графике столбца в случае отрицательного значения всякий раз, когда я изменяю значения, тогда ось y = 0 перемещается вверх или вниз, но я хочу зафиксировать положение оси y = 0 в середине и соответственно увеличить высоту столбца

1 Ответ

0 голосов
/ 22 мая 2019

Вы можете использовать функцию tickPositioner для создания зеркального отображения оси и всегда иметь нулевое значение в середине:

yAxis: {
    tickPositioner: function() {
        var defaultTicks = this.tickPositions,
            isMorePositive = Math.abs(defaultTicks[0]) <
                defaultTicks[defaultTicks.length - 1],
            tickPositions = [];

        defaultTicks.forEach(function(el) {
            if (isMorePositive ? (el > 0) : (el < 0)) {
                tickPositions.push(el);
                tickPositions.push(-el);
            } else if (el === 0) {
                tickPositions.push(el);
            }
        });

        return tickPositions.sort(function(a, b) {
            return a - b
        });
    }
}

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

Справочник по API: https://api.highcharts.com/highstock/yAxis.tickPositioner

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