Javascript D3标签在可缩放散点图中发布
这是我得到的答案。拖动或放大时,标签不会移动 错误: 未捕获的TypeError:无法读取未定义的属性“x” 它对应于最后一行Javascript D3标签在可缩放散点图中发布,javascript,d3.js,Javascript,D3.js,这是我得到的答案。拖动或放大时,标签不会移动 错误: 未捕获的TypeError:无法读取未定义的属性“x” 它对应于最后一行 function zoom() { svg.select(".x.axis").call(xAxis); svg.select(".y.axis").call(yAxis); svg.selectAll(".dot") .attr("transform", transform); svg.selectAll("te
function zoom() {
svg.select(".x.axis").call(xAxis);
svg.select(".y.axis").call(yAxis);
svg.selectAll(".dot")
.attr("transform", transform);
svg.selectAll("text")
.attr("transform", transform);
}
function transform(d) {
return "translate(" + x(d.x) + "," + y(d.y) + ")";
}
当你这么做的时候
svg.selectAll("text")
。。。您正在选择SVG中的所有文本元素,其中一些文本没有绑定数据
解决方案:给他们一个类(例如,.text
),然后按该类选择:
svg.selectAll(".text")
.attr("transform", transform);
这是你最新的小提琴: