問題タブ [graph-layout]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
3224 参照

algorithm - Boost 1.41.0 グラフ レイアウト アルゴリズムの使用方法

ブースト グラフ レイアウト アルゴリズムの使用に問題があります。バージョン 1_41_0 mingw g++ 4.4.0 をブーストします。

それで、私が遭遇した問題があります。

  1. 関数 fruchterman_reingold_force_directed_layout はコンパイルされていません。
  2. kamada_kawai_spring_layout はコンパイルされましたが、プログラムがクラッシュしました。
  3. Boost ドキュメントのレイアウト アルゴリズムが正しくありません。fruchterman_reingold_force_directed_layout のサンプルがコンパイルされていません。

これは私の例です。関数を使用するには、コメントを外すだけです。文字列 60、61、63。

0 投票する
3 に答える
1366 参照

java - 動的グラフの描画

JavaServerFacesテクノロジで記述されたWebアプリケーションがあります。

アプリケーションはn個の入力を受け取り、出力を提供します。

アプリケーションに次の機能が必要です。

入力ごとにスライダーが必要です。

出力をグラフで表現したい。

したがって、スライダーを使用して入力値を変更するときは常に、変更した出力値もグラフに表示する必要があります

では、これを行うための最良の方法は何でしょうか?

0 投票する
4 に答える
6094 参照

linux - 平面グラフのテストをサポートするオープンソースのグラフ描画プログラム?

グラフ理論では、平面グラフは平面に埋め込むことができるグラフです。つまり、エッジが端点でのみ交差するように平面上に描画できます。

それらには、平面グラフ テスト (つまり、特定のグラフが平面かどうかを判断する) 用に存在する多くのアルゴリズムがあります。最良のものは O(n) にあります。ここで、n は頂点の数です。

次の機能をサポートするオープン ソース プログラムはどれですか。

  • 平面グラフを描画できます
  • O(n) 平面グラフ テストをサポートします。
  • 可変ノード サイズをサポートします。
  • 固定描画境界領域をサポート
  • オープンソースである
0 投票する
6 に答える
29538 参照

graphviz - Dot/GraphViz を使用した家系図のレイアウト

Dot と GraphViz で家系図を描こうとしています。

これは私が現在持っているものです:

これをドット ( dot simpsons.dot -Tsvg > simpsons.svg) で実行すると、次のレイアウトが得られます。 オリジナル、dot/graphviz作成

ただし、エッジをもっと「家系図」のようにしたいと思います。T の垂直線を持つ 2 人の既婚者間の T 字路が、それぞれの小さなサブディビジョンを持つ逆さまの T 字路に再び分岐します。子供たちは、このモックアップのように、KolourPaint で作成されています。

私が達成したいこと

これを達成するために使用しなければならないドット構文は何ですか?

0 投票する
4 に答える
18853 参照

graphviz - Graphviz レイアウトの改善

グラフィックを制作することになると、私は完璧に麻痺します。ビジュアルの対称性が完全に調査されていないと、何が起こっているのかを理解するのが難しくなります. 私は非常に視覚的な学習者でもあり、学んだことを単純化して紙に描くのが大好きです.

Graphviz は自動的に描画するための優れたツールですが、もっと優れている可能性があります。良いグラフの例から始めましょう。むしろステートマシンです。品質は気にしないでください (より良いツールで再描画できます)。これはほぼ完璧ですが、対称性を明確にするために反時計回りに 45 度回します。これにより、状態 q1 と q2 がどのように類似しており、どこが異なるかを理解するのにかかる時間が短縮されます。その隣に他のグラフィックスがないことを考えると、その図を表す最善の方法は 1 つしかないと私は主張します。

http://gallery.hd.org/_exhibits/maths/math-finite-state-machine-DHD.gif
(ソース: gallery.hd.org )

ここで、完全ではない描写を見てみましょう。

http://linux.softpedia.com/screenshots/Graphviz_1.png
(出典: softpedia.com )

