【发布时间】:2019-10-05 00:13:40
【问题描述】:
我也在尝试看看是否可以使用 Dot 编程语言将其应用到我的旧项目中。
任务很简单:轻松创建高质量图表。
不幸的是,虽然实现图表的细节相当容易,但我最终不得不花费大量时间来调整布局。 此外,我不清楚我的指令顺序如何影响我的图表,但实际上看起来将我的代码的最后一条指令放在开头会产生完全不同的输出!
代码如下:
digraph {
TOP [shape=doublecircle]
TOP->TOP->{rank=same a->b->c->b->a}
a:s->c:s
a:nw->a:sw
c:ne->c:se
b:s->b:s
}
所以。首先,我终于通过排名掌握了“让节点在同一水平/垂直线上”...
我还解决了边缘进行愚蠢互连的问题(图下方的所有可用空间用于连接,并且边缘以一种尴尬的方式在整个图上蜿蜒曲折并重叠所有内容?)使用方向指示器“ :e" 之类的(我相信它们被称为路线......),但看起来 graphviz 并没有以聪明的方式使用它们,因为结果对我来说看起来很有趣。
这是输出,我如何获得它以避免边缘重叠并为未来的(long)标签留出足够的空间?
(用dot -Tpng test.dot -o test.png制作)
(另外,我还需要在底部添加一个 c->a 边缘,但是添加一个“正常”方式会破坏一切)
【问题讨论】:
-
如果您想要高质量(“准备好发布”),您可能想要使用 LaTeX / tikz。 graphviz 只给你有限的控制权。
标签: graph graph-theory graphviz dot edges