xlabels для узлов перекрываются с краями в точке
Я пытаюсь использовать точку для рисования графика, и у меня есть следующая проблема
Метка для узла b
перекрывается с краем из a
в b
, Есть ли способ как-то переместить этот ярлык, чтобы избежать этого?
Это код, который я использую для создания изображения (используя dot
)
digraph A {
rankdir=LR;
center=true; margin=0.3;
nodesep=1.5; ranksep=0.5;
node [shape=point, height=".2", width=".2"];
a [xlabel="a"];
b [xlabel="b"];
c [xlabel="c"];
a -> b -> c;
a -> c;
}
Это случается довольно часто, и это раздражает (то же самое здесь, но с краями):
Я понимаю, что это связано с тем, что xlabel
Они ставятся после того, как все было разложено, но мне было интересно, можно ли хоть немного помочь - то есть сказать, где нужно разместить ярлык.
1 ответ
Вы не можете сделать это - вы хотите предоставить информацию о положении для xlabel, но graphviz в настоящее время (2016-01-25) не позволяет это. Для отслеживания этой ошибки в трекере ошибок Graphviz есть запрос на открытую функцию; это описано как:
это в основном запрос функции, позволяющий пользователю предоставлять информацию о местоположении для xlabels. Для xlabels, прикрепленных к узлам, координаты должны быть относительно положения узла. Аналогичная функция может применяться для меток головы и хвоста для краев. Я полагаю, что xlabels для ребер может быть основан на "центре" ребра.