Javascript 如何将条形图重新排序到其中';s在d3js中排序后的初始状态

Javascript 如何将条形图重新排序到其中';s在d3js中排序后的初始状态,javascript,d3.js,Javascript,D3.js,我已经做了一个实验,你可以将数据从最大值排序到最小值,这很好,但是当你取消选中这个框时,它会按字母顺序排序 function(a, b) { return d3.ascending(a.name, b.name); } 我不知道该用什么来替换它,这样它就可以在您选中该复选框之前恢复到初始状态,任何帮助都将不胜感激 首先,按照名称的正确顺序创建一个数组: var sortIndex = data.map(function(d){ return d.name}); 然后使用它进行排序: func

我已经做了一个实验,你可以将数据从最大值排序到最小值,这很好,但是当你取消选中这个框时,它会按字母顺序排序

function(a, b) { return d3.ascending(a.name, b.name); }

我不知道该用什么来替换它,这样它就可以在您选中该复选框之前恢复到初始状态,任何帮助都将不胜感激

首先,按照
名称的正确顺序创建一个数组:

var sortIndex = data.map(function(d){ return d.name});
然后使用它进行排序:

function(a, b) { 
    return sortIndex.indexOf(a.name) - sortIndex.indexOf(b.name); 
}
这是您的最新plunker: