作为起点,我使用此代码使用 D3 v4 创建有向图。
我想在每个圆圈上附加一个文本。我最初的想法是为数据中的每个节点创建一个节点元素,并向它们添加一个圆圈和文本元素(将来可能还会添加更多内容)。
然而,即使我更改刻度函数来更新它们的位置,圆圈和文本似乎根本没有渲染,如下所示:
circle
.attr("cx", function(d) { return d.x; })
.attr("cy", function(d) { return d.y; });
Run Code Online (Sandbox Code Playgroud)
我的实现可以在这个 jsfiddle和下面找到:
// Create somewhere to put the force directed graph
var svg = d3.select("svg"),
width = +svg.attr("width"),
height = +svg.attr("height");
var radius = 20;
// DATA
var nodes_data = [
{"id": "Lillian", "sex": "F"},
{"id": "Gordon", "sex": "M"},
{"id": "Sylvester", "sex": "M"},
{"id": "Mary", "sex": "F"},
{"id": "Helen", "sex": "F"},
{"id": "Jamie", "sex": "M"},
{"id": "Jessie", "sex": …Run Code Online (Sandbox Code Playgroud)