我正在使用带有dagre布局的cytoscape生成我的图形,并且我想包括额外的边缘(在下面用红色表示)以有效地“注释”图形。但是,这不符合我的期望,因为dagre布局在生成图形时会考虑所有边缘。
我知道我可以使用“预设”布局来实现此功能,但是使用dagre布局有明显的好处,包括通过expand-collapse扩展程序提供适当的expand-collapse功能。
我还尝试在dagre布局中使用“ edgeWeight”选项,但没有任何效果。有人有什么建议吗?谢谢!
答案 0 :(得分:0)
我通过在渲染布局之前过滤掉边缘来解决了这个问题:
var processedElements = this.cy
.elements()
// Filter out edges we don't want contributing to the layout of
// of the graph
.filter(el => !el.hasClass("unbundled-bezier-1"))
var layout = processedElements.layout({
name: "dagre",
rankDir: "LR"
})
layout.run();