我遇到的情况是,crossfilter数据集很大,大约有2000行。在D3图表上渲染交叉滤波器数据需要一些时间,尤其是在较旧的计算机和移动平板电脑上。有没有办法切片交叉过滤器数据,以便D3图形可以逐步呈现UI上的交叉过滤器数据?在调用dc.js渲染对象时,crossfilter对象已经加载了数据 - 就像在这个伪代码中一样 -
var cfGroup, cfDim;
init: function()
{
var ndxObj = crossfilter(incomingData);
cfDim = ndxObj.dimension(//pick a dimension);
cfGroup = cfDim.group(){//group function};
var sliderChart = dc.barChart("#lineslider-id");
}
// this function is called every time the page is loaded or switched to
renderChart : function()
{
// How do I slice the CF object and call redraw() successively?
sliderChart.width(20).height(40).dimension(cfDim).group(cfGroup);
sliderChart.redraw();
}
答案 0 :(得分:0)
您可以尝试使用
crossfilter.add(records)
逐步添加数据集中的记录。
请参阅https://github.com/square/crossfilter/wiki/API-Reference#crossfilter_add