2013-05-03 24 views
6

w przypadku, gdy użyję następującego kodu Graphviz, zostanie utworzony prosty wykres , który pokazuje etykietę po prawej stronie.Graphviz: etykieta po lewej stronie

digraph lable_on_the_right_side { 

    /* define nodes */ 

    node [color=lightblue2, style=filled, fontname=Arial]; 

    a [label="S1"]; 
    b [label="S2"]; 


    /* define edges */ 

    a -> b [label="Label on the right side"] 

} 

Rendered Dot Code as Image

Czy to możliwe, aby pozwolić na etykiecie pojawi się po lewej stronie, a nie? Jeśli tak, jaki kod powinien wyglądać?

+1

Wydaje mi się, że zmiana pozycji etykiety nie jest dobrym pomysłem. Większość rozwiązań psuje się natychmiast po zmianie układu. Zrobiłbym to, co zrobiłem i żyłem z tym zawsze po prawej. – Jondlm

Odpowiedz

7

Nie ma wiele sposobów, aby zmienić położenie tekstu etykiety krawędzi - można spróbować dodać jakieś dodatkowe puste przestrzenie do oznaczania ... czasami także podwójne krawędzie mieć wpływ na o jeden etykieta po prawej stronie, a druga po lewej.

Wciąż hacky, ale przynajmniej powtarzalne, można użyć headlabel (lub taillabel), a następnie użyć labelangle wraz z labeldistance, aby umieścić etykietę, o ile chcesz:

a -> b [ 
     headlabel="Label on the left side" 
     labeldistance=7.5 
     labelangle=75 
     ] 

enter image description here

Przy odrobinie prób i błędów można umieścić etykietę w razie potrzeby.

Powiązane problemy