當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


d3.js linkRadial()用法及代碼示例

這個d3.linkRadial()方法 r返回一個帶有徑向切線的新鏈接生成器。現在是通常在根居中且子項從根向外展開時使用。

用法:

var link = d3.linkRadial()
    .angle(function(d) { return d.x; })
    .radius(function(d) { return d.y; });

參數:此函數不帶任何參數。

返回值:此方法返回一個新的鏈接生成器。

例:



HTML

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
 
    <script src=
        "https://d3js.org/d3.v5.min.js">
    </script>
</head>
 
<body>
 
    <h1 style="text-align:center; color:green;">
        GeeksforGeeks
    </h1>
 
    <h3 style="text-align:center;">
        D3.js | linkRadial() Method
    </h3>
 
    <center>
    <svg id="gfg" width="200" height="200"></svg>
    </center>
 
    <script>
 
        var data = [
            {source:[100,25], target:[175,175]}, 
            {source:[100,25], target:[25,175]},
            {source:[100,25], target:[125,175]},
            {source:[100,25], target:[75,175]},
            {source:[100,25], target:[225,175]},
            {source:[100,25], target:[275,175]},
            {source:[100,25], target:[125,175]}]; 
       
        // Radial link generator
        var link = d3.linkRadial()
                    .angle(d => xAngleScale(d[0]))
                    .radius(d => yRadiusScale(d[1]));
 
        var xAngleScale = 
        d3.scaleLinear().domain([25,175]).range([Math.PI, Math.PI *2 ]);
        var yRadiusScale = 
        d3.scaleLinear().domain([25,175]).range([0, 80]);
       
        //Adding the link paths
        d3.select("#gfg")
        .selectAll("path")
        .data(data)
        .join("path")
        .attr("d", link)
        .classed("link", true)
        .attr("transform", "translate(100,100)");
 
    </script>
</body>
 
</html>

輸出:




相關用法


注:本文由純淨天空篩選整理自taran910大神的英文原創作品 D3.js linkRadial() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。