在用了 FineBI 一段时间,经常会应用到排名的场景基本上都是固定式静态的,如下图 Top 10 :

实现这个排名呈现方式非常简单(我就不在这里说实现的操作了)。
在工作中你会遇到这样的场景吗?老板临时说要显示前五大,你能快速将前十大改为前五大吗?
对于这个场景,我就想:我给老板一个数字输入框,你要前几大由你说的算。
但是怎么实现呢?以下是我实现的操作方法,提供各位读者参考。
附数据表资料提供大家练习。 各城市合同金额总表.xlsx (12.99 K)
首先:在“数据准备”上传 Excel 数据,城市合同金额表。

接下来就是新建仪表板,先选择过滤组件->数值下拉。

对过滤组件设定:自定义值列表打上勾,修改标题:Top N,完成点击确定,输入数字的过滤组件就完成了。

完成效果。(此为动态过滤的输入框)

第二个组件,是做一个排名的柱形图,并与刚才通过刚才的 Top N 过滤显示前 N 大城市。
同样,先新建组件,从数据列表选择城市合同金额表,进行组件编辑界面。在做仪表板之前,先要新建一个指标(这个是关键的一步),这里使用到 RANK_ANLS 函数 ,目的是产生一列排名数据。
第一步:1. 点+ 添加计算字段;2. 输入字段名称;3 输入相应的函数;4 确定。

第二步:在组件中,将城市拖到横轴、回款金额拖到纵轴、排名拖到结果过滤器。

第三步:点击“交换横纵轴的字段”

第四步:选择城市,设定降序-回款金额(求和)显示。

第五步:这又是关键的一步。
1.设定城市过滤条件;2.增加过滤条件设定如下图。这里主要是把 排名由 Top N 过滤组件做动态过滤。

大功告成,大家一起看结果是不是老板想要的?
在 Top N 输入个 5,前五大就马上出来了。

|