我正在使用D3创建一些数据的边缘分层模型。将D3 SVG旋转到特定角度
我希望能够做的就是点击一个边缘节点上,并让它排队与红线。
我到目前为止已经试过正试图计算出(X,Y)之间的角度差的中间位置,和(X,Y)的边缘节点的位置。这并没有给我正确的结果。
我认为正确的方法来获得节点的角度(相对于中间)。虽然我遇到了很多麻烦,因为我无法找到哪些属性存储此信息。边缘层次结构基于关闭此之一:与下面的代码段产生
http://bl.ocks.org/mbostock/7607999
文本:
node = node
.data(nodes.filter(function(n) { return !n.children; }))
.enter().append("text")
.attr("class", "node")
.attr("dy", ".31em")
.attr("transform", function(d) { return "rotate(" + (d.x - 90) + ")translate(" + (d.y + 8) + ",0)" + (d.x < 180 ? "" : "rotate(180)"); })
.style("text-anchor", function(d) { return d.x < 180 ? "start" : "end"; })
.text(function(d) { return d.key; })
.on("mouseover", mouseovered)
.on("mouseout", mouseouted);
任何信息将是大大有益的。感谢