9

我正在查看这个使用集群布局将 X 和 Y 坐标分配给树状图上的节点的示例。如何告诉集群垂直布局,自上而下,而不是默认的从左到右?

4

1 回答 1

12

对于您链接的示例,只需翻转 X 和 Y 坐标的使用。这可以通过改变来完成

var diagonal = d3.svg.diagonal()
  .projection(function(d) { return [d.y, d.x]; });

var node = vis.selectAll("g.node")
  .data(nodes)
 .enter().append("g")
   .attr("class", "node")
   .attr("transform", function(d) { return "translate(" + d.y + "," + d.x + ")"; })

var diagonal = d3.svg.diagonal()
  // Flip the values here.
  .projection(function(d) { return [d.x, d.y]; });

var node = vis.selectAll("g.node")
   .data(nodes)
 .enter().append("g")
  .attr("class", "node")
  // Flip the values here.
  .attr("transform", function(d) { return "translate(" + d.x + "," + d.y + ")"; })

这是一个JSFiddle,显示了上述操作中的变化。

于 2012-07-20T13:49:33.390 回答