我有一个使用Voronoi Tessellation插件的项目,该插件具有一系列表示温度传感器位置的坐标-我正在考虑使用JSON来表示它们的位置和检测到的温度值。
当鼠标悬停在某个区域时,我需要显示我引用的传感器(点)的温度值(我鼠标悬停的区域)。
https://github.com/mbostock/d3/wiki/Voronoi-Geom
我已经反复阅读了这些文档,但仍然不知道是否可以检测鼠标悬停区域属于哪个特定点。
以前有人试过这个吗?有好的例子吗?
如果我理解你的问题,你想在用户鼠标进入voronoi分区时在顶点显示文本吗?
您可以通过处理每个路径的鼠标进入/离开事件来做到这一点:
path.enter().append("path")
.attr("class", function(d, i) {
return "q" + (i % 9) + "-9";
})
.attr("d", polygon)
.on("mouseenter", function(d,i){
if (!someTexts[i]) { // get some fake value
someTexts[i] = (Math.random()*100).toFixed(1);
}
// append text
currentText = svg.append("text")
.text(someTexts[i])
.attr("transform","translate(" + vertices[i] + ")")
.attr("text-anchor","middle")
.attr("alignment-baseline", "middle");
})
.on("mouseleave", function(d,i){
// remove text
currentText.remove();
});
此处为示例。