相关疑难解决方法(0)

使用NodeSize在节点之间进行D3树布局分离

现在我正在尝试分离我的矩形节点,因为它们重叠,如下图所示:

在此输入图像描述

我看了一眼,发现D3提供了nodeSize分离方法,但由于某种原因它没有用.

我发现这篇博客文章谈到了这个问题,但他说

size属性在节点中不存在,因此它将是您想要控制它们大小的任何属性.

但显然有一个nodeSize方法,所以我觉得我只是错误地使用该方法和/或博客文章已过时.我想将我的节点整形为矩形的大小并将它们均匀分开,这样它们就不会相互重叠.有谁知道如何正确使用这些方法?关于这些方法的文档没有得到很好的解释,并没有产生任何差别.我也找不到很多人们改变树的nodeSize或需要分离矩形对象的例子(有一些关于圆形对象的例子,但我觉得这太不一样了......)

这是相关的代码.我会尝试准备一个JSFiddle.

var margin = {top: 20, right: 120, bottom: 20, left: 120},
    height = 960 - margin.right - margin.left,
    width = 800 - margin.top - margin.bottom,
    rectW = 70;
    rectH = 30;
    //bbox = NaN,
    maxTextLength = 0;

var i = 0,
    duration = 750,
    root;


//paths from each node drawn initially here
//changed to d.x, d.y
var diagonal = d3.svg.diagonal()
    .projection(function(d) { return [d.x+rectW/2, d.y+rectH/2];
    //.projection(function(d) { return …
Run Code Online (Sandbox Code Playgroud)

javascript tree d3.js

36
推荐指数
2
解决办法
3万
查看次数

标签 统计

d3.js ×1

javascript ×1

tree ×1