用d3.js点击爆炸饼图

问题描述:

有人可以指示我使用任何资源来制作爆炸饼图,点击d3.js,就像我们在kendo ui中有饼图一样。我不能使用剑道,因为我有Kendo UI无法实现的非常具体的要求。我制作了具有所有必需功能的饼图,但无法真正找到任何资源使其在点击时爆炸。用d3.js点击爆炸饼图

在此先感谢。

我强烈建议开发新的可视化D3使用时Michael Bostock's examples gallery(他是D3的作者)为起点。

例如,使用代码示例:http://bl.ocks.org/mbostock/3887235

编辑:要添加“爆炸”,只需对每个段应用一点翻译。

var explode = function(x,index) { 
    var offset = (index==5) ? 80 : 0; 
    var angle = (x.startAngle + x.endAngle)/2; 
    var xOff = Math.sin(angle)*offset; 
    var yOff = -Math.cos(angle)*offset; 
    return "translate("+xOff+","+yOff+")"; 
} 

g.append("path") 
    .attr("d", arc) 
    .style("fill", function(d) { return color(d.data.age); }) 
    .attr("transform", explode); 

看到它在的jsfiddle:http://jsfiddle.net/zephod/L4pyk79e/2/

+0

迈克的画廊没有爆炸饼图的例子。我的d3排行榜的起点是他的画廊。我已经对现有示例进行了很多定制改进以满足我的需求,但我确实在为爆炸派努力奋斗 – noctni8 2014-11-23 14:37:24

+0

已更新,需要进行调整。 – 2014-11-23 14:57:33

+0

谢谢你的队友....你救了我的一天 – noctni8 2014-11-23 15:01:28

你可以使用D3pie它是基于D3:http://d3pie.org/

+0

谢谢....我会尽量this..but我可以添加自定义功能,以图表,如果我使用这个库? – noctni8 2014-11-23 14:38:58

+0

这取决于你想要完成的课程,你只提到“爆炸”。但它具有点击,鼠标悬停和鼠标移出事件的回调功能,因此您可以将自己的行为附加到这些事件上。 – iH8 2014-11-23 14:45:27