gpt4 book ai didi

d3.js - 如何在 d3 力布局中将节点更改为矩形而不是圆形?

转载 作者:行者123 更新时间:2023-12-04 16:18:48 25 4
gpt4 key购买 nike

如何在以下 d3 forced directed graph 中将节点更改为矩形而不是圆形?

最佳答案

你必须附加一个 rect SVG 元素而不是 circle .

因此,在脚本中,它显示了以下内容:

var node = svg.selectAll(".node")
.data(graph.nodes)
.enter().append("circle")
.attr("class", "node")
.attr("r", 5)
.style("fill", function(d) { return color(d.group); })
.call(force.drag);

你应该把它改成这样:
var node = svg.selectAll(".node")
.data(graph.nodes)
.enter().append("rect")
.attr("class", "node")
.attr("width", 40)
.attr("height", 20)
.style("fill", function(d) { return color(d.group); })
.call(force.drag);

而且,它显示的地方:
node.attr("cx", function(d) { return d.x; })
.attr("cy", function(d) { return d.y; });

将其更改为:
node.attr("x", function(d) { return d.x; })
.attr("y", function(d) { return d.y; });

关于d3.js - 如何在 d3 力布局中将节点更改为矩形而不是圆形?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17853985/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com