У меня есть эта диаграмма пончиков проекта d3.js. По какой-то причине я не могу получить доступ к данным в onmousemove
. Значение i
равно нулю - это все функции, которые я передаю в этом событии. Я хочу получить доступ к данным конкретного среза, куда движется мышь.d3.js: Необычная ошибка
Как это разрешить? Кто-то pls hlp!
Вот мой код до сих пор:
piesvg.selectAll("path")
.data(pie(data))
.enter().append("g")
.attr('class', 'slice')
var slice = d3.selectAll('g.slice')
.append('path')
.each(function(d) {
d.outerRadius = outerRadius - 20;
})
.attr("d", arc)
.attr('fill', function(d, i) {
return colorspie(i)
})
.on("mouseover", arcTween(outerRadius, 0))
.on("mouseout", arcTween(outerRadius - 20, 150))
.on("mousemove", function(data){
piesvg.select(".text-tooltip")
.attr("fill", function(d,i){return colorspie(i)})
.text(function(d, i){return d[i].domain + ":" + parseInt(d[i].value * 20)}); //Considers i as 0, so no matter whichever slice the mouse is on, the data of only first one is shown
});
Вот полный код:
https://jsfiddle.net/QuikProBro/xveyLfyd/1/
Я не знаю, как добавить внешние файлы JS скрипку, чтобы он не работает ....
Здесь отсутствует .tsv:
value domain
1.3038675 Cloud
2.2541437 Networking
0.15469614 Security
0.8287293 Storage
0.7292818 Analytics
0.61878455 Intelligence
1.7016574 Infra
0.4088398 Platform
вы можете дать рабочую скрипку вашего кода – Cyril
я поставить код здесь: https://jsfiddle.net/ QuikProBro/xveyLfyd/1/ Я не знаю, как добавить внешние файлы .tsv в скрипту ..... – QuikProBroNa