была часть, которую я не мог понять!
ользуюd3.stack()
создать нормализованную диаграмму с накоплением.
Но у меня возникают проблемы с доступом к соответствующим значениям исходного набора данных для всплывающей подсказки.
serie.selectAll("rect")
.data(function(d) { return d; })
.enter().append("rect")
...
.on("mousemove", function(d){
let coords = d3.mouse(svg.node());
tooltip.style("left", coords[0] + "px");
tooltip.style("top", coords[1] - 70 + "px");
tooltip.style("display", "inline-block");
tooltip.html("HOW TO ACCESS DATA HERE?");
});
d
этоArray[2]
в этот момент со значениями, определяющими базовую линию / верхнюю линию,d.data
является полным исходным объектом данных, но отсутствует информация о том, над каким стеком серии я в данный момент зависаю.
В идеале я хочу, чтобы всплывающая подсказка отображалась для набора данных, например{name:"item1", foo:10, bar:20}
value: 10
percentage: 33%
когда завис надfoo
Прямоугольник.
Все примеры, которые я нашел, относятся к D3v3, где вы можете просто использоватьd.y
чтобы получить доступ к соответствующему значению, но это больше не работает с D3v4.