2012-07-05 34 views
9

現在、コントロールフローグラフを視覚化するためにGraphvizを使用しています。基本的に、(縮小可能な)制御フローグラフは、DAG +前のレイヤのノードを指すいくつかのエッジです。後者のエッジは、ノードの配置に影響してはなりません。d3.jsのレイヤードグラフ

現在のところ、dotは非常にきれいにグラフを描画しますが、非常に大きなグラフの分析には貴重なインタラクティビティ(フォールディング、スクロール、ズームなど)を追加する簡単な方法がありません。したがって、私はd3.jsを最も成熟した機能豊富なグラフ作成ライブラリとして選択しました。

d3.jsにはlayered graphsdotと同じ)を描く簡単な方法がありますが、私はそれを認識していないようです。それ、どうやったら出来るの?これが助けになると、私はすでに私のCFGでドミネーター分析を実行します。

+4

はルックス: https://github.com/mbostock/d3/issues/349 – whitequark

答えて

5

有向グラフ描画用Dagreライブラリは依存しないレンダリングが、d3.jsと統合されていますhttps://github.com/cpettitt/dagre

はここでD3を使用してレンダリングのデモです:D3での保留機能要求があるかのようにhttp://cpettitt.github.io/project/dagre-d3/latest/demo/interactive-demo.html

+1

私たちは確かにDagreルートで行っています:https://github.com/evilmartians/furnace-xray – whitequark

+0

あなたは壊れたリンクがあります – Sheena

+0

ここにリンクがありますDagre D3デモ:http://cpettitt.github.io/project/dagre-d3/latest/demo/interactive-demo.html – peater