命令列

DOT 彩現程式與工具。

所有 Graphviz 程式都有類似的調用方式

cmd [ flags ] [ input files ]

例如

$ dot -Tsvg input.dot

如果沒有提供輸入檔案,程式會從 stdin 讀取。例如

$ echo 'digraph { a -> b }' | dot -Tsvg > output.svg

產生

旗標

-Gname[=value]

設定圖形屬性,預設 value = true

例如,

$ echo 'digraph { a -> b }' | dot -Tsvg -Gfontcolor=red -Glabel="My favorite letters"

覆寫圖形的預設 fontcolorlabel 屬性,產生紅色的圖例

-Nname[=value]

設定預設節點屬性,預設 value = true

例如,

$ echo 'digraph { a -> b }' | dot -Tsvg -Nfontcolor=red -Nshape=rect

覆寫預設節點的 fontcolorshape 屬性,產生帶有紅色文字的矩形節點

-Ename[=value]

設定預設邊緣屬性,預設 value = true

例如,

$ echo 'digraph { a -> b }' | dot -Tsvg -Ecolor=red -Earrowhead=diamond

覆寫預設邊緣的 colorarrowhead 屬性,產生帶有菱形箭頭的紅色邊緣

-Klayout

指定要使用的預設版面配置引擎,覆寫命令名稱中的預設值。例如,執行 dot -Kneato 等同於執行 neato

-Tformat[:renderer[:formatter]]

將輸出語言設定為支援的格式之一。預設情況下,會產生帶屬性的 dot

根據 Graphviz 的建置方式,可能有多個彩現器用於產生特定的輸出格式,以及多個格式器用於建立最終輸出。例如,典型的安裝可以使用 Cairo 或 GD 函式庫產生PNG 輸出。所需的彩現引擎可以在冒號後指定。如果有多個格式引擎可用,則可以在彩現引擎之後以類似的方式指定所需的引擎。因此,-Tpng:cairo 指定由 Cairo 產生的 PNG 輸出(使用 Cairo 的預設格式器),而 -Tpng:cairo:gd 指定由 Cairo 產生並使用 GD 函式庫格式化的 PNG 輸出。

如果沒有指定彩現器,或是有彩現器但沒有格式器,則會調用預設的彩現器。旗標 -Tformat: 會產生指定 format 可用的所有彩現器清單,清單中第一個具有與 format 相符字首的彩現器為預設值。使用下面描述的 -v 旗標將會列印實際使用的格式、彩現器和格式器。

-V

發出版本資訊並退出。例如

$ dot -V
dot - graphviz version 2.47.1 (20210417.1919)

-llibrary

使用者提供的、與裝置相關的函式庫文字。可以提供多個旗標。這些字串會在輸出開始時傳遞給程式碼產生器。

對於 PostScript 輸出,它們會被視為檔案名稱,其內容將在標準前言之後包含在前言中。如果 library 是空字串 "",則不會發出標準前言。

-n[num]

neato 中設定 no-op 旗標。如果設定,neato 會假設節點已經被定位,並且所有節點都有一個提供位置的pos 屬性。然後,它會執行一個可選的調整以移除節點之間的重疊(取決於 overlap 屬性的值)、計算邊緣的配置(取決於 splines 屬性的值),並以適當的格式發出圖形。如果提供 num,則會發生以下動作

num = 1
-n 等效。
num > 1
使用指定的節點位置,不進行調整以移除節點重疊,並使用 pos 屬性已指定的任何邊緣佈局。neato 會為任何沒有 pos 屬性的邊緣計算邊緣佈局。如同往常,邊緣佈局會由 splines 屬性引導。

-ooutfile

將輸出寫入檔案 outfile。例如:

$ echo 'digraph { a -> b }' | dot -Tsvg -o output.svg

產生 output.svg

預設情況下,輸出會導向 stdout

-O

根據輸入檔案名稱和 -T 旗標指定的各種輸出格式,自動產生輸出檔案名稱。

例如,

$ dot -Tsvg -O ~/family.dot ~/debug.dot

產生 ~/family.dot.svg~/debug.dot.svg 檔案。

