Graphviz中的自动多行标签?

Ror*_*ory 23 graphviz

我正在使用Graphviz绘制一些图表.我在节点上使用标签,我可以"\n"强制它将标签分成2行.有没有办法让Graphviz(或dot我正在使用)自动看到它应该拆分一些节点标签,并为它自己做出最佳的自动选择?

Iva*_*kou 13

是的,类似HTML的标签(<...>)支持
标签,使用它可以打破线条.例如

"A" -> "B"
[label = <1. <br/>
 2. <br/>
 3. <br/>
 4. <br/>
 .... <br/> 
> color="blue" style="dashed"];
Run Code Online (Sandbox Code Playgroud)

这些也可以在将Graphviz嵌入LaTeX时使用,而\n不是.

  • 它没有回答这个问题,但提供了一个出色的解决方案,所以我给这个解决方案+1 (4认同)

Vin*_*nto 10

我也搜索过这个,但我不认为它在当前版本中是可能的.当前的"解决方案"是编写代码,根据节点之间的最小距离(nodesep属性,如果我没有记错的话),每隔几个字符自动添加"\n" .

  • 您也可以使用类似HTML的标签(引用`<...>`而不是`"..."`),它们不会自动换行,但可以更好地控制布局而不是\n.也许这与估计系统图形库中渲染的渲染字符串的长度相结合,可以很好地猜测放置中断的位置? (3认同)