このサークルパックのレイアウト例(http://bl.ocks.org/4063269)は、私が取り組んでいるプロジェクトに最適ですが、すべてのサークルのサイズを相互に相対的に設定します。
各円に固定半径を指定する簡単な方法はありますか?
ソースコード、例、グーグル、スタックオーバーフローを調べましたが、役に立たないようです。
円の正確なサイズは私にとって重要です。
このサークルパックのレイアウト例(http://bl.ocks.org/4063269)は、私が取り組んでいるプロジェクトに最適ですが、すべてのサークルのサイズを相互に相対的に設定します。
各円に固定半径を指定する簡単な方法はありますか?
ソースコード、例、グーグル、スタックオーバーフローを調べましたが、役に立たないようです。
円の正確なサイズは私にとって重要です。
あなたが与えた例のコードに従うと、<circle>
要素のサイズはここで決定されます:
node.append("circle")
.attr("r", function(d) { return d.r; })
// ...
円のサイズを に固定するには、次の50
ようにします。
node.append("circle")
.attr("r", function(d) { return 50; })
// ...
ただし、コメントで指摘されているように、これはレイアウトを壊します。これを修正するには、value
各ノードに同じものを提供できます。
// Returns a flattened hierarchy containing all leaf nodes under the root.
function classes(root) {
var classes = [];
function recurse(name, node) {
if (node.children) node.children.forEach(function(child) { recurse(node.name, child); });
else classes.push({packageName: name, className: node.name, value: node.size});
}
recurse(null, root);
return {children: classes};
}
に:
// Returns a flattened hierarchy containing all leaf nodes under the root.
function classes(root) {
var classes = [];
function recurse(name, node) {
if (node.children) node.children.forEach(function(child) { recurse(node.name, child); });
else classes.push({packageName: name, className: node.name, value: 1});
}
recurse(null, root);
return {children: classes};
}