graphviz dot 안내

4783 단어 graphvizdot
dot 언어 소개
1. 소개
Grapviz 의 장점 은 데이터 구조의 절차 나 연결 방식 에 만 관심 을 가지 고 구 조 를 고려 하지 않 아 도 된다 는 것 이다.이것 은 전형 적 인 * nix 프로그램의 작업 방식 입 니 다. 예 를 들 어 latex, mate 등 은 모두 이런 방식 으로 일 합 니 다.마이크로소프트 가 제창 하 는 WYSIWYG (What you see is what you get) 가 아 닌 WYTIWYG (What you think is what you get) 에 도달 할 수 있다.dot 는 graphviz 의 기본 레이아웃 방식 입 니 다.dot 는 매우 재 미 있 는 언어 로 문자 설명 을 통 해 그림 을 쉽게 그 릴 수 있 습 니 다.모든 도 구 는 자신의 적용 장면 이 있 습 니 다. 그러면 dot 언어의 적용 장면 은 무엇 입 니까?복잡 하지 않 은 흐름 도와 구조 도 디자인 이 라 고 생각 합 니 다. 왜 그렇게 말 합 니까?프레임 구 조 를 그 릴 때 우 리 는 디자인 구 조 를 하 는 과정 에서 조판 문 제 를 항상 고려 하지 않 고 구조의 본질 을 고려 하 기 를 바란다.디자인 이 완 성 된 후에 우 리 는 우리 의 사고 에 따라 자동 으로 그림 을 만 들 수 있 기 를 바란다.이렇게 하면 우 리 는 일 에 전념 하 게 된다.
예시
그러면 dot 는 정말 그렇게 신기 하지 않 습 니까? 우리 가 생각 하 는 것 을 그 릴 수 있 습 니까?dot 의 문법 digraph G {main - > parse - > execute; main - > init; main - > cleanup; execute - > make string; execute - > printf; init - > make string; main - > printf; execute - > compare;} g1. dot 로 저장 하여 그림 을 만 듭 니 다: dot - tpng g1. dot > g1. png - T 출력 그림 형식 을 선택 하 십시오.오른쪽 그림 과 같이 그림 을 만 듭 니 다.
2. 그림 그리 기 관련 속성: 2.1 node 노드 설명 node (노드) 는 보통 ellipse 모양, 너비. 75, 높이. 5 입 니 다.  ,상기 노드 의 모양 이 매우 많 지만 보기 도 눈 이 침침 할 것 입 니 다. 그 당시 에 자주 사용 되 는 것 은 다음 과 같 습 니 다. box circle record plaintext 입 니 다.
faq: node 모양 정보 node 1 [shape = box] 를 추가 하 는 방법; 노드 의 모양 을 box 로 설정 합 니 다.node 1 [label = "점 1"];노드 의 이름 을 "점 1" 로 설정 합 니 다.
node 의 디 스 플레이 이름: node 노드 는 label 로 node 노드 의 이름 을 설명 할 수 있 습 니 다.fifod1[label=“fifod”];
2.2 dir 관계 dir 관 계 는 dot 언어 에서 비교적 중요 한 부분 이다. 예 를 들 어 T - > H;“forward”  :
“back” :      
”both“:         
“none”:        
dot 에서 dir 속성 을 정의 합 니 다: T - > H [dir = back];
2.3 연결 점 의 방향
우 리 는 "n", "ne", "e", "se", "sw", "w", "nw" 를 사용 하여 각각 어느 방향 으로 이 노드 (도형) 를 연결 하 는 지 표시 할 수 있 습 니 다. - "north, northerast......." 다음 과 같은 dot 코드:digraph G{ //b->c[tailport = se]; b->c:se; }
화살 표 는 c 의 동남쪽 방향 을 가리 키 고 그림 과 같다.
다른 방향 에 관심 이 있 으 면 나머지 7 개 방향 을 모두 시도 해 보 세 요.
2.4  label 속성 label 은 연결선 의 속성 을 표시 할 수도 있 고 node 의 이름 을 지정 할 수도 있 습 니 다.
3. 서브 맵, 점선 의 위치: 기본 그림 의 선 은 모두 위 에서 아래로 바 꿀 수 있 습 니 다. 우 리 는 이 를 왼쪽 에서 오른쪽으로 바 꿀 수 있 습 니 다. 파일 의 맨 위 에 rankdir = LR 을 넣 으 면 왼쪽 에서 오른쪽으로, 기본 값 은 TB (top - > bottom) 이 고 RL, BT 일 수도 있 습 니 다.그림 에서 시간표 와 같은 것 을 볼 때 우 리 는 한 줄 (열) 에 배열 할 수 있 는 점 이 필요 합 니 다. 이 때 는 rank 을 사용 하고 괄호 로 rank = same 을 사용 한 다음 에 나란히 해 야 할 점 을 한 번 입력 해 야 합 니 다.digraph cs_version { rankdir=LR; { node[shape = plaintext]; 2000 -> 2001 -> 2002 -> 2003 ; } { node[shape = box, style = filled]; 1.0 -> 1.3 -> 1.5 -> 1.6 ; 1.0 -> 1.1 } {rank=same; 2000 ; 1.0 } {rank=same; 2001 ; 1.1 ; 1.3 } {rank=same; 2002 ; 1.5 } {rank=same; 2003 ; 1.6 }
}
하위 그림: 하위 그림 을 그 리 는 것 이 subgraph cluster \ # 입 니 다. cluster 접두사 가 있어 야 합 니 다.digraph G { subgraph cluster0 { node [style=filled,color=white]; style=filled; color=lightgrey; a0 -> a1 -> a2 -> a3; label = "process #1" ; } subgraph cluster1 { node [style=filled]; b0 -> b1 -> b2 -> b3; label = "process #2" ; color=blue } start -> a0; start -> b0; a1 -> b3; b2 -> a3; a3 -> a0; a3 -> end; b3 -> end; start [shape=Mdiamond]; end [shape=Msquare]; }
하위 그림 의 경계 에 한 변 을 연결 하려 면 먼저 copound = true 를 입력 한 다음 lhead 와 ltail 로 연 결 된 하위 그림 을 설정 할 수 있 습 니 다.부록: 내용 참조 원본:
http://www.graphviz.org/pdf/dotguide.pdf
http://www.graphviz.org/doc/info/shapes.html
이 항목 은 관리자 가 리 눅 스 분류 디 렉 터 리 에 발표 한 것 입 니 다.고정 링크 를 즐겨 찾기 폴 더 에 추가 합 니 다.

좋은 웹페이지 즐겨찾기