我已经获得了一个有序数据,我希望使用DC.js中的折线图进行可视化。数据看起来是这样的:DC.js按顺序排序的原始排序图表
var data = {points:[{x:"A", y:23}, {x:"C", y:50}, {x:"B", y:40}]}
这只是正常使用标准DC.js:
var chart = dc.lineChart("#chart");
var ndx = crossfilter(data.points);
var ordinal_dimension = ndx.dimension(function (d) {
return d.x;
})
var loan_dimension = ordinal_dimension.group().reduceSum(function (d) {
return d.y;
});
chart
.width(800)
.height(600)
d3.scale.ordinal()
.xUnits(dc.units.ordinal)
.interpolate('linear')
.renderArea(true)
.clipPadding(10)
.dimension(ordinal_dimension)
.group(loan_dimension)
chart.render();
但是,什么情况是,在X轴上的顺序得到改变;而不是“A”,“C”,“B”现在是“A”,“B”,“C”。
为了扭转排序,我试图做这样的事情:
var x_scale = $.map(data.points, function(values) {
return [values.x];
});
var x = d3.scale.ordinal()
.domain(x_scale)
但是,这完全打乱了图表。看到这里的例子:https://jsfiddle.net/ms9j4x00/7/
是否有任何方法来保留在DC.js的顺序?
辉煌,为我工作! –