我有一个print_dot()
在标准输出上输出点的函数。这样我可以做到:
$ ./myprogram < input | dot -T x11
当我尝试打印一张图表时效果很好。
现在,当我打印几张图表时,什么也没有出现。点窗口是空白的,X11 和点占用所有 CPU。stderr 上没有打印任何内容。
$ echo -e "graph { a -- b }" | dot -T x11 # work
$ echo -e "graph { a -- b } \n graph { c --d }" | dot -T x11 # doesn't work
# it seems to be interpreted nonetheless
$ echo -e "graph { a -- b } \n graph { c -- d } " | dot -T xdot
graph {
...
}
graph {
...
}
此外,当我删除\n
2 个图之间的时,只解释第一个图(多么好的功能......):
$ echo -e "graph { a -- b } graph { c -- d } " | dot -T xdot
graph {
...
}
再次将 xdot 输出连接到 dot 并不能解决问题。
那么,如何使用 graphviz 渲染多个图形呢?