前の関連記事:linuxBean14.04(41)pycallgraphでPythonのコールグラフ:その2
pycallgraphでgraphvizを選択したときに指定できるオプション一覧を見ます。
graphvizのオプション一覧
graphvizのオプションはgraphvizの後ろに指定します。
pq@pq-VirtualBox:~$ pycallgraph graphviz --help usage: pycallgraph [options] OUTPUT_TYPE [output_options] -- SCRIPT.py [ARG ...] positional arguments: SCRIPT The Python script file to profile ARG Python script arguments. optional arguments: -h, --help show this help message and exit -l TOOL, --tool TOOL The tool from Graphviz to use, e.g. dot, neato, etc. -o OUTPUT_FILE, --output-file OUTPUT_FILE The generated Graphviz file -f OUTPUT_FORMAT, --output-format OUTPUT_FORMAT Image format to produce, e.g. png, ps, dot, etc. See http://www.graphviz.org/doc/info/output.html for more. --font-name FONT_NAME Name of the font to be used --font-size FONT_SIZE Size of the font to be usedこれらのオプションは/usr/local/lib/python3.3/dist-packages/pycallgraph/output/graphviz.pyにデフォルト値が書いてあります。
--tool TOOL/-l TOOL
デフォルトはdot以外にgraphvizのツールneato, fdp, sfdp, twopi, circo, osage, patchworkなどが指定できるそうです。
Graphvizレイアウトサンプルに例の解説があります。
pycallgraph graphviz -l neato /usr/lib/python3.3/site.py
すごくバラけますね。グループ分けはされないようです。
pycallgraph graphviz -l fdp /usr/lib/python3.3/site.py
これはグループ分けは保持されています。
pycallgraph graphviz -l sfdp /usr/lib/python3.3/site.py
エラーがでて出力されませんでした。
pycallgraph graphviz -l twopi /usr/lib/python3.3/site.py
これもグループ分けがありません。
pycallgraph graphviz -l circo /usr/lib/python3.3/site.py
エラーがでて出力されませんでした。
pycallgraph graphviz -l osage /usr/lib/python3.3/site.py
これはエッジが交錯してわかりにくいです。
pycallgraph graphviz -l patchwork /usr/lib/python3.3/site.py
もうなにがなんだかわかりません。
--output-file 出力ファイル名/-o 出力ファイル名
--output-format ファイル形式/-f ファイル形式,
デフォルト出力ファイル名./pycallgraph.pngとそのファイル形式を変更できます。
出力できるファイル形式一覧はOutput Formats | Graphviz - Graph Visualization Softwareにあります。
--font-name FONT_NAME
--font-size FONT_SIZE
デフォルトフォントVerdanaとフォントサイズ7を変更できます。
ちなみに/usr/local/lib/python3.3/dist-packages/pycallgraph/output/graphviz.pyにグループ名のフォントサイズのデフォルトは10でグループを囲む線の色はRGBA=(0,0,0,0.8)で指定されています。
pycallgraph graphviz --font-size 20 /usr/lib/python3.3/site.py
これでグループ分けのフォントの2倍になるはずですがなりませんね。
graphviz.pyのデフォルトフォント設定をいじるとちゃんと2倍になったので--font-sizeのオプションが効いていないようです。
参考にしたサイト
Graphvizレイアウトサンプル
Graphvizのグラフの形の例。
Graphviz | Graphviz - Graph Visualization Software
Graphvizのグラフの形の解説。今回sfdpとcircoは出力できませんでした。
Output Formats | Graphviz - Graph Visualization Software
Graphvizの出力ファイル形式一覧。
0 件のコメント:
コメントを投稿