これは、graphviz が生成するもののように見えます。はい、エッジは滑らかですが、GAAAAWWWD これは不要な混乱です! マインド マップのように見えますが、すぐに使用できる完成した図ではありません。私は、人間の目は(それ以上に)対称性を切望していると信じています。はい、階層なども重要な要素です。

これより優れたアルゴリズムが利用できないことに驚いています。まったく視覚的に学習できない人もいます。記号を読むことで抽象的な概念を把握できる。私じゃない!

それで、私の質問は何ですか?小規模から中規模のグラフを描画するための、より優れたフリー ソフトウェアはありますか? 多分

ありがとうございました!

この投稿を改善する方法を教えてください。

PS dia で同様の十分なクローンを引き出すのに 10 分かかりました。まだ完璧ではありませんが、すべてがグリッドにスナップされるため、作成するのに便利でした (また、細部をいくつか見逃していましたが、再アップロードする気はありません)。LR_0 は、ユーザーが開始状態をより早く把握できるように、上からの「開始--->」が必要です。

有限ステート マシン

0 投票する
1 に答える
1606 参照

graphviz - GraphViz、クラスタリング時の固定レイアウト

いくつかのノードとエッジで構成される特定のグラフを含むドット(graphviz)ファイルがあります。
そのグラフのコピーを作成し、クラスタークラスター(グループ)のいくつかのノードを一緒に作成したいと思います。
しかし、私がそれをしているときはいつでも、グラフのレイアウトが変更されています(クラスターを採用しています)。

グラフの位置を修正してからクラスタリングを追加する方法はありますか?

0 投票する
2 に答える
6144 参照

algorithm - 平面グラフ レイアウト

グラフをレイアウトする際のエッジ オーバーラップの最小化手法にはどのようなものがありますか? (できればGraphVizに関連しています)また、グラフを平面的にレイアウトできる既存のソフトウェアはありますか?

現在のレイアウト - http://www.evecakes.com/doodles/master.gif

左上隅のピンク色のセクションはきれいに見えますが、水色のセクションには回避可能なエッジ オーバーラップがあります。

0 投票する
3 に答える
7156 参照

c# - オープンソースのグラフレイアウトライブラリ

.netフレームワーク用のオープンソース(GPL、LGPLなど)のグラフレイアウトライブラリ、できればフルマネージコードを探しています。私は物事の視覚化の側面について心配していません。

Javaの場合はたくさん見つけることができますが、.netの場合は見つかりません...

ありがとう!

0 投票する
1 に答える
185 参照

algorithm - N個のアイテム間のD距離を最小化するためのアルゴリズムは何ですか?

クラスメートは、クラスのデータベースの図を印刷しました。この種類の線は、テーブル間の関係を表しています。しかし、彼の線はあちこちで交差し、それは醜いように見えました。

そこで、テーブルを移動して総線距離を最小化する方法を考えましたが、テーブルをすべて重ねて移動する以外に、それを行う方法は考えられませんでした。つまり、基本的には、2D座標空間にN個のアイテムがあり、それらのアイテムのペア間にある程度の接続がある場合、ペア間の合計距離が最小になるようにアイテムを移動しますが、距離がSより小さくならないようにするにはどうすればよいですか?(テーブルが近づきすぎないようにするため)このためのアルゴリズムはありますか?

(最小の合計距離が必ずしもレイアウトを醜くするわけではないことを理解しています。線が交差する可能性があります。しかし、テーブルのレイアウトはまさに私が考えたものです)

0 投票する
1 に答える
517 参照

perl - Perlを使用してグラフからノード座標を取得するにはどうすればよいですか?

わかりました。フローチャートの定義があります(基本的に、ノードの配列と各ノードのエッジ)。次に、フロー内のすべてのタスク、できれば階層スタイルの座標を計算します。

Graph :: Easy :: Layoutのようなものが必要です が、ノードの座標を取得する方法がわかりません。ノードを自分でレンダリングし、ボックスの座標/サイズのみを取得したいのです。助言がありますか?

私が必要としているのは、Debianリポジトリでも利用可能なCPANモジュールです。