現在、コントロールフローグラフを視覚化するためにGraphvizを使用しています。基本的に、(縮小可能な)制御フローグラフは、DAG +前のレイヤのノードを指すいくつかのエッジです。後者のエッジは、ノードの配置に影響してはなりません。d3.jsのレイヤードグラフ
現在のところ、dot
は非常にきれいにグラフを描画しますが、非常に大きなグラフの分析には貴重なインタラクティビティ(フォールディング、スクロール、ズームなど)を追加する簡単な方法がありません。したがって、私はd3.jsを最も成熟した機能豊富なグラフ作成ライブラリとして選択しました。
d3.jsにはlayered graphs(dot
と同じ)を描く簡単な方法がありますが、私はそれを認識していないようです。それ、どうやったら出来るの?これが助けになると、私はすでに私のCFGでドミネーター分析を実行します。
はルックス: https://github.com/mbostock/d3/issues/349 – whitequark