D3 を使用して散布図を描画しています。ユーザーが各円の上にマウスを置いたときにツールチップを表示したいと思います。
私の問題は、ツールチップを追加できることですが、それらはマウスイベントd3.event.pageX
とを使用しd3.event.pageY
て配置されるため、各円に一貫して配置されません。
代わりに、一部は円のわずかに左側に、一部は右側に配置されます。これは、ユーザーのマウスが円にどのように入るかによって異なります。
これは私のコードです:
circles
.on("mouseover", function(d) {
tooltip.html(d)
.style("left", (d3.event.pageX) + "px")
.style("top", (d3.event.pageY - 28) + "px");
})
.on("mouseout", function(d) {
tooltip.transition().duration(500).style("opacity", 0);
});
そして、問題を示す JSFiddle です: http://jsfiddle.net/WLYUY/5/
マウスの位置ではなく、円自体の中心をツールチップの向きの位置として使用できる方法はありますか?