मैं इसी प्रकार के डी 3 पेड़ लेआउट का उपयोग कर रहा हूँ,: http://mbostock.github.com/d3/talk/20111018/tree.htmlडी 3 पेड़ खड़ी जुदाई
मैं अपने की जरूरत के लिए यह बदलाव कर दिया है और एक मुद्दा में चल रहा हूँ। उदाहरण में भी वही समस्या है जहां आपके पास बहुत सारे नोड्स खुले हैं तो वे कॉम्पैक्ट बन जाते हैं और पढ़ने और बातचीत को मुश्किल बनाते हैं। मैं ऐसे अंतर के लिए अनुमति देने के लिए मंच को फिर से आकार देने के दौरान नोड्स के बीच न्यूनतम लंबवत स्थान को परिभाषित करना चाहता हूं।
.separation(function (a, b) {
return (a.parent == b.parent ? 1 : 2)/a.depth;
})
काम नहीं किया है कि:
मैं जुदाई एल्गोरिथ्म संशोधित करने से यह काम करने के लिए कोशिश की। मैंने गणना की भी कोशिश की कि किस गहराई में सबसे अधिक बच्चे थे, फिर मंच की ऊंचाई children * spaceBetweenNodes
होने के लिए कह रहे थे। यह मुझे करीब मिला, लेकिन अभी भी सटीक नहीं था।
depthCounts = [];
nodes.forEach(function(d, i) {
d.y = d.depth * 180;
if(!depthCounts[d.depth])
depthCounts[d.depth] = 0;
if(d.children)
{
depthCounts[d.depth] += d.children.length;
}
});
tree_resize(largest_depth(depthCounts) * spaceBetweenNodes);
मैं भी भी जहां यह y
जुदाई की गणना करता है नीचे दी गई विधि में नोड के x
मूल्य बदलने की कोशिश की, लेकिन कोई सिगार। मैं उस बदलाव को भी पोस्ट करूंगा लेकिन मैंने इसे अपने कोड से हटा दिया।
nodes.forEach(function(d, i) {
d.y = d.depth * 180;
});
यदि आप कोई तरीका सुझा सकते हैं या पता कर सकते हैं कि मैं नोड्स के बीच लंबवत न्यूनतम अंतर को पूरा कर सकता हूं तो कृपया पोस्ट करें। मैं बहुत आभारी रहूंगा। मैं शायद कुछ बहुत आसान याद कर रहा हूँ।
धन्यवाद, दयालु सर !! :) –