मुझे एक काफी सरल विज़ुअलाइजेशन मिला है जिसे मैं एक साथ रखने की कोशिश कर रहा हूं, लेकिन प्रसंस्करण के साथ मामूली समस्या है।पहला लिंक आइटम क्यों छोड़ा जा रहा है?
अगर मैं निम्नलिखित स्निपेट तो सब कुछ के रूप में की उम्मीद काम करता है का उपयोग करें:
var lines = svg.selectAll("line")
.data(data.links)
.enter()
.append("svg:line")
.attr("x1", function(d) { return findNode(data.nodes, d.source).x;})
.attr("y1", function(d) { return findNode(data.nodes, d.source).y;})
.attr("x2", function(d) { return findNode(data.nodes, d.target).x;})
.attr("y2", function(d) { return findNode(data.nodes, d.target).y;})
.style("stroke", "#838383")
.style("stroke-width", 1)
.style("marker-end", "url(#end-arrow)");
मैं इस हालांकि एक अलग से एक का उपयोग करने के लिए, रास्तों का उपयोग कर जाते हैं तो:
var paths = svg.selectAll("path")
.data(data.links)
.enter()
.append("svg:path")
.attr("d", function(d) {
debugger;
var src = findNode(data.nodes, d.source);
var tgt = findNode(data.nodes, d.target);
var xi = d3.interpolateNumber(src.x, tgt.x);
var curvature = 0.8;
return "M" + src.x + "," + src.y
+ "C" + xi(curvature) + "," + src.y
+ " " + xi(1 - curvature) + "," + tgt.y
+ " " + tgt.x + "," + tgt.y;
})
.style("stroke", "#838383")
.attr("fill", "none");
फिर किसी कारण से
पहला 'लिंक' गायब है। क्या कोई सुझाव दे सकता है कि यह क्यों हो सकता है? एक JSFiddle here है। जिस प्रभाव की उम्मीद है वह गायब है, यह है कि मेरे पास अच्छी तरह गोल गोलियां नहीं हैं जैसे मैं चाहता हूं।
शानदार - मुझे यह कभी नहीं मिला होगा। एक अतिरिक्त के रूप में आप जानते हैं कि बेजियर पर तीरों को प्रदर्शित करने का कोई आसान तरीका है? मेरे लंबवत मार्कर गायब हैं ... – Ian
क्षमा करें, मेरे सिर के ऊपर से नहीं ... –