1

是否可以将过滤器应用于特定维度?我需要通过单击按钮获取应用于一组 dc.js 图表的所有过滤器。

4

2 回答 2

10

我做了类似的事情。但是,每次通过附加渲染器过滤图表时,我都没有使用按钮单击来获取值。

您正在寻找的功能是filters()

IE

  yourChart.renderlet(function(chart) {
            dc.events.trigger(function() {
                console.log(yourChart.filters())
            });
        })

这将记录应用于图表维度的过滤器。

于 2013-07-11T13:21:36.683 回答
0

您可以使用 chart.filterPrinter() 函数获取所选过滤器的值,该函数返回一个返回所选过滤器的字符串版本的函数。以下代码段将返回图表当前选定过滤器的字符串版本。

chart.filterPrinter()(chart.filters()) 

您甚至可以提供自己的 filterPrinter 功能进行自定义。

您可以定义 on('filtered' 函数,该函数在每次图表上的过滤器值更改时触发。此函数接收图表作为第一个参数,并将当前过滤器选择/取消选择作为第二个参数。但是,您可以获得使用 chart.filters() 函数的当前选定过滤器的完整列表。

myChart.on('filtered', function(chart, filter) {
    var sel = chart.filterPrinter()(chart.filters());
    console.log('Selected Filters are: ' + sel);
});
于 2018-05-24T12:08:08.540 回答