我正在使用dc.js库来生成图表,我希望能够在应用过滤器时检索过滤后的数据。
答案 0 :(得分:4)
创建另一个维度,然后在其上调用dimension.top(Infinity)
。
https://github.com/square/crossfilter/wiki/API-Reference#dimension_top
您将需要额外的尺寸,因为尺寸不会观察到自己的滤镜,只会观察其他尺寸的滤镜。
然后你可以使用例如如果需要,可以d3.csv.format
生成文字。
答案 1 :(得分:0)
在d3.js的版本4 d3.csv.format
中不存在,必须改为使用d3.csvFormat
。
const cf = crossfilter(data);
csvDimension = cf.dimension( x => x );
csvContent = d3.csvFormat(csvDimension.top(Infinity), [field, field2, ...]);
正如Gordon所说,csvDimension必须是一个新尺寸,才能应用过滤器。