【发布时间】:2014-01-07 13:50:07
【问题描述】:
我正在尝试使用 sort 函数按升序对表中的行进行排序。
var forsort = d3.keys(csv[0]).filter(function(key) {
return key != "name";
});
var tr = d3.selectAll("tbody tr");
d3.selectAll("thead th").data(forsort).on("click", function(k) {
tr.sort(d3.ascending);
});
由于某种原因,18 行中只有 3 行被交换(准确地说是第 2、3、11 行),第 2 行是第一个可排序的行。
谁能告诉我问题出在哪里?
【问题讨论】:
-
您能否创建一个 jsfiddle(或至少发布您的数据和所有代码)以便更轻松地找出问题所在?
-
这是代码:jsfiddle.net/rkr2/Ba8D8
data: name,bh,md,sp,bm AL,152,10,7,0 AO,82,9,8.5,-1 AP,481,11,7.5,0.8387097 BE,14,-1,8.8,0.5806451 DI,14,13,7.7,0.4285714 EC,801,-1,7.7,0.9032258 ED,-1,-1,8.2,0.5517241 EF,-1,9,8.8,0 EM,723,7,7.2,-1 JF,-1,4,9.5,0 KGS,111,15,6.6,0 KS,-1,15,8.8,0 MM,-1,8,7.2,0 MO,439,12,8,0.6774194 PC,27,-1,8.4,-1 PO,0,12,8.8,0.5806451 TL,2312,6,9.2,-1 VM,-1,9,6.6,0
标签: javascript html d3.js html-table