-P

自動產生一個圖表,顯示目前可執行檔的插件配置。例如:

$ dot -P -Tsvg -o plugins.svg

-q

抑制警告訊息。

-s[scale]

將輸入比例設定為 scale。如果省略此值,則使用 72.0。這個數字用於將 pos 屬性中使用的點座標單位轉換為英吋,這也是 neato 和 fdp 所期望的單位。因此,將一個程式佈局的圖形輸出輸入到 neato 或 fdp 時,幾乎總是需要這個旗標。如果使用了 -n 旗標,則會忽略此旗標。

-v

詳細模式

-x

neato 中,輸入時,修剪孤立節點和半島。這會移除不重要的圖形結構,並產生較不雜亂的繪圖。

-y

預設情況下,在通用輸出格式(例如 attributed dotextended dotplainplain-ext)中使用的座標系統是標準笛卡爾系統,原點位於左下角,並且當點從底部移動到頂部時,y 座標會增加。如果使用 -y 旗標,則座標系統會反轉,因此 y 值的增加對應於從頂部到底部的移動。

-?

列印使用資訊,然後結束。

如果給定多個 -T 旗標,則會以每個指定的格式發出圖形的繪圖。可以使用多個 -o 旗標來指定每個格式的輸出檔案。如果格式多於檔案,則剩餘的格式會寫入 stdout

請注意,-G-N-E 旗標會覆蓋輸入圖形中的任何初始屬性宣告,也就是那些出現在任何節點、邊緣或子圖定義之前的屬性陳述。此外,這些旗標會導致相關屬性永久附加到圖形。因此,如果輸出使用 attributed dot,則圖形將具有這些屬性。

環境變數

GDFONTPATH

路徑名稱清單,指定程式應搜尋字型的目錄。會被 DOTFONTPATH 覆蓋。僅在 Graphviz 未使用 fontconfig 函式庫建置時使用

DOTFONTPATH

路徑名稱清單,指定程式應搜尋字型的目錄。會被 fontpath 覆蓋。僅在 Graphviz 未使用 fontconfig 函式庫建置時使用

SERVER_NAME

如果已定義,這表示該軟體作為 Web 應用程式執行,這會限制對影像檔案的存取。

GVBINDIR

指示哪個目錄包含 Graphviz 設定檔和插件庫。如果已定義,則該值會覆蓋任何其他尋找此目錄的機制。如果 Graphviz 已正確安裝,則不需要此項,但對於在非 Linux 或 Windows 平台上進行重新定位可能很有用。


acyclic

使有向圖變成非循環的。

bcomps

圖形的雙連通元件篩選器。

ccomps

圖形的連通元件篩選器。

cluster

在圖形中尋找叢集,並使用此資訊增強圖形。

diffimg

計算兩個影像之間的交集。

dijkstra

單源距離篩選器。

dotty

可自訂的圖形編輯器。

edgepaint

邊緣著色以消除交叉邊緣的歧義。

gc

計算圖形元件。

gml2gv

GML-DOT 轉換器。

graphml2gv

GRAPHML-DOT 轉換器。

gv2gxl

GXL-GV 轉換器。

gvcolor

將流程顏色穿過排名後的有向圖。

gvedit

簡單的圖形編輯器和檢視器。

gvgen

產生圖形。

gvmap

尋找叢集並建立突出顯示叢集的地圖。

gvpack

合併和封裝不相交的圖形。

gvpr

圖形模式掃描和處理語言。

gxl2gv

GXL-GV 轉換器。

lefty

可程式化的圖形編輯器。

lneato

可自訂的圖形編輯器。

mingle

快速邊緣捆綁。

mm2gv

Matrix Market-DOT 轉換器。

nop

美觀地列印圖形檔案。

sccmap

提取有向圖的強連通元件。

smyrna

互動式圖形檢視器。

tred

有向圖的傳遞歸約篩選器。

unflatten

調整有向圖以改善佈局長寬比。

vimdot

結合文字編輯器和 dot 檢視器。

上次修改時間 2024 年 7 月 28 日: 將所有 Hugo 'ref' 替換為 'relref' (bbef86a)