我有一个用d3制作的响应式折线图,但是在调整用于悬停状态的voronoi大小时遇到了问题。我怀疑我没有正确地引用它...
我在这里添加了voronoi:
var voronoiGroup = svg.append("g")
.attr("class", "voronoi");
voronoiGroup.selectAll("line")
.data(voronoi(d3.nest()
.key(function(d) { return xScale(d.date) + "," + yScale(d.value); })
.rollup(function(v) { return v[0]; })
.entries(d3.merge(ranksFiltered.map(function(d) { return d.values;})))
.map(function(d) { return d.values; })))
.enter()
.append("path")
.attr("id", "cells")
.attr("d", function(d) { return "M" + d.join("L") + "Z"; })
.datum(function(d) { return d.point; });
在我的调整大小函数中,我试图重新绘制它:
svg.select("#cells path")
.attr("d", function(d) { return "M" + d.join("L") + "Z"; })
.datum(function(d) { return d.point; });;
如果有人想尝试一下,可以在这里找到一个示例:
http://plnkr.co/edit/Jj4QpF1bqK901WalNMmR
感谢您的时间!
mouseover
和mouseout
函数在resize
函数中超出了作用域范围。我将它们的作用域提高到其父级别,并且一切都应该没问题了。更新后的代码在这里。抱歉造成麻烦。 - Mark