我已經使用dc.js創建數據表,我的要求是按照多列的降序對數據表進行排序。我使用了以下代碼:dc.js按多列對數據表進行排序
.order(d3.descending)
.sortBy(function (d) {
return d.columnOne;
return d.columnTwo;
});
請幫忙。
我已經使用dc.js創建數據表,我的要求是按照多列的降序對數據表進行排序。我使用了以下代碼:dc.js按多列對數據表進行排序
.order(d3.descending)
.sortBy(function (d) {
return d.columnOne;
return d.columnTwo;
});
請幫忙。
您傳遞給sortBy
的函數需要返回一個按照字典順序或數字順序排列所需行順序的鍵。
當您試圖在那裏返回兩個值是不可能的。相反,
columnOne
任何字符較低ASCII值的字符,或columnOne
這比在columnTwo
任何值,然後添加兩個 值方法之一,字符串:
.order(d3.descending)
.sortBy(function (d) {
return [d.columnOne,d.columnTwo].join('\x0');
});
方法有兩個,爲數字
.order(d3.descending)
.sortBy(function (d) {
return d.columnOne * 1e9 + d.columnTwo;
});
我提前道歉,如果有這個代碼的任何錯誤,因爲它是未經測試。
我不知道任何方式來做到這一點,如果一列是數字,另一列是字符串。
戈登的方法爲我工作,與未成年人調整
我的兩列分別爲一個字符串,一個數字,我用
.sortBy(function (d) {
return [d.columnOne,d.columnTwo].join();
});
該訣竅。謝謝戈登! :-)
你有什麼只會返回'd.columnOne'並忽略其餘。你是否在嘗試使用'd.columnTwo'作爲輔助排序鍵? – Gordon 2015-03-19 14:17:25
是啊,戈登,我想排序多列數據表,列屬性是'd.columnOne'和'd.columnTwo'。 – ali 2015-03-20 05:31:34