#javascript #jquery #highcharts
#javascript #jquery #highcharts
Вопрос:
У меня есть столбчатая диаграмма с общей всплывающей подсказкой, и я пытаюсь вывести общую сумму стека во всплывающую подсказку через свойство footerFormat.
Я думал, что это будет простое свойство, к которому я мог бы получить доступ, но я не нашел для него подходящего варианта.
Я упускаю что-то очевидное, или мне нужно сделать это более сложным способом?
(если я пропустил дубликат этого вопроса, пожалуйста, дайте мне знать, я не смог найти конкретные обстоятельства, которые я хочу обсудить)
код:
tooltip : {
shared : true,
useHTML : true,
headerFormat :
'<table class="tip"><caption>Group {point.key}</caption>'
'<tbody>',
pointFormat :
'<tr><th style="color: {series.color}">{series.name}: </th>'
'<td style="text-align: right">${point.y}</td></tr>',
footerFormat :
'<tr><th>Total: </th>'
'<td style="text-align:right"><b>${???}</b></td></tr>'
'</tbody></table>'
}
- Скрипка: http://jsfiddle.net/jlbriggs/AeLFZ /
Комментарии:
1. Вы имеете в виду что-то вроде этого: jsfiddle.net/robertrozas/AeLFZ/9
2. Что-то в этом роде, но мне нужно сохранить ‘shared: true’ и ‘useHTML: true’, и мне нужно, чтобы это было частью footerFormat, а не pointFormat.
3. Другое решение: jsfiddle.net/robertrozas/AeLFZ/11
Ответ №1:
footerFormat
не имеет доступа к ${point}
. Смотрите документацию по footerFormat .
Если вы хотите иметь таблицу с использованием каждой точки shared:true
, вам нужно использовать функцию форматирования следующим образом:
formatter: function() {
var tooltip='<table class="tip"><caption>Group ' this.x '</caption><tbody>';
//loop each point in this.points
$.each(this.points,function(i,point){
tooltip ='<tr><th style="color: ' point.series.color '">' point.series.name ': </th>'
'<td style="text-align: right">' point.y '</td></tr>'
});
tooltip ='<tr><th>Total: </th>'
'<td style="text-align:right"><b>' this.points[0].total '</b></td></tr>'
'</tbody></table>';
return tooltip;
}
Комментарии:
1. Спасибо. Кажется довольно глупым не иметь доступа к такой информации в любой части всплывающей подсказки и не иметь готового доступа к итоговым значениям стека из любой точки, когда есть такая приятная настройка со свойствами формата заголовка, точки и нижнего колонтитула. Использование форматера и запуск цикла похоже на шаг назад…
2. Это относится к
tooltip:
объекту в API high charts. Также используйтеshared: true,
иuseHTML: true,
в том же объекте.