कुछ महीने पहले, मैंने combining Hierarchical Edge Bundling and Radial Reingold–Tilford Tree using d3.jsD3.js (श्रेणीबद्ध बढ़त bundling तत्वों) एक रेडियल पेड़ में तत्वों के बीच लिंक जोड़ने
मैं HEB से शुरू करने की कोशिश की है और यह एक में करने की कोशिश की पेड़। चीजें जिस तरह से मैं चाहता था, काम नहीं किया है, और मुझे एहसास हुआ कि एक अलग कोण के साथ एक ढीला रेडियल पेड़ (रीनिंगोल्ड टिलफोर्ड नहीं) से शुरू करना बेहतर हो सकता है।
Here is a JSFiddle of the radial tree
डाटा मॉडल भी बदल गया है तत्वों ने अब एक नाम है के रूप में, बच्चों और आयात (लिंक)।
var flare =
{
"name": "root",
"children": [
{
"name": "test1.parent1","children": [
{"name": "test1.child11","children": [
{"name": "test1.child111"},
{"name": "test1.child112"}
]}
],"imports": ["test2.parent2","test3.parent3","test4.parent4"]
},
{
"name": "test2.parent2","children": [
{"name": "test2.child21"},
{"name": "test2.child22"},
{"name": "test2.child28","children":[
{"name": "test2.child281"},
{"name": "test2.child282"}
]}
],"imports": ["test3.parent3"]
},
{"name": "test3.parent3","imports": ["test4.parent4"]},
{
"name": "test4.parent4","children": [
{"name": "test4.child41"},
{"name": "test4.child42"}
]
}
]
};
धीरे-धीरे शुरू करने के लिए, मैं वर्तमान JSFiddle साथ माइक Bostock से non-interactive Hierarchical edge bundling गठबंधन करने के लिए चाहते हैं, लेकिन याद रखें कि इस बातचीत बाद में यह का हिस्सा होगा।
इसके अलावा, केवल प्रथम स्तर नीचे दिखाया गया है (नतीजा यह है कि मैं चाहता हूँ) के रूप में लिंक (माता पिता माता पिता लिंक) होना आवश्यक है:
मेरे वर्तमान सबसे बड़ी समस्या HEB नहीं किया है "जड़", लेकिन पेड़ एक ही आइटम के साथ शुरू होता है। तो अब तक मैंने जो कुछ भी कोशिश की है, वह पेड़ के केंद्र में एक बड़ी गड़बड़ी का कारण बन गया है।
ध्यान दें कि पेड़ के केंद्र में एक सर्कल है जो रूट को 1 लिंक तक कवर करने के लिए है, इसलिए पेड़ स्तर 1 (माता-पिता) से शुरू होता है।
var circle = svg.append("circle")
.attr("cx", 0)
.attr("cy", 0)
.attr("r", diameter - 725.3)
.style("fill", "#F3F5F6")
.style("stroke-width", 0.2)
.style("stroke", "black");
आदर्श रूप में, माता-पिता के बीच संबंधों को अद्यतन करने के लिए जब एक स्तर (अन) है ध्वस्त हो गई, है यह नोड्स और स्तरों के बीच लिंक के लिए करता है, लेकिन है कि बाद में आ सकते हैं और है कि शुरू में के बाद मुश्किल नहीं हो सकता है की तरह दिखाने के लिए पहला स्तर लिंक प्राप्त करना। साथ ही, यदि आवश्यक हो तो डेटा टेम्पलेट बदल सकता है, लेकिन जानकारी के सभी 3 टुकड़े महत्वपूर्ण हैं (नाम, बच्चे और आयात)।
ऐसा करने का एक और तरीका रूट भाग को शामिल करने के लिए डेटा को बदलने में सक्षम होना होगा, और यह ठीक से व्यवहार करता है क्योंकि यह अब आंशिक उत्तरों का भी स्वागत है।
निश्चित रूप से डुप्लिकेट नहीं है, लेकिन यह [इस] से संबंधित लगता है (http://stackoverflow.com/q/30653093/1586231)। –