D3.js ribbon.endAngle() Function

The ribbon.endAngle() function in D3.js is used to set the end angle accessor to the specified function and returns this ribbon generator.
Syntax:
ribbon.endAngle([angle]);
Parameters: This function accepts a single parameter as mentioned above and described below
- angle: This parameter is the radians value to set the end angle accessor.
Return Value: This function returns the ribbon generator.
Below programs illustrate the ribbon.endAngle() function in D3.js
Example 1:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> </head> <body> <center> <h1 style="color:green;">GeeksForGeeks</h1> <h3>D3.js | ribbon.endAngle() Function</h3> <div id="GFG"></div> <script> // Create the svg area var svg = d3.select("#GFG") .append("svg") .attr("width", 300) .attr("height", 300) .append("g") .attr("transform", "translate(150, 150)") // Create input data var data = [[18, 6, 1, 4, 5, 1], [ 0, 80, 0, 2, 34, 53], [75, 16, 8, 0, 0, 3], [3, 9, 9, 6, 35, 4], [1, 0, 7, 3, 5, 1]]; // Give this matrix to d3.chord() var chords = d3.chord() .padAngle(0.2) .sortSubgroups(d3.ascending) .sortChords(d3.ascending) (data) var ribboon = d3.ribbon().radius(140) .startAngle(2.2) // Use of ribbon.endAngle() function .endAngle(4.5); svg.datum(chords) .append("g") .selectAll("path") .data(function (d) { return d; }) .enter() .append("path") .attr("d", ribboon) .style("fill", "#57beff") .style("stroke", "black"); </script> </center> </body> </html> |
Output:
Example 2:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> </script> <script src= </script> <script src= </script> </head> <body> <center> <h1 style="color:green;">GeeksForGeeks</h1> <h3>D3.js | ribbon.radius() Function</h3> <div id="GFG"></div> <script> // Create the svg area var svg = d3.select("#GFG") .append("svg") .attr("width", 320) .attr("height", 320) .append("g") .attr("transform", "translate(160, 160)") // Create input data var data = [[0, 58, 71, 89, 16, 28, 68, 0], [0, 19, 51, 0, 20, 60, 61, 71], [80, 10, 16, 145, 0, 80, 45, 0], [0, 10, 13, 9, 90, 94, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0]]; // 4 groups, so create a vector of 4 colors var colors = [d3.schemeSet1[7], d3.schemeSet1[6], d3.schemeSet1[5], d3.schemeSet1[4], d3.schemeSet1[3], d3.schemeSet1[2], d3.schemeSet1[1], d3.schemeSet1[0]]; // Give this matrix to d3.chord() var chords = d3.chord()(data) var rib = d3.ribbon().radius(150) .startAngle(1) // Use of ribbon.endAngle() function .endAngle(5) svg.datum(chords) .append("g") .selectAll("path") .data(function (d) { return d; }) .enter() .append("path") .attr("d", rib) .style("fill", function (d) { return (colors[d.source.index]) }) .style("stroke", "black"); </script> </center> </body> </html> |
Output:
Whether you’re preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, zambiatek Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we’ve already empowered, and we’re here to do the same for you. Don’t miss out – check it out now!




