【问题标题】:D3 js collapsible chart increasing the arc curve radiusD3 js可折叠图表增加圆弧曲线半径
【发布时间】:2016-09-14 13:47:36
【问题描述】:

我是 D3js 的新手。我在可折叠树中显示 json。树显示正常,但连接节点的线大多是直的。如何控制连接节点的圆弧半径?请让我知道如何在 d3js 中执行此操作。

d3上需要绘制的json数据

  var treeData = JSON.parse('{"name":"pradeep","age":40,
      "children": [{
          "name": "naveen",
          "description": 20,
          "children": [{
              "name": "interest",
              "description": "displays the hobbies list",
              "hobby": "S",
              "hobby_name": "singinh"
          }, {
              "name": "profession",
              "description": "describes the profession",
              "profession": "blogger",
              "salary": 20000,
              "children": [{
                  "name": "cars",
                  "description": "car collections",
                  "children": [{
                      "name": "car-collections",
                      "description": "collections of cars",
                      "car_name": "audi",
                      "car_number": "8080"
                  }]
              }]
          }]
      }]
  }');

附加在工作插件链接中 - Plunker

【问题讨论】:

  • “大部分是直的”是什么意思?你想增加“兴趣”和“专业”之间的垂直分离,是这个问题吗?
  • @GerardoFurtado 是的。哪个参数负责这个属性。

标签: javascript jquery json d3.js


【解决方案1】:

垂直分隔是由代码中的一个幻数设置的,甚至还有注释:

var newHeight = d3.max(levelWidth) * 25; // 25 pixels per line

您可以调整此值或为其创建动态规则。

这是您使用 200 的 plunker:http://plnkr.co/edit/lmy7R5S6fH3kF69VT9zS?p=preview

【讨论】:

  • 这看起来不错。如何减少节点之间的长度?
  • 请不要在 cmets 中提问。在 * 中,我们处理特定的代码问题,每个问题一个问题。
  • 已经发布了减少节点之间长度的问题。请找到相同的链接-*.com/questions/39508522/…