Установите разные средства форматирования всплывающих подсказок для каждого уровня солнечных лучей - Highcharts
Я создал диаграмму солнечных лучей с высокими картами. Я установил config
объект, данный Highcharts.chart('type', config)
в питоне. Я хочу иметь одну отдельную подсказку для каждого уровня диаграммы солнечных лучей.
Я могу сделать большую функцию js, которая ищет уровень точки в моих данных, а затем передает уровень средству форматирования всплывающей подсказки для отображения конкретных данных, но я думаю, что это не подходит.
Есть ли highcharts
функция, чтобы получить уровень точки или определить всплывающую подсказку в series.levels[]
?
2 ответа
Вы можете получить это на основе среза level
имущество. Вы можете сделать что-то вроде:
tooltip: {
formatter: function () {
console.log(this); // see what each slice's properties are
if (this.point.node.level == 4) {
return 'Population of <b>' + this.point.options.name +
'</b> is <b>' + this.point.options.value + '</b>';
} else {
return 'Level <b>' + this.point.node.level + '</b> has no tooltip';
}
}
}
Пример jsFiddle
Спасибо тебе за твой ответ. На самом деле, что мне помогает, так это console.log(this)
! Не знаю почему но this
относится непосредственно к точке в моем коде. И поскольку я пишу код на python, мне нужно отформатировать функцию js в строку python, это довольно сложно. Итак, я закончил что-то вроде:
config['tooltip']['pointFormatter'] = (
"function(){"
"var level = this.node.level;"
"return"
f" {myValues}[level] + '<span style=\"text-transform: uppercase;font-weight:bold\">{myPythonVar}:</span> '"
f"+ {myJsFormatter}.call(this) + '<br>'"
"}"
)
Он смешивает Python и JS, его трудно читать, но в моем случае это необходимо.