Chord layout.
From D3 in Depth book by Peter Cook.
| license: gpl-3.0 | |
| height: 520 | |
| border: no |
Chord layout.
From D3 in Depth book by Peter Cook.
| <!DOCTYPE html> | |
| <meta charset="utf-8"> | |
| <head> | |
| <title>Chord layout</title> | |
| </head> | |
| <style> | |
| svg path { | |
| fill: #ddd; | |
| stroke: #ccc; | |
| opacity: 0.8; | |
| } | |
| </style> | |
| <body> | |
| <svg width="500" height="500"> | |
| <g transform="translate(250, 250)"></g> | |
| </svg> | |
| <script src="https://cdnjs.cloudflare.com/ajax/libs/d3/4.2.2/d3.min.js"></script> | |
| <script> | |
| var chordGenerator = d3.chord() | |
| .sortSubgroups(d3.ascending) | |
| .padAngle(0.04); | |
| var ribbonGenerator = d3.ribbon().radius(200); | |
| var data = [ | |
| [10, 20, 30], | |
| [40, 60, 80], | |
| [100, 200, 300] | |
| ]; | |
| var chords = chordGenerator(data); | |
| d3.select('g') | |
| .selectAll('path') | |
| .data(chords) | |
| .enter() | |
| .append('path') | |
| .attr('d', ribbonGenerator) | |
| </script> | |
| </body> | |
| </html> |