我在使用D3.js.nest()和.roll up()从我的数据数组获取一致的退货/订单时遇到了问题.当使用新名称或类似名称更新数组时,正确的编号帐户是正确的,但我无法设置从最近添加的名称到添加的姓氏的顺序.当添加一个新名称或添加另一个类似名称时,我会得到一个随机顺序.下面是我最近回报的一个例子.我正在寻求实现的顺序是从下到上的固定顺序(反向顺序)显示;即,字段8、字段7、字段6、字段5……字段1.我提供了我的代码的一个示例.我希望这一咨询请求是有意义的.下面是我的回答:
[{
"num": 65,
"value": "Field-1"
}, {
"num": 64,
"value": "Field-8"
}, {
"num": 63,
"value": "Field-7"
}, {
"num": 62,
"value": "Field-7"
}, {
"num": 61,
"value": "Field-8"
}, {
"num": 60,
"value": "Field-6"
}, {
"num": 59,
"value": "Field-6"
}, {
"num": 58,
"value": "Field-7"
}, {
"num": 57,
"value": "Field-8"
}, {
"num": 56,
"value": "Field-5"
}, {
"num": 55,
"value": "Field-4"
}, {
"num": 54,
"value": "Field-4"
}, {
"num": 53,
"value": "Field-4"
}, {
"num": 52,
"value": "Field-5"
}, {
"num": 51,
"value": "Field-3"
}, {
"num": 50,
"value": "Field-5"
}, {
"num": 49,
"value": "Field-5"
}, {
"num": 48,
"value": "Field-1"
}, {
"num": 47,
"value": "Field-5"
}, {
"num": 46,
"value": "Field-4"
}, {
"num": 45,
"value": "Field-4"
}, {
"num": 44,
"value": "Field-1"
}, {
"num": 43,
"value": "Field-5"
}, {
"num": 42,
"value": "Field-5"
}, {
"num": 41,
"value": "Field-3"
}, {
"num": 40,
"value": "Field-1"
}, {
"num": 39,
"value": "Field-5"
}, {
"num": 38,
"value": "Field-5"
}, {
"num": 37,
"value": "Field-5"
}, {
"num": 36,
"value": "Field-5"
}, {
"num": 35,
"value": "Field-4"
}, {
"num": 34,
"value": "Field-1"
}, {
"num": 33,
"value": "Field-3"
}, {
"num": 32,
"value": "Field-2"
}, {
"num": 31,
"value": "Field-5"
}, {
"num": 30,
"value": "Field-1"
}, {
"num": 29,
"value": "Field-1"
}, {
"num": 28,
"value": "Field-1"
}, {
"num": 25,
"value": "Field-1"
}, {
"num": 24,
"value": "Field-2"
}, {
"num": 22,
"value": "Field-2"
}, {
"num": 21,
"value": "Field-1"
}, {
"num": 19,
"value": "Field-4"
}, {
"num": 17,
"value": "Field-3"
}, {
"num": 16,
"value": "Field-3"
}, {
"num": 15,
"value": "Field-1"
}, {
"num": 11,
"value": "Field-2"
}, {
"num": 10,
"value": "Field-3"
}]
$(function () {
var chartData=getListData("ViewsTest");
var data=[];
for(var i=0;i<chartData.length;i++){
data.push({"num":chartData[i].ID, "value":chartData[i].Views});
}
initChart(data);
});
function initChart(chartData){
data = chartData;
var baseCount = d3.nest()
.key(function(d) { return d.value; })
.rollup(function(v) { return v.length; })
.entries(data);
for(var i =1; i<= baseCount.length; i++){
$('.vCount').append($('<div/>', { id: 'r' + i, 'class' : 'ansbox'}))
}
var mainDiv = d3.select("body")
.attr("id", "main");
mainDiv.selectAll(".ansbox")
.data(baseCount)
.append("div")
.attr("class", function(d,i) { return "views"})
.html(function (d) { return d.key + " : " + d.values ; });
}