Javascript d3工具提示删除我的轴(并且不起作用)

Javascript d3工具提示删除我的轴(并且不起作用),javascript,tooltip,d3.js,mouseover,jsfiddle,Javascript,Tooltip,D3.js,Mouseover,Jsfiddle,我正在尝试将工具提示添加到我的D3图形中: 但是添加这些mouseevents会弄乱所有内容的渲染方式,我不知道为什么。这是一个有轴的线图 dots.enter() .append("circle") .attr("class", "dot") .attr("cx", open_line.x()) .attr("cy", open_line.y()) .attr("r",3.5) .on("mouseover", myMouseOverFunct

我正在尝试将工具提示添加到我的D3图形中:

但是添加这些mouseevents会弄乱所有内容的渲染方式,我不知道为什么。这是一个有轴的线图

dots.enter()
    .append("circle")
    .attr("class", "dot")
    .attr("cx", open_line.x())
    .attr("cy", open_line.y())
    .attr("r",3.5)
    .on("mouseover", myMouseOverFunction)
    .on("mouseout", myMouseOutFunction);
在第144行注释掉
.on
两个方法可以使一切呈现出我所期望的样子

对此有什么见解吗

工具提示基于此提琴


您缺少
myMouseOverFunction

简单地定义函数将正确地呈现图形(使用轴),允许您正确地定义鼠标悬停功能

var myMouseOverFunction = function() {}
您可以看到对JSFIDLE的更新响应: 这可以以不同的方式实现,但一个快速的改变是删除CSS中的.FILL定义,而是在创建点本身时填充该值。

几个问题:

鼠标:

mouse(container)函数给出了鼠标相对于容器(节点)的位置。您指定了
d3.mouse(this)
,但这是指圆圈节点,而您希望指svg容器:
d3.select(“svg”).node()

信息箱:

infobox div没有在任何地方定义,因此没有显示任何内容


查看更新的小提琴:

是的,你是对的!不知道我怎么没看到。下一个谜团是它不起作用。看看我上面的编辑。。它包含一个指向一个新的JSFIDLE的链接,该JSFIDLE应该可以按预期工作。很好地指出,在我的生产服务器中,我仍然无法显示工具提示。是否
var circle=d3.选择(此项)也需要选择其他内容,而不是