graphviz 도트 형식의 비교적 간단한 (자동 생성 된) 그래프가 많이 있습니다. 이것들은 상태 머신을 통한 경로를 보여 주지만, 도트는 그래프가 상태 순서대로되기를 원할 때 두 개의 노드가 같은 순위에 있어야한다고 결정하는 약간 혼란스러운 버릇이 있습니다. 많은 설정 (:n
및 :s
및 아래에 나열된 weight
포함)을 시도했지만 점을 설득하여 제 3 상태를 위의 위의 네 번째 상태로 설득 할 수는 없습니다.점의 노드에서 어떻게 순위를 매기려고합니까?
많은 그래프에서이 문제가 있습니다. 두 개의 노드가 같은 순위에 있고 그 값을 무시할 수있는 것이 없다면 더 좋은 점을 결정하는 내부 점이있는 것 같습니다. 심지어 하나의 노드가 rank=sink
이어야한다고 지정하는 코드가 있었지만 점은 다른 노드를 그 아래에 배치하기로 결정했습니다.
노드가 다른 제약 조건보다 순서가 중요하다는 점을 지적 할 방법이 있습니까?
그래프를 생성하는 데 사용 된 코드는 다음과 같습니다
이digraph {
ERROR [label="Error"];
FirstSTATE [label="Initial State" URL="\ref FirstSTATE"];
FirstSTATE -> SecondSTATE;
SecondSTATE [label="Second State" URL="\ref SecondSTATE"];
SecondSTATE -> ThirdSTATE;
ThirdSTATE [label="Third State" URL="\ref ThirdSTATE"];
FourthSTATE [label="Fouth State?" shape="diamond"];
ThirdSTATE:s -> FourthSTATE:n [weight=50];
FourthSTATE -> FifthSTATE [label="Yes" ];
FourthSTATE -> ThirdSTATE [label="No"];
FifthSTATE [label="Fifth State" URL="\ref FifthSTATE"];
SixthSTATE [label="Sixth State?" shape="diamond"];
SixthSTATE -> ERROR [label="Yes" ];
SixthSTATE -> SeventhSTATE [label="No"];
FifthSTATE -> SixthSTATE;
SeventhSTATE [label="Seventh State" URL="\ref SeventhSTATE"];
SeventhSTATE -> EighthSTATE;
EighthSTATE [label="Eighth State" URL="\ref EighthSTATE"];
NinthSTATE [label="Ninth State?" shape="diamond"];
NinthSTATE -> TenthSTATE [label="Yes" ];
NinthSTATE -> EighthSTATE [label="No"];
EighthSTATE -> NinthSTATE;
TenthSTATE [label="Tenth State" URL="\ref TenthSTATE"];
EleventhSTATE [label="Eleventh State?" shape="diamond"];
EleventhSTATE -> ERROR [label="Yes" ];
EleventhSTATE -> TwelfthSTATE [label="No" ];
TenthSTATE -> EleventhSTATE;
TwelfthSTATE [label="Twelfth State" URL="\ref TwelfthSTATE"];
}
그래프는 현재 다음과 같습니다
환상적인 : 감사합니다! – DrAl