Как разместить метки ребра на ребре в графвизе - PullRequest
33 голосов
/ 28 февраля 2010

По умолчанию в Graphviz метки кромок располагаются справа от кромки. Я ищу способ разместить надписи над краем, по центру края. (Это все еще будет читабельным, потому что я меняю цвет края).

Есть идеи?

Ответы [ 2 ]

17 голосов
/ 05 ноября 2010

Если бы это была метка головы или хвостовая метка, вы можете попробовать установить значение labeldistance в ноль, чтобы метка была нарисована на краю, но, как я понимаю, вы имеете в виду метку края (та, что в середине края ). В документации совершенно четко говорится, что labeldistance влияет только на метки меток фар и хвостовых меток, но вы можете попытать счастья.

Еще одна вещь, которую вы можете попробовать, - создать прозрачный промежуточный узел с меткой на нем. Это может выглядеть так, как вы хотите ... Но если вы сильно полагаетесь на алгоритм размещения узлов, может быть неприемлемо создавать эти «искусственные» узлы. В этом случае я призываю вас присоединиться к разработчикам Graphviz и добавить нужную вам функцию;) Серьезно, это очень приятно.

Если вы найдете другое решение, пожалуйста, опубликуйте его. Я столкнусь с подобной проблемой в ближайшем будущем.

5 голосов
/ 11 мая 2016

Попробуйте добавить несколько пробелов после метки. Таким образом, вы избегаете пересечения со своей стрелкой, так как метки graphviz выровнены по правому краю. Это не элегантное решение, и я хотел бы увидеть правильное выравнивание этикетки, но это может решить вашу проблему.

...