饼图在更新时不断自我调整 - D3

Pie chart keeps adjusting itself when updating - D3

我有点小问题。

我正在使用 D3 为我正在构建的应用程序制作饼图。我基本上它可以正常工作,但我对图表的一个方面感到恼火。我已经改编了此处的图表:http://jsfiddle.net/vfkSs/1/ 以用于我的应用程序。

这里传入的数据:

data = data ? data : { "slice1": Math.floor((Math.random()*10)+1), 
                       "slice2": Math.floor((Math.random()*10)+1), 
                       "slice3": Math.floor((Math.random()*10)+1), 
                       "slice4": Math.floor((Math.random()*10)+1) };

但是在这个文件的某个地方,这些切片是按值排序的,这不是我想要的。

此图表的问题在于,当它更新时,它会调整图表的所有部分以保持它们按升序排列。例如,馅饼的最大部分总是在右边,最小的部分在左边。我希望它们保持数据传入时的顺序。

这有点埋在 documentation 中。

pie.sort([comparator])

If comparator is specified, sets the sort order of data for the layout using the specified comparator function. Pass null to disable sorting.

(加粗我的)

因此,将您的 .pie 调用修改为:

var cv_pie = d3.layout.pie().sort(null).value(function (d) { return d.value });

已更新 fiddle