从“筛选框”以外的切片应用仪表板筛选器

时间:2017-11-08 09:45:15

标签: javascript filter slice apache-superset

我想使用滤镜盒以外的切片将滤镜应用到我的信息中心。

对于我的数据集,它的结构类似于树,我已经将d3可视化库中的缩进树修改为一个看起来像这样的切片:

我的树切片有分支和级别,表示不同的路径,以及包含我的值的结束节点。 enter image description here

现在,我想使用此片段来过滤我的信息中心。特别是,当用户点击我的一个终端节点时,我想删除任何以前的值并改为应用该节点的值。

我尝试将节点的路径和值表示为字符串,并像常规Filter Box中那样使用它。但是,通常情况下我会遇到很长的字符串,导致用户体验不佳。

我查看了Filter Box实现,看看我是否能找到用于更改过滤器设置的方法。然而,这似乎是一个非常复杂的过程,在我的切片中重新实现Filter Box似乎是错误的方法。

是否有更改仪表板过滤器并应用它的通用方法?

1 个答案:

答案 0 :(得分:0)

"表"可视化是目前除了" Filter Box"之外的唯一其他可视化。已经设置为(可选)发出仪表板过滤器事件。以下是它的实施方式:

https://github.com/apache/incubator-superset/blob/master/superset/assets/visualizations/table.js#L130

可视化界面是一个接收slicepayload参数的函数。 slice对象公开了addFilerremoveFilter,如上例所示。

因此,使用切片对象设置可视化对象以发出正确的过滤事件。