私はUWのCSリサーチの学生です。私のグループは、neo4jグラフDBにリアルタイムで送られる特定のネットワークトラフィックを視覚化しようとしているところです。
私は、gephi、cytoscape、人力車(D3.jsに基づく)、その他のツール、D3.jsなど、さまざまなツールについて読みました。
これまでのところD3.jsを進めていますが、コミュニティの意見を聞きたかったのです。 neo4jが原因でサイトスケープを使用できず、D3.jsは高速のリアルタイム環境でセミラージデータを処理するのに最適です。
提案?
おそらく別の質問かもしれませんが、自由に入力してください:neo4jを実装する最良の方法? Java、Ruby、node.js?
ありがとうございました!
私の理解:Gephiはリアルタイム更新ではうまく機能しません。通常は静的データで使用されます。
主な考慮事項の1つ-提示したい視覚化は何ですか?有向グラフですか?循環?加重?追加のラベル?
一部のツールキットは、表示できる内容が「修正」されていますが、グラフを簡単に表示できます。その他(d3など)は非常に拡張性が高いため、ほとんど何でも作成できます。
StackOverflow形式の目的で、システムの制限とニーズ(実際のデータレート、シン/シッククライアント、Vizのタイプなど)を特定できれば、より良い答えが得られる可能性があります。
この種の問題に対する特効薬の解決策はなく、そのほとんどは、あなたが何をしようとしているのか、チーム、および(お金と時間の)予算に依存します。
次のいずれかを満たす必要がない限り、D3はお勧めしません。
上記のエントリのいずれにも当てはまらない場合は、D3を脇に置いて、次の内容を確認するように指示します。
免責事項:私はキーライン開発者の一人です。
持っているデータのサイズに応じて、ライブラリの選択は変わる可能性があります。チャートに3/400以下のノードを配置し、特定のスタイリング/アニメーションを必要としない場合は、SigmaJSで十分です。キーラインは、このような状況を処理するように設計されており(インクリメンタルレイアウトを提供)、問題なく2000ノードまでスケールアップします。このサイズの側面にフィルターが必要です。
私はVivaGraphを最後の手段と名付けます。SigmaJSにはWebGLレンダラーもあり、より優れたレンダリングIMHOを提供します。
VivaGraphJSは間もなく ngraph に置き換えられます。これは、レンダリングに不可知なアプローチを使用します。PIXI、Fabric、または好きなものを使用できます。..
アセットを一度ロードして常に再利用する場合、WebGLレンダラーを使用することは理にかなっています。リアルタイムシナリオでチャート要素をスタイル設定している場合、Canvas IMHOには利点がありません。
レンダリングにwebglを使用し、より大規模なネットワークにも非常によくスケーリングするvivagraphを確認してください。彼らは本当に大きなもの(FB、Amazon)のためのいくつかの素晴らしい例を持っています。
D3はすばらしいと思いますが、最近、FOSDEMでSigma.jsに関する講演がありました。参照 http://thewhyaxis.info/hairball/