我想用raphaeljs插件绘制动画饼图; 我在g.raphaeljs库中找到了一个饼图功能(Paper.piechart),这是他们的相关演示
http://g.raphaeljs.com/piechart2.html
但我不知道如何在不重新渲染情节的情况下为此图表设置动画(当执行某个事件时) 喜欢这个演示:
http://raphaeljs.com/growing-pie.html 画 换句话说,我想将第二个演示的动画选项添加到第一个演示。 任何人都可以帮助我吗?
答案 0 :(得分:0)
这是拉斐尔饼图的工作演示,该图表在创作时会增长并且对鼠标悬停具有切片反弹效果:
<div id="pie"></div>
<script>
var paper = Raphael("pie", 400, 200);
var pie = paper.piechart(
100, // pie center x coordinate
100, // pie center y coordinate
90, // pie radius
[18.373, 18.686, 2.867, 23.991, 9.592, 0.213], // values
{
legend: ["Windows/Windows Live", "Server/Tools", "Online Services", "Business", "Entertainment/Devices", "Unallocated/Other"]
}
);
//animation - grow pie
pie.each(function(){
this.sector.scale(0, 0, this.cx, this.cy);
this.sector.animate({ transform: "s1 1 " + this.cx + " " + this.cy }, 1000, "bounce");
});
// Bounce pie slice
pie.hover(function () {
this.sector.stop();
this.sector.animate({ transform: "s1.1, 1.1 " + this.cx + " " + this.cy }, 500, "bounce");
this.label[0].attr({ r: 7.5 });
this.label[1].attr({ "font-weight": 800 });
},
function () {
this.sector.animate({ transform: "s1 1 " + this.cx + " " + this.cy }, 500, "bounce");
this.label[0].animate({ r: 5 }, 500, "bounce");
this.label[1].attr({ "font-weight": 400 });
})
</script>