Расположите общую подсказку над столбцами с накоплением - PullRequest
0 голосов
/ 26 апреля 2019

При использовании столбцов с накоплением я хотел бы, чтобы подсказка была расположена над столбцами с накоплением.Прямо сейчас всплывающая подсказка появится над скрытой частью столбца, например:

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

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

Ответы [ 2 ]

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

Итак, мне наконец-то удалось это сделать, используя значения Axis.toValue () и Axis.toPixels ():

https://api.highcharts.com/class-reference/Highcharts.Axis

Чтобы мое решение работало, у вас должен быть способчтобы получить общее значение столбца с накоплением.Может быть способ сделать это, используя только объект Highcharts, но мне не нравится слишком много возиться с внутренностями Highcharts из соображений совместимости.

Вот как может выглядеть метод позиционера:

function positioner(labelWidth, labelHeight, point)
{
    // Default position, assuming mChart is the Highcharts object
    var chartY = point.plotY + mChart.plotTop;
    var chartX = point.plotX + mChart.plotLeft;

    // Move chartY above the stacked column, assuming getTotalColumnValue() exists
    var category = Math.round(mChart.xAxis[0].toValue(point.plotX, true));

    if(category in mChart.xAxis[0]['categories'])
        chartY = mChart.yAxis[0].toPixels(getTotalColumnValue(category), false);

    // Move tooltip above the point, centered horizontally
    return {
        x: chartX - labelWidth / 2,
        y: chartY - labelHeight - 10,
    };
}
0 голосов
/ 26 апреля 2019

Вы можете использовать параметр shared для всплывающей подсказки:

tooltip: {
    shared: true
}

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

Справочник по API: https://api.highcharts.com/highcharts/tooltip.shared

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