2010-03-26 2 views
5

프로그래밍 언어로 다이어그램을 만드는 도구가 필요합니다. 아마도 lua와 비슷할 것입니다.프로그래밍 방식으로 다이어그램을 만드는 데 유용한 도구가 있습니까?

이를 위해 설계된 도구가 있습니까?

+0

난 당신이 라텍스에 꽤 다이어그램을 만들 수 있다고 생각 http://tex.stackexchange.com/questions/149602/drawing-flow-diagram-in-latex-using-tikz – lovelyVector

+0

간단한 다이어그램의 경우 라텍스를 사용할 수 있습니다. http://tex.stackexchange.com/questions/149602/drawing-flow-diagram-in-latex-using-tikz – lovelyVector

답변

3

예, Graphviz에 대해 .dot 개의 파일을 생성 할 수 있습니다. 이러한 파일은 텍스트 파일이므로 모든 언어에서 사용할 수 있습니다. 나는 Graphviz를 사용하여 C 코드에서 자동으로 이진 트리 다이어그램을 생성하는 것에 대해 얼마 전에 a post이라고 썼습니다.

+0

예,하지만 .dot 파일은 요소의 위치를 ​​이동할 수 없도록합니다. 권리? 박스, 화살표 등의 위치를 ​​더 제어하려고했습니다. – FelipeC

+0

@felipec : 그런 다음 SVG 생성 라이브러리 중 하나를 고려하십시오. –

1

약간의 복고풍이지만, 아마도 항상 Pic이 있습니다. 쉽게 출력 할 수있는 .eps로 출력합니다. 원하는 문자는 convert입니다.

입력은 거의 구식이지만 모든 텍스트이므로 텍스트 출력이있는 모든 언어 (심지어 루아)로 타겟팅 할 수 있습니다. 다음은 데이터 구조 다이어그램의 예제입니다.

.PS 
boxwid = .5; boxht = .25 
down 
Base: box "base" 
Used: box "used" 
Max: box "max" 

move to Base.e 
move right 

right 
Mfile: box dashed wid 3 ht 5 
move to Mfile.nw; move down .125 

Mtab: right; box "nexttab"; box "nextent" 
move to Mtab.sw; move down .25 

Tab: right; box "adr0"; box "mark"; box "sz" 
move to Tab.sw; move down .25 
Tab: right; box "adr1"; box "mark"; box "sz" 
move to Tab.sw; move down .25 
Tab: right; box "adr2"; box "mark"; box "sz" 
move to Tab.sw; move down .25 
Tab: right; box "adr3"; box "mark"; box "sz" 
move to Tab.sw; move down .25 
Tab: right; box "adr4"; box "mark"; box "sz" 
move to Tab.sw; move down .25 
Tab: right; box "adr5"; box "mark"; box "sz" 
move to Tab.sw; move down .25 
Tab: right; box "adr6"; box "mark"; box "sz" 
move to Tab.sw; move down .25 
Tab: right; box "adr7"; box "mark"; box "sz" 
move to Tab.sw; move down .25 
Tab: right; box "adr8"; box "mark"; box "sz" 
move to Tab.sw; move down .25 
Tab: right; box invis "..."; box invis "..."; box invis "..." 
move to Tab.sw; move down .25 
Tab: right; box "adrN"; box "mark"; box "sz" 

arrow from Base.e to Mfile.nw 
arrow from Used.e to Tab.sw down .125 
arrow from Max.e to Mfile.sw 

.PE 

Indexed-Memory Data Structure

관련 문제