Graphviz 命令行繪圖程式 繪圖軟體 關係圖 指令

Graphviz-用指令來畫關係圖

2013-06-03
Graphviz(http://www.graphviz.org/)是一種命令行繪圖程式,能夠直接陳述圖片上的節點、邊、方向等性質,然後自動描繪出的整張圖片。本文將實際使用Graphviz並同時講解箇中的原理。
Graphviz是一個運用廣泛的命令行繪圖軟體,不過說是繪圖軟體,它能繪的圖並不是一般人想像中的漫畫或logo,而是數學意義上的「graph」,比較通俗的說法就是「關係圖」。舉例來說,像是圖1這種圖。


▲圖1 Unix家族。Graphviz官網的示範圖片之一。

用手畫會很痛苦,而Graphviz可以替使用者搞定。Graphviz提供一套語言,能夠直接陳述圖片上的節點、邊、方向等性質。之後,由它來為你產生整張圖片。

Graphviz能畫的圖片有許多種,可以在官方網站(http://www.graphviz.org/)上面找到更多的範例。


安裝Graphviz

Graphviz支援Windows、Mac OS X、FreeBSD、Solaris、Linux等多種作業系統。你若是Linux使用者,基於這款軟體的名氣,你的套件管理器中幾乎一定會有,從套件庫中安裝吧!倘若真找不到,請到官網下載頁面(http://www.graphviz.org/Download.php),試試原始碼:

若是Windows用戶,請前往這裡下載安裝檔: http://www.graphviz.org/Download_windows.php

Mac OS X的使用者請往這邊走: http://www.graphviz.org/Download_macos.php

Graphviz的使用


首先,看看上面的部分。

Graphviz的有好幾種,每種使用方法都完全相同,差別只在於渲染出來的圖片效果不一樣。man中的簡介是這樣寫的:

  • dot:渲染的圖具有明確方向性
  • neato:渲染的圖缺乏方向性
  • twopi:渲染的圖採用放射性佈局
  • circo:渲染的圖採用環型佈局
  • fdp:渲染的圖缺乏方向性
  • sfdp:渲染大型的圖,圖片缺乏方向性。
可以透過man 取得進一步說明。但還是親自使用過比較容易理解。在本文中,凡沒有說明的圖,預設都是以dot渲染出來的。

在Graphviz中,若不指定-T參數,Graphviz並不會自動猜測你想要產生什麼格式,只會以預設格式渲染。

可選格式相當多,包括(但不限於)jpg、png、svg等,全部列表可見官網說明頁(http://www.graphviz.org/doc/Dot.ref)的最下方。

-o可以指定儲存檔案的檔名。如果你不用-o選項指定輸出檔名,Graphviz則會將結果輸出到標準輸出上。

除非用法很特殊,否則這兩個參數,每次都要記得下達才行。

dot語言說明

指揮Graphviz繪圖時,所使用的語言叫作「dot」。下面就來介紹如何使用它。


追蹤我們Featrue us

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!