2017-05-29 12 views
0

D3.js(github.com/gwtd3/gwt-d3)のGWTレイアウトを使用して、力モデルを持つノードリンクダイアグラムを作成しようとしています。まず、this exampleまたはthis oneよりも単純なもので十分でしょう。D3.jsのGWTラッパーを使用してノードリンクダイアグラムを作成

しかし、私は本当にGWTラッパーを使用してより簡単なグラフを作成する問題があります。私は、力、ノード、およびリンクオブジェクトに相当するものを使用する方法を見つけることができません。

私は開始します。その後、

Force force = D3.layout().force(); 

しかし、私は「ノード」と「リンク」はすべきであり、それらを初期化するためにどのようにノードオブジェクトのか分かりません。それらのコンストラクタは表示されません。

force.nodes(nodes).links(links); 

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

答えて

0

回避策として、JSNIの便利なメソッドを追加してForce.NodeおよびForce.Linkインスタンスを作成します。

/** 
* Convenience function to overcome API limitation. 
*/ 
static final native <T> Node<T> newNode(T userDatum)/*-{ 
    return { 
     datum : userDatum 
    }; 
}-*/; 

/** 
* Convenience function to overcome API limitation. 
*/  
static final native <T> Link<T> newLinkIndex(int source, int target, T userDatum) /*-{ 
    return { 
     source : source, 
     target : target, 
     datum: userDatum 
    }; 
}-*/; 
  1. 対応する点までの「ノード」からインデックス(int)を使用してGWT D3「リンク」配列を初期化
  2. 、すべてのノードのインスタンスが含まれているGWT D3「ノード」アレイを作成します。ノードのインスタンスは、
  3. は、呼び出して適用します。force.nodes(ノード).links(リンク)

あなたはMobilePatentSuits.javaに完全な作業例を見ることができます!

関連する問題