The d3.chord() function in D3.js is used to return a constructed new chord layout with the default settings.
Syntax:
d3.chord()
Parameters: This function does not accept any parameters.
Return Value: This function returns the constructed new chord layout.
Below programs illustrate the d3.chord() function in D3.js:
Example 1:
HTML
| <!DOCTYPE html> <html> <head>   <scriptsrc=   </script> </head> <body>   <center>     <h1style="color:green;">GeeksForGeeks</h1>      <h3>D3.js | d3.chord() Function</h3>     <divid="GFG"></div>      <script>       // Create the svg area       var svg = d3.select("#GFG")         .append("svg")         .attr("width", 340)         .attr("height", 340)         .append("g")         .attr("transform", "translate(170,170)")        // Create input data       var data = [[8010, 16145, 8090, 8045],       [1013, 990, 940, 6907],       [11975, 5871, 8916, 2868],       [1951, 10048, 2060, 6171]];        // Give this matrix to d3.chord()       var chords = d3.chord()         .padAngle(0.05)         (data)        // Add the groups on the inner part        // of the circle       svg.datum(chords)         .append("g")         .selectAll("g")         .data(function (d) { return d.groups; })         .enter()         .append("g")         .append("path")         .style("fill", "black")         .style("stroke", "black")         .attr("d", d3.arc()           .innerRadius(150)           .outerRadius(160)         )        // Add the links between groups       svg.datum(chords)         .append("g")         .selectAll("path")         .data(function (d) { return d; })         .enter()         .append("path")         .attr("d", d3.ribbon()           .radius(150)         )         .style("fill", "#32a852")         .style("stroke", "black");     </script>   </center> </body> </html> | 
Output:
Example 2:
HTML
| <!DOCTYPE html> <html> <head>   <scriptsrc=   </script>   <scriptsrc=   </script>   <scriptsrc=   </script>   <scriptsrc=   </script> </head> <body>   <center>     <h1style="color:green;">GeeksForGeeks</h1>      <h3>D3.js | d3.chord() Function</h3>     <divid="GFG"></div>      <script>       // Create the svg area       var svg = d3.select("#GFG")         .append("svg")         .attr("width", 340)         .attr("height", 340)         .append("g")         .attr("transform", "translate(170,170)")        // Create input data       var data = [[0, 5871, 8916, 2868],       [1951, 0, 2060, 6171],       [8010, 16145, 0, 8045],       [1013, 990, 940, 0]];        // 4 groups, so create a vector of 4 colors       var colors =           [d3.schemeDark2[0], d3.schemeDark2[1],            d3.schemeDark2[2], d3.schemeDark2[3]];        // Give this matrix to d3.chord()       var chords = d3.chord()         .padAngle(0.175)         .sortSubgroups(d3.ascending)         (data)        // Add the groups on the inner part        // of the circle       svg.datum(chords)         .append("g")         .selectAll("g")         .data(function (d) { return d.groups; })         .enter()         .append("g")         .append("path")         .style("fill", function (d, i) {           return colors[i]         })         .style("stroke", "black")         .attr("d", d3.arc()           .innerRadius(150)           .outerRadius(160)         )        // Add the links between groups       svg.datum(chords)         .append("g")         .selectAll("path")         .data(function (d) { return d; })         .enter()         .append("path")         .attr("d", d3.ribbon()           .radius(150)         )         .style("fill", function (d) {           return (colors[d.source.index])         })         .style("stroke", "black");     </script>   </center> </body> </html> | 
Output:

 
                                    








