dc.js向xAxis标签添加计数

时间:2018-03-10 04:33:26

标签: dc.js

这与dc.js boxPlot example有关。有没有一种简单的方法可以为每个xAxis标签添加数据值?

exp-1 [10]

我知道我可以通过以下方式配置xAxis标签:

chart.xAxis().tickFormat(function(k) {return k + ' []';});

但我只能访问密钥,而不是值计数。

1 个答案:

答案 0 :(得分:1)

我会这样做,方法是保存从键到数字的映射,在渲染或重绘图表之前刷新它:

var counts = {};
function get_counts() {
    speedArrayGroup.all().forEach(function(kv) {
        counts[kv.key] = kv.value.length;
    });
}
chart.on('preRender', get_counts)
    .on('preRedraw', get_counts);

现在我们确信无论何时绘制轴都会初始化counts,我们可以在tickFormat中使用它:

chart.xAxis().tickFormat(function(k) {return k + ' [' + counts[k] + ']';});

标准示例不太有趣,但它有效:

x axis with counts