力指向グラフを作成したいのですが、(同じデータで)生成されるたびに同じままである必要があります。d3.jsを使用してこれを行う方法はありますか?
更新:
シードされた乱数ジェネレーターの使用に基づく実用的なソリューションを見つけました
// set the random seed
Math.seedrandom('mySeed');
D3の強制レイアウトを変更するか、それに基づいて独自のレイアウトを作成することができます。ノードの配置にランダム性(Math.Random)が使用される場所は少なくとも3つあります(力のレイアウトが他のコードを参照している場合は、さらに多くの場所がある可能性があります)。グラフを毎回同じように表示するには、すべてのランダム性を排除する必要があります。
https://github.com/mbostock/d3/blob/master/src/layout/force.js
ただし、これはレイアウトの動作を妨げることになります。ランダム性を使用して、読みやすい図にすばやく分類します。ノードの数が少ない場合は、おそらく問題にはなりませんが、ノードの数が多いと、絡み合う可能性があります。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加