我正在开发d3.js饼图应用程序。我正在尝试开发功能,当您单击图例矩形时,它会切换切片的开/关以及图例矩形内的填充。

尽管存在一个函数未定义的错误-但是我不确定为什么在定义函数时会发生此错误。

http://jsfiddle.net/Qh9X5/3261/

this.piedata = methods.pie(dataSet);
console.log("animate slice2", this.piedata);

最佳答案

这行(233)将您的currentDataSet从一个Array变成了一个Object

var currentDataSet = jQuery.extend(true, {}, methods.currentDataSet);


d3然后在尝试调用map上的currentDataSet函数时抱怨,因为它期望一个数组。

您需要更改它以将Array作为第二个参数:

var currentDataSet = jQuery.extend(true, [], methods.currentDataSet);

10-05 22:34