【问题标题】:Show tooltip when mouse is near a line in D3当鼠标靠近 D3 中的一条线时显示工具提示
【发布时间】:2017-11-09 14:29:20
【问题描述】:

所以我在 D3js 中有一个折线图。我在这些点上添加了 svg circle 。如果用户将鼠标悬停在该圆圈上,他们会看到一个工具提示。

https://jsfiddle.net/jhynag08/38/

但我希望他们在靠近圆圈时看到工具提示(可能在 5-10 像素范围内)。我知道我可以添加一个背景矩形(全宽和全高)并做这样的事情 -> https://jsfiddle.net/53aLmt7r/1/

svg.append("rect")
.attr("class", "overlay")
.attr("width", width)
.attr("height", height)
.on("mouseover", function() {
  focus.style("display", null);
})
.on("mouseout", function() {
  focus.style("display", "none");
})
.on("mousemove", mousemove);

但我在折线图中也有条形图。因此,如果我尝试执行此方法,当我将鼠标悬停在条形图上时,我将无法再获得条形图的工具提示。

有没有办法在悬停工作的折线图周围设置某种“活动区域”?

【问题讨论】:

    标签: javascript html css d3.js charts


    【解决方案1】:

    一个简单的解决方案是给圆圈一个stroke 样式并使其透明,如下所示:

       .style("stroke","transparent")
       .style("stroke-width","15px")
    

    这是更新后的fiddle

    【讨论】:

    • 美丽。谢谢
    猜你喜欢
    • 2016-01-08
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-19
    相关资源
    最近更新 更多