1

我正在使用 dagre-d3 在 Javascript 应用程序中显示有向图,它的默认节点形状是矩形。我更喜欢省略号,但如果有更改默认值的编程方式对我来说一点也不明显(例如,我宁愿不在 render.js 中修改 NODE_DEFAULT_ATTRS)。有什么建议么?感谢您的关注。

4

2 回答 2

2

我做了一些实验,想出了一个看起来不太笨拙的方法。基本上,在将图形交给 dagreD3.render 之前,我遍历了图形的节点并设置了它们的形状。

var g = graphlibDot.read(treeData);
g.nodes().forEach(function(v) {
    var node = g.node(v);
    node.shape = "ellipse";
});
var render = new dagreD3.render();
var svg = document.querySelector('#graphContainer');
render(d3.select("svg g"), g);
于 2016-04-08T20:09:15.793 回答
1

您可以在创建节点时设置形状:

g.setNode(id, { shape: 'ellipse' });
于 2018-07-24T22:04:42.153 回答