📅  最后修改于: 2023-12-03 15:00:17.863000             🧑  作者: Mango
D3.js是一个基于数据的JavaScript库,它允许您通过数据来操作文档。其中D3.js Chords API是D3.js库中的一个子库,用于绘制弦图。本篇文章将提供D3.js Chords API的完整参考,帮助程序员更好地使用该库。
d3.chord()
函数返回了一个用于布局弦图的对象。可以使用 chord(matrix)
方法来生成一个由给定矩阵描述的弦图布局。
d3.chord()
const matrix = [
[11975, 5871, 8916, 2868],
[ 1951, 10048, 2060, 6171],
[ 8010, 16145, 8090, 8045],
[ 1013, 990, 940, 6907]
];
const chordLayout = d3.chord()
.padAngle(0.05)
.sortSubgroups(d3.descending)(matrix);
d3.ribbon()
函数返回了一个对象,用于绘制弦图内部的带状形。
d3.ribbon()
const innerRadius = 180;
const outerRadius = 200;
const ribbonPath = d3.ribbon()
.radius(innerRadius)
.startAngle(Math.PI/2)
.endAngle(Math.PI*3/2)
.source({
startAngle: Math.PI*5/4,
endAngle: Math.PI*7/4,
radius: outerRadius
})
.target({
startAngle: Math.PI/4,
endAngle: Math.PI*3/4,
radius: outerRadius
});
const ribbon = svg.append("path")
.attr("d", ribbonPath)
.attr("fill", "red");
d3.group()
函数返回了一个对象,用于绘制弦图的群组。
d3.group()
const innerRadius = 180;
const outerRadius = 200;
const groupPath = d3.group()
.startAngle(Math.PI/2)
.endAngle(Math.PI*3/2)
.innerRadius(innerRadius)
.outerRadius(outerRadius);
const group = svg.append("path")
.attr("d", groupPath)
.attr("fill", "blue");
在此阅读完整的D3.js Chords API文档。