You need to enable JavaScript to run this app.
导航
排序
最近更新时间:2024.11.27 11:00:15首次发布时间:2021.02.23 10:41:59

1. 概述

排序组件支持对图表的横轴、纵轴及图形中的维度字段进行排序。DataWind 提供了具有排序功能的组件,排序方式有升序、降序及手动排序三种方式。日期字段只支持升序和降序两种排列方式,其他字段可以自定义字段值的顺序。
示例
Image

2. 快速入门

2.1 表格排序

第一步:下拉单选排序的依据字段,并选择排序方式;
Image
第二步:点击「应用」。
Image

2.2 图表排序

第一步:下拉单选排序的依据字段,并单选排序方式;
Image
第二步:点击「应用」。
Image

3. 功能介绍

3.1 表格排序

3.1.1 表头排序

表格提供表头排序的方式进行单条件排序。鼠标悬浮到表头的字段处,点击排序按钮即可轻松配置排序。
Image

3.1.2 排序配置

表头排序相当于快捷的排序配置,点击表头的排序按钮,将默认在「排序」中生成一条排序规则。同时「排序」支持多条件排序,即可设置多个排序规则同时生效。 示例:订单类型按照升序排序,且相同订单类型内,付费日期降序排序。而后修改为,先按照付费日期降序,后按照订单类型升序进行排序。
第一步:对订单类型进行降序排序;
Image
第二步:增加排序规则,付费日期降序排序。
Image
第三步:通过调序按钮调整以上排序规则的先后顺序,下移「订单类型升序」或者上移「付费日期降序」,此处采用第一种方式。
Image
第四步:点击「应用」。
Image

3.2 图表排序

3.2.1 数值排序

针对 X、Y 轴类的图表,当数据面板上只有一个维度字段的时候,可进行数值排序。排序依据为轴维度字段本身或数据面板上的任意指标字段。
Image

3.2.2 维度轴排序

针对 X、Y 轴类的图表,当数据面板上有多个维度字段的时候,可进行维度轴排序。排序依据为轴维度字段本身或数据面板上的任意指标字段。
Image

3.2.3 图例排序

针对XY轴类的图表,当数据面板上有多个维度字段,或饼图、散点图等没有轴维度的图表可进行图例排序。排序依据为「维度-图例」或数据面板上的任意指标字段。每一个维度上的数据点,都将按照图例的统一顺序进行排序。
Image
图例排序计算逻辑:会按照图例的维度根据指标计算逻辑进行计算,计算之后直接排序,如下图所示:

横轴维度

BU 名称

图例

产品名称

指标计算

sum(收入)

图例排序计算逻辑

产品名称根据收入求和的数据升序排序

Image

举例

下图产品名称得到如上所述的排序,在每个维度(BU名称)中会在一个柱子上呈现多个产品名称,就按照上述表格的顺序,即右侧图例的排序从上到下排列

Image

3.3 透视表排序

默认情况下,透视表的排序有两个需要选择的项,第一个是选择排序字段,第二个是选择排序依据。
排序字段决定排序的计算范围,排序依据则决定依据哪个字段的结果来进行排序,且只会对当前选择的排序字段进行排序,不会影响其他维度的顺序。
Image

场景一:对行维度排序

例1:排序字段选择「一级渠道」,排序依据选择「付款金额」,此时排序会先计算每个「一级渠道」枚举值的付款金额之和,然后按照这个和,对「一级渠道」进行排序。
例如所有 "营销活动" 的「付款金额」之和以及所有 "官网及应用商店" 的「付款金额」之和;并且排序仅会排「一级渠道」枚举值的顺序,不会排其他维度的顺序,因此排完后每个「一级渠道」的「付款金额」仍然是乱序。
Image
例2:排序字段选择「二级渠道」,排序依据选择「付款金额」,此时排序会先计算每个「二级渠道」的「付款金额」之和,之后再对每个「一级渠道」下的「二级渠道」进行排序。
Image
且此次排序仅调整每个「一级渠道」下「二级渠道」的顺序,因此不管选择升序或者降序,都不会影响「一级渠道的顺序」。
Image
例3:排序字段选择「付款方式」,排序依据选择「付款金额」,此时会先计算每个「付款方式」的「付款金额」之和,之后再对每个「二级渠道」下的「付款方式」进行排序(由于「付款方式」没有下一级维度,因此「付款金额」之和就对应它本身的值)。
同时排序仅会影响每个「二级渠道」下「付款方式」的顺序,不会影响「一级渠道」和「二级渠道」枚举值的顺序。
Image
总结:通过上面三个例子可以总结透视表排序的逻辑,透视表排序会按照排序字段
枚举值粒度
,来计算
排序依据字段之和,之后在排序字段的上一级维度范围
内,对
排序字段的枚举值
进行排序。

场景二:对列维度进行排序

当透视表中添加了列维度时,可以在排序字段中选择列维度字段,对列维度字段的排序与行维度的规则相同
如排序字段选择「付款方式」,排序依据选择「付款金额」,此时会先计算每一个「付款方式」的「付款金额」之和,之后再按照这个和来进行排序,这一点可以通过添加列总计来看出,也就先求每一列的总和,之后按照总和进行排序
Image

场景三:快捷排序

透视表的快捷排序与普通表格的排序有所不同,快捷排序生效后会在「分析-排序」功能中自动添加一条排序配置,可以通过这里查看到排序的生效情况:
仅有行维度时的快捷排序
当对指标或最后一个行维度进行排序时,排序的结果均参考对最后一个行维度进行排序,排序结果可参考上方场景一的例3
Image
当对其他维度进行排序时,排序的结果可以参考上方场景一的例1和例2。
Image
有列维度时的快捷排序
当透视表中添加了列维度时,由于列维度可能产生多列,当使用快捷排序时会按照当前选中的这一列来进行排序,因此快捷排序在「分析-排序」中生成的排序会额外添加筛选依据栏,即代表是按照哪一列进行的排序。
当选中的排序字段是指标时,如下图中选中的是「付款方式」中的"支付宝APP"列进行的快捷排序,此时会在生成的排序配置中,添加"支付宝APP"的筛选依据,最后排序的结果也是按照这一列做的排序。
排序的方法可以参考上方场景一的例3,即对每一个「一级渠道」中的「二级渠道」,按照"支付宝APP"这一列的「付款金额」来做排序。
Image
当选中的排序字段是维度时,排序结果与前文场景一的例1和例2相同,按照选中维度对应行的结果总和进行排序。
Image