Подсказка для холста D3 Heatmap
Здесь я работаю над D3 Heatmap со сбрасываемым зумом, но я хочу добавить всплывающую подсказку, чтобы просмотреть счетчик интенсивности. С помощью подсказки D3 я попытался добавить всплывающую подсказку, но не знаю, как получить счетчик интенсивности из холста, где тепловая карта рисуется как данные изображения. Пожалуйста, проверьте мою скрипку.
Код, используемый для добавления всплывающей подсказки:
var tip = d3.tip()
.attr('class', 'd3-tip')
.offset([-10, 0])
.html(function (d) {
return "tooltip";
})
svg.call(tip);
svg.on('mousemove', tip.show);
svg.on('mouseout', tip.hide);
Любая помощь будет принята с благодарностью.
Заранее спасибо.
1 ответ
Решение
Чтобы получить интенсивность, сделайте следующее:
var tip = d3.tip()
.attr('class', 'd3-tip')
.offset([10, 0])
.html(function (d) {
var k = d3.mouse(this);
var m = Math.floor(scale[X].invert(k[0]));//will give the scale x
var n = Math.floor(scale[Y].invert(k[1]));//will give the scale y
return "Intensity Count: " + heatmap[n][m];
})
Рабочий код здесь
Надеюсь это поможет!