Comments 17
Удобно и наглядно получаются графики возможных переходов состояний у объекта

Я в своем проекте сппр так же использую Graphviz. Это позвояет визуализировать логическую структуру. Так же следует упомянуть о других возможностях. Это использование svg формата. Что позволяет визуализировть в браузерах (более удобно) и возможностях гипер-ссылок. Что позволяет сделать отображение еще и интерактивным.
Так же есть возможность в блоке данных выводить дополнительную информацию. Это могут быть и комментарии. Визуально выглядит как два блока текста разделенных чертой горизонтальной или вертикальной. Правда не проверял наифигурах отличных по форме от прямоугольных.
У plantuml, по-моему, язык попроще.
Такой текст:
@startuml
start
if (Graphviz installed?) then (yes)
:process all\ndiagrams;
else (no)
:process only
__sequence__ and __activity__ diagrams;
endif
stop
@enduml
Отрисует такую диаграмму:

Так же есть плагины для использования в IDE от Jetbrains.





Как минимум есть svg, ps, eps и pdf. Я обычно для самодостаточных схем использую pdf.
Для явного задания размера и dpi есть -Gsize и -Gdpi.
Обратите внимание, что для точного задания размера нужно добавить восклицательный знак в конце:
-Gsize=<width>,<height>!
.Как сделать угловые грани в Dot? Как на печатных платах 45 градусов изломы.
Вам удавалось разобраться как в graphviz поворачивать прямоугольники на произвольный угол не искажая их формы?
Аттрибут orientation не подходит?

digraph {
layout = neato;
node[shape = note];
0[orientation = 0];
30[orientation = 30];
60[orientation = 60];
90[orientation = 90];
120[orientation = 120];
150[orientation = 150];
180[orientation = 180];
210[orientation = 210];
240[orientation = 240];
270[orientation = 270];
300[orientation = 300];
330[orientation = 330];
360[orientation = 360];
0 -> 30 -> 60 -> 90 -> 120 -> 150 -> 180 -> 210 -> 240 -> 270 -> 300 -> 330 -> 360 -> 0;
}
Использование Graphviz для построения блок-схем