D3.js V5缓动函数

D3.js V5缓动函数

在这里插入图片描述
参考地址:https://github.com/d3/d3-ease/blob/v1.0.5/README.md#_ease
代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>使用缓动函数</title>
    <script src="./d3.js"></script>
</head>
<body style="background-color: rgb(0, 0, 0)">
    <script>
        var data = [
            {name:'Linear',fn:d3.easeLinear},
            {name:'Cubic',fn:d3.easeCubic},
            {name:'CubicIn',fn:d3.easeCubicIn},
            {name:'Sin',fn:d3.easeSin},
            {name:'SinIn',fn:d3.easeSinIn},
            {name:'Exp',fn:d3.easeExp},
            {name:'Circle',fn:d3.easeCircle},
            {name:'Back',fn:d3.easeBack},
            {name:'Bounce',fn:d3.easeBounce},
            {name:'Elastic',fn:d3.easeElastic},
            {name:'PolyIn',fn:d3.easePoly.exponent(4)},
            {name:'Custom',fn:function(t){return t*t}},
        ]  
        /* 创建一个序数比例尺  创建10个颜色的数组 */
        var colors = d3.scaleOrdinal(d3.schemeCategory10)
        d3.select('body').selectAll('div')
            .data(data)
            .enter()
            .append('div')
            .style('top',(d,i)=>{
                return (i*30+30) + 'px'
            }) 
            .style('left','30px')
            .style('position','absolute') 
            .style('width','70px')
            .style('background-color',(d,i)=>{
                return colors(i)
            })
            .style('color','white')
            .text((d)=>{
                return d.name
            })
        /* 因为this的指向  这里不要用箭头函数了 */    
        d3.selectAll('div').each(function(d){
            d3.select(this)
                .transition()
                .delay(500)
                .ease(d.fn)
                .duration(3000)
                .style('left','330px')
        })    
    </script>
</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

X01动力装甲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值