The chord.padAngle() function in D3.js is used to set the pad angle between adjacent groups to the specified number in radians and returns the chord layout.
Syntax:
chord.padAngle([angle]);
Parameters: This function accepts a single parameter as mentioned above and described below
- angle: This parameter is the angle to set the pad angle between adjacent groups.
Return Value: This function returns the chord layout.
Below programs illustrate the chord.padAngle() function in D3.js
Example 1:
HTML
<!DOCTYPE html> < html >   < head >     < title >D3.js | chord.padAngle() Function</ title >     < meta charset = "utf-8" > </ head >   < body >     < center >         < h1 style = "color:green;" >GeeksForGeeks</ h1 >           < h3 >D3.js | chord.padAngle() Function</ h3 >         < div id = "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 = [[10, 161, 80, 80],             [13, 990, 9, 69],             [175, 71, 16, 68],             [51, 148, 60, 71]];               // Give this matrix to d3.chord()             var chords = d3.chord()                               // Use of chord.padAngle() Function                 .padAngle(0.5)                 (data)               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)                 )               svg.datum(chords)                 .append("g")                 .selectAll("path")                 .data(function (d) { return d; })                 .enter()                 .append("path")                 .attr("d", d3.ribbon()                     .radius(150)                 )                 .style("fill", "#58b54a")                 .style("stroke", "black");         </ script >     </ center > </ body >   </ html > |
Output:
Example 2:
HTML
<!DOCTYPE html> < html >   < head >     < title >D3.js | chord.padAngle() Function</ title >     < meta charset = "utf-8" >       </ script >     < script src =     </ script >     < script src =     </ script > </ head >   < body >     < center >         < h1 style = "color:green;" >GeeksForGeeks</ h1 >           < h3 >D3.js | chord.padAngle() Function</ h3 >         < div id = "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, 71, 89, 68],             [11, 0, 60, 71],             [10, 145, 0, 85],             [13, 9, 9, 0]];               // 4 groups, so create a vector of 4 colors             var colors = [d3.schemeDark2[4], d3.schemeDark2[5],             d3.schemeDark2[6], d3.schemeDark2[7]];               // Give this matrix to d3.chord()             var chords = d3.chord()                   // Use of chord.padAngle() Function                 .padAngle(0.3)                 .sortSubgroups(d3.ascending)                 (data)               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)                 )               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: