【问题标题】:How do I clockwise animate Pie Chart onLoad in SVG如何在 SVG 中顺时针动画饼图 onLoad
【发布时间】:2014-05-16 19:46:14
【问题描述】:

我被饼图困住了,它应该在加载时顺时针动画。这是我的pie chart fiddle

例如,我需要这个动画来处理 brezier 曲线路径,

<path d="M 276 63.03 C 329.93 63.03 381.86 78.24 421.4 105.63 L 276 222.79 M 276 63.03" />

我也知道,可以使用 snap.svg 库来实现,但在这种情况下无法锻炼。

感谢任何帮助。

提前致谢!

【问题讨论】:

    标签: svg pie-chart snap.svg svg-animate


    【解决方案1】:

    您可以使用嵌套的animate 并以渐进式延迟更改某些属性。

    在本例中,我将笔触 g 放置在每个切片的填充 g 内,并在其中添加了一个 animate 元素,每个动画开始 0.5 秒。我为opacity 属性设置了动画(因此我为每个元素添加了opacity="0" 属性;您可以将其替换为另一个属性)。这是第二片:

    <g id="pieFillSection2" opacity="0" style="fill: yellow;fill-opacity: 1.0; stroke: none" transform="matrix(1,0,0,1,0,0)" >
        <animate attributeName="opacity" from="0" to="1"
                 begin="0.5s" dur="1s" fill="freeze"/>
        <path d="M 421.4 105.63 C 483.64 148.74 505.87 215.26 478.05 275.16 C 450.23 335.05 377.64 377 293.04 382.05 L 276 222.79 M 421.4 105.63" />
        <g class="pieStroke" id="pieStrokeSection2" style="stroke-width: 1.0;stroke: rgb(128,128,128);stroke-opacity: 1.0; fill: none" transform="matrix(1,0,0,1,0,0)" >
            <path d="M 421.4 105.63 C 483.64 148.74 505.87 215.26 478.05 275.16 C 450.23 335.05 377.64 377 293.04 382.05 L 276 222.79 M 421.4 105.63" />
        </g>
    </g>
    

    查看更新后的JSFiddle

    【讨论】:

    • 感谢您的回复。我以前试过这个。但需要类似于this 的动画。等待回复!
    猜你喜欢
    • 1970-01-01
    • 2019-11-22
    • 2019-08-20
    • 1970-01-01
    • 2019-06-14
    • 2016-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多