You need to enable JavaScript to run this app.
文档中心
智能数据洞察 DataWind

智能数据洞察 DataWind

复制全文
下载 pdf
可视化查询最佳实践
表计算函数说明及常用场景示例
复制全文
下载 pdf
表计算函数说明及常用场景示例

本文为您介绍表计算函数的一些常见表达式和经典使用示例——帕累托图,您可参考构建自己的表计算函数。

使用场景

表计算 即对已生成可视化图表做二次计算。在对基础数据做好汇总后,通过表计算可以对其中数据做二次运算处理。
当需要做二次计算时,可以使用表计算来省略一些下载导出再在 excel 中二次处理的步骤。比如对指标汇总求和、移动计算等。
产品目前支持可视化进行表计算配置,除此之外,也可以通过增加字段,编写表计算函数来实现。本文将对表计算函数进行介绍。同时,将介绍表计算函数的典型应用场景 帕累托图

常见表达式

说明

  • 表计算表达式仅能作为指标应用
  • along 的维度必须存在于查询面板中,否则报错

TOTAL( <指标> ) along ( <维度>)

含义: 根据维度求指标总额。该函数通常用于计算总额百分比的场景。
在下述案例中,即通过函数,根据省份维度计算出了每个省份的付款总额。为接下来计算 [每个城市的付款额] 占 [省份付款总额] 的比重,做好了准备。
函数示例TOTAL(sum([付款金额])) along([城市]),即求所有城市的付款金额总和。如图所示,当图表中存在其他维度(省份)时,则求各省份下所有城市的付款金额总和。
Image
总额百分比:以上述案例为例,计算sum([付款金额])/TOTAL(sum([付款金额])) along([城市]),可求得每个城市的付款总额占省份付款总额占比。
Image

RUNNING_SUM( <指标> )along( <维度> )

含义:依据维度滚动求和
示例RUNNING_SUM(sum([付款金额])) along([城市]),即依据城市滚动求和,如图所示,118,578 为临沧和丽江的付款金额和,174,599 为临沧、丽江和保山的付款金额和。当图表中存在其他维度(省份)时,则在各省份下,滚动求所有城市的付款金额总和。
Image
扩展:除RUNNING_SUM表达式外,还可使用RUNNING_AVG、RUNNING_MIN、RUNNING_MAX滚动求均值/最小值/最大值。例:RUNNING_AVG(sum([付款金额])) along([城市])
Image

RANK( <指标> ,'asc'/'desc') along( <维度> )

含义
返回分区中当前行的唯一排名。为相同的值分配相同的排名,允许并列。
使用可选的 “asc” 或者”desc” 参数指定升序或降序顺序。默认为降序。
示例
RANK(sum([利润]), 'asc') along([地区]),利用此函数,可以按照地区的利润求和进行升序排名,其中的排名有并列且会跳过并列名次,若销售额分别为(6, 7, 7, 9) 则排名结果为(1, 2, 2, 4)。
Image
查询结果如下:
Image

RANK_PERCENTILE( <指标> ,'asc') along( <维度> )

含义:依据维度,求指标的正序百分位(将asc替换为dsc求倒序百分位)
示例RANK_PERCENTILE(sum([付款金额]),'asc') along([城市]),即由低到高计算各个城市付款金额在所在的百分位。当图表中存在其他维度(省份)时,则求各省份下,各城市付款总额在多少百分位上。
Image

WINDOW_AVG( <指标> ,start,end) along( <维度> )

含义: 窗口函数。依据维度,计算指标从 start 到 end 窗口内所有指标值均值。如 start 为-1,end 为1,则计算指标沿着维度,从前一个到后一个窗口内,三个值的均值。
示例WINDOW_AVG(sum([付款金额]),-1,1) along([付费日期]),即依据付费日期,计算每天从前一天到后一天的付款金额均值。
Image
扩展: 除WINDOW_AVG表达式外,还可使用WINDOW_SUM、WINDOW_MIN、WINDOW_MAX窗口求和/最小值/最大值。
常用场景: 查看波动较大的数据趋势时,通过WINDOW_AVG平滑曲线,起到趋势线作用。
Image

LOOKUP( <指标> , 偏移量) along( <维度> )

含义: 依据维度,取当前指标位置+偏移量位置的指标值。如偏移量为-1,就是取当前指标前一位指标值。
示例LOOKUP(sum([付款金额]),-1) along([付费日期]),显示前一天的付款总额。
Image

经典应用

此处补充无法直接通过分析模块下的表计算功能配置实现,需要用到表计算函数的案例。

帕累托图

示例效果

帕累托图包含柱状图和折线图,其中柱降序展示指标数值,折线展示累计百分比。以各类别销售额为例,可以通过绘制帕累托图,显示顶层产品类别的累计占比,确定关键类别。
Image

操作步骤

  1. 以子类别的销售额帕累托图为例:选择图表类型为双轴图,将子类别作为维度,销售额作为主轴,确定子类别-销售额图表。
    Image
  2. 使用分析模块中的排序功能,对销售额降序。
    Image
  3. 创建累计占比字段,表达式:running_sum(sum([销售额])) along ([子类别])/total(sum([销售额])) along ([子类别]),为两个表计算函数的组合,通过 running_sum 函数滚动求和子类别的销售总额,除以所有子类别的销售总额,得出的结果为截至每个子类别的总额累计占比。
    Image
  4. 将累计百分比字段拖入指标次轴,形成帕累托图。可以使用左侧图表配置,调整坐标轴数据格式,将次轴数据格式改为百分比。
    Image
最近更新时间:2026.01.23 14:09:20
这个页面对您有帮助吗?
有用
有用
无用
无用