Ответ 1
Как вы узнали, графический интерфейс не позволяет выбирать горизонтальное размещение меток, поэтому все решения немного взломаны.
Попытка № 1: два решения, отправленные марапетом (здесь)
-
Трюк с меткой и лабораторным сопротивлением плохо адаптируется к различной длины текста ярлыка (вам придется пересчитывать новые расстояния/угла).
-
Сплайн = ложный трюк работает не так хорошо, когда число ребра между узлами > количество узлов (в итоге вы перекрывающиеся края).
Попытка # 2: xlabels и anchors для создания кривых краев
Это использует относительно новую функцию graphviz, xlabel (которая помещает метку ПОСЛЕ координат для узлов/ребер приняли решение). Функция ports используется для создания кривых краев. Наложение меток выполняется с помощью пробелов.
digraph {
forcelabels=true;
0:sw -> 1:nw [ dir=forward, xlabel=" (1, 0) "];
0 -> 1 [dir=none];
1:ne -> 0:se [ dir=backward, xlabel= " (0, -1) "];
}
Я считаю, что вам нужна версия graphviz > 2.29 для использования xlabel.