Graphviz コンパイル

graphviz-compile.png

そしてコマンドプロンプトを立ち上げて

dot -Tpng sample1.dot -o sample1.png

とか

dot -Tgif sample1.dot -o sample1.gif

やってみる。
画像ができるはず
さて、私の最大の目的はsvgですよ!ってことでやってみよう。

dot -Tsvg sample1.dot -o sample1.svg

コンパイルできた。
おおっしかも、今までのダメなコンバーターと違って、ちゃんと丸はellipseで表現してある。!優秀~♪

Graphvizで日本語を使う上での注意

最新版で日本語を使う上での注意点は以下

dotファイルの文字コードをUTF-8にする
node/edgeにfontname属性を指定して、Graphvizで使うフォントを指定する
上記2点を守っていれば日本語が使えます(上で使ったものは実際に日本語が文字化けしていない)。

Windows 2000/XPはフォントがあるフォルダ(C:\Windows\Fonts)にパスが通っているので、フォントのファイル名だけを指定してやればOKです。

node  [fontname="MS GOTHIC"];

日本語を表示するオブジェクトの属性として fontname="MS GOTHIC"等を設定する。"msgothic.ttc" とか "MS ゴシック" "HGゴシックE"とかはダメ。

エラー

(dot.exe:4940): Pango-WARNING **: couldn't load font "HGゴシックE Not-Rotated 10",
falling back to "Sans Not-Rotated 10", expect ugly output.

おなじgtkアプリのInkscapeで [ テキスト > テキスト/フォント ] とかで指定できる文字列を使えば大丈夫らしい。
inkscale.png
http://d.hatena.ne.jp/ksmemo/20071011/p1

綺麗にpngを出力するには

-Tpng:cairo

pngのレンダリングエンジンにCairoを指定。

-Tpng:cairo:gd

pngのレンダリングエンジンはGDライブラリを使ったCairoにする

文字を大きくする作戦

出てきた絵が汚い!と思ったら

fontsize=19

フォントサイズを大きくしてみよう

Sublimeでコンパイル

{
    "cmd": ["dot","-Tpng","$file","-o","$file_basename.png"],
    "shell":true
}

コマンドオプション

Sublimeでdot2png&svgを一気にさせる設定

{
    "cmd": ["dot","-Tsvg","$file","-o","$file_base_name.svg","&",
            "dot","-Tpng","$file","-o","$file_base_name.png"],
    "path":"/usr/local/bin/"
}

sublime-build

サポートサイト Wikidot.com sublime-build