最有可能的问题是您的 JSON 类没有“名称”。
对,这不是问题
您的代码的相关部分如下:
var node = svg.selectAll("path.node")
.data(nodes)
.enter().append("path").attr("class", "node")
.style("fill", function(d) { return fill(d.value); })
.style("stroke", function(d) { return d3.rgb(fill(d.value)).darker(); })
.call(force.drag);
// HERE should go node manipulation to add the text
force
.nodes(nodes)
.links(links)
.on("tick", tick)
.start();
function tick() {
//node.attr("transform", function(d) { return "translate(" + d.x + "," + d.y + ")"; );
node.attr("d", function(d) { return clip({"type":"F {"type":"Point","coordin...
link.attr("d", function(d) { return clip({"type":"Feature","geometry":{ ...
如果您想为节点添加标签,我已经在您的节点操作应该去的地方插入了一个注释行。您正在 tick 函数中执行此操作(嗯,我认为您正在尝试在那里执行此操作,代码不在小提琴中),并且该函数应该仅用于操作节点的 attr。创建文本并将其附加到节点的位置在函数之外。