У меня есть функция print_dot()
, которая выводит точку на стандартный вывод.
Таким образом, я могу сделать:
$ ./myprogram < input | dot -T x11
Это прекрасно работает, когда я пытаюсь напечатать один график.
Теперь, когда я печатаю несколько графиков, ничего не появляется. Окно точек пустое, X11 и точка занимают весь процессор. На 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 в точку не решает проблему.
Итак, как можно визуализировать несколько графов с помощью graphviz?