如何避免标签重叠?

3

我正在尝试创建一个包含具有较长标签的节点的网络,但这会导致标签重叠,使得很难清楚地阅读它们。

如何分离这些标签?

如何对一个复合元素进行对齐?

2个回答

3
您可以使用 avoidOverlap: truenodeDimensionsIncludeLabels: true
var layout = cy.elements().layout({
    name: 'dagre',
    avoidOverlap: true,
    nodeDimensionsIncludeLabels: true
});
layout.run();

我在这里使用cytoscape-dagre,但根据文档,使用cytoscape.js自带的布局也是可能的,例如网格布局。

有趣的是,这些选项在cytoscape-dagre的文档中没有列出,但它们确实可用。

2
  • 在您的样式表中调整标签的相对大小
  • 调整布局,使节点之间的距离更远
  • 使用短标签; 您可以在其他地方显示长文本,例如工具提示中

非常感谢你,maxkfranz!我还有一个问题没有弄明白。是否可以对齐节点?或者我可以在节点内部放置一个表格来使它们对齐吗? - shu
您可以手动定位节点,也可以通过布局来定位它们。这取决于您。 - maxkfranz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接