过滤

<< Click to Display Table of Contents >>

当前位置:  制作可视化报告 > 数据处理与分析 > 数据过滤 

过滤

复制链接

1. 概述

1.1 功能简介

过滤,是对明细数据设置过滤条件,支持对数据源下任意数据字段设置过滤条件,只留下满足过滤条件的数据用于制作报告。绑定了数据的组件都可以设置过滤条件。

1.2 应用场景

如果只想分析某一部分数据结果,例如希望查看省份维度下,指标销售额大于200的数据,可以使用该功能。

2. 操作步骤

1)先给组件绑定数据。

柱图的列上绑定“省份”字段,行上绑定“销售额”字段。

DataProcess_Filter2

2)点击组件右上方的工具栏上的DataProcess_Filter1按钮,在过滤弹窗中设置过滤条件。

在【过滤】选项卡页面,点击【点击添加过滤条件】,然后在下拉列表选择“销售额”字段,并设置条件“是大于”,值为字段值“200”。

DataProcess_Filter3

3)查看过滤结果。

过滤条件设置完成后,点击确定,关闭过滤弹窗,查看柱图的过滤结果。

DataProcess_Filter_Result

3. 功能说明

3.1 过滤条件设置

【选择字段】可以选择绑定数据集的所有字段。

【设置条件】设置字段满足某一条件,不同数据类型的数据字段包含的筛选条件不同,见下表。

数据类型

支持的语句

布尔

等于、空

日期、 时间、 时间戳、短整数、整数、字节、单精度、双精度、高精度

等于、大于、大于等于、小于、小于等于、介于、其中一个、空

长整数

在圆形内、在矩形内、等于、大于、大于等于、小于、小于等于、介于、其中一个、空

字符、字符串

 

等于、其中一个、空、包含、包含其中一个、开头为、结尾为

各语句功能说明:

空:代表缺失值(null值),通常使用“A不是等于空”来过滤掉字段A的缺失值。

等于:精准过滤出相等的值,例如“A是等于云南”,结果里面只保留云南的数据。

大于:过滤出大于某一参考值的所有数据,例如有原始数据1,2,3,4,5,条件“A是大于3”,结果为“4,5”。

大于等于:过滤出大于或等于某一参考值的所有数据,例如有原始数据1,2,3,4,5,条件“A是大于等于3”,结果为“3,4,5”。

小于:过滤出小于某一参考值的所有数据,例如有原始数据1,2,3,4,5,条件“A是小于3”,结果为“1,2”。

小于等于:过滤出小于或等于某一参考值的所有数据,例如有原始数据1,2,3,4,5,条件“A是小于等于3”,结果为“1,2,3”。

介于:过滤出介于某一范围内(报告边界值)的所有数据,例如有原始数据1,2,3,4,5,条件“A是介于2和4”,结果为“2,3,4”。

其中一个:输入或选择多个字段值,过滤出和这些值相等的数据,例如有原始数据a,ab,abc,abd,abcd,条件“A是其中一个“a,abc,bcd””,结果为“a,abc”,由于bcd不在原始数据中,所以结果也不会有。

包含:输入或选择一个字符串,过滤出包含该字符串的数据,例如有原始数据a,ab,abc,abd,abcd,条件“A是包含“c””,结果为“abc,abcd”。

包含其中一个:输入或选择多个字符串,过滤出包含这些字符串的数据,例如有原始数据a,ab,abc,abd,abcd,条件“A是包含“b,c””,结果为“ab,abc,abd,abcd”。

开头为:输入或选择一个字符串,过滤出以该字符串开头的数据,例如有原始数据a,ab,abc,abd,abcd,条件“A是开头为“ab””,结果为“ab,abc,abd,abcd”。

结尾为:输入或选择一个字符串,过滤出以该字符串结尾的数据,例如有原始数据a,ab,abc,abd,abcd,条件“A是结尾为“d””,结果为“abd,abcd”。

在圆形内:根据输入的经度、纬度、半径确定一个圆形,过滤出在圆形范围内的坐标点。

在矩形内:根据输入的经度、纬度、宽、高确定一个矩形,过滤出在矩形范围内的坐标点。

DataProcess_Filter21

操作说明:

后面的下拉控件支持直接输入值。

其中日期、时间、时间戳数据类型的字段会显示日期时间图标。

DataProcess_MeasureFilter_DateTime

过滤条件“ 介于” 会弹出两个输入框,用于输入或选择初始值和终止值。

DataProcess_Filter12

过滤条件设为“ 其中一个 ”、 “ 包含其中一个 ” ,值若为字段值可添加多个值,您可以通过复选框选择值,输入值、添加自定义值;值若为参数,在下拉列表参数中选择一个参数。

字段值:

DataProcess_MeasureFilter_OneOf

说明:

过滤对话框中列的可选值的最大行数由browse.query.maxrow控制,默认为5000,如果超出这个数值,可以输入值或添加自定义值。

 

参数:

DataProcess_MeasureFilter_OneOf_2

“其中一个”,支持同时添加多个字段值,满足其中任何一个值和条件即可。例如设置产品名称是其中一个?{下拉列表参数1},会只筛选出选择的数据,例如选择“茶”、“花茶”,筛选出的结果也只有“茶”、“花茶”。

“包含其中一个”,支持同时添加多个字段值,满足其中任何一个值或字符中包含添加的值即可。例如?{下拉列表参数1}选择“茶”,会筛选出所有包含“茶”字的数据,包括“茶”、“绿茶”、“花茶”、“茉莉花茶”。

当过滤条件是“其中一个”、“包含其中一个”的时候,支持复制粘贴多个值,值通过换行或英文识别,识别之后粘贴结果,点击回车,自动添加并选中或选中。如果点击添加自定义值,还是添加一个值。

DataProcess_Filter13

“ 在圆形内 ” 需要添加 3 个参数值并且必须按照顺序依次添加,需要添加的参数值为:经度值、纬度值、半径(米)。

“ 在矩形内 ” 需要添加 4 个参数值并且必须按照顺序依次添加,需要添加的参数值为:经度值、纬度值、宽(米)、高(米)。

只有长整型数据(比如:表示经度和纬度的位置列 pos)才有 “ 在圆形内 ” 和 “ 在矩形内 ” 的过滤条件,这两种过滤条件一般结合地图组件使用,过滤出某一区域范围的数据,详情请参考典型案例

【设置值】支持设置参数、字段值、字段,可以点击后面的下拉按钮切换选项,其中参数包含系统内置参数、自定义参数,详细参数及定义请参考参数。当选择“字段”时,可以直接使用两个列进行比较,详情参考后面的字段过滤。

3.2 过滤操作设置

添加了过滤条件后,支持过滤条件层级关系、组合关系调整等操作,从左到右依次为:节点向后缩进、节点向前缩进、转换为且、转换为或、交换子条件、插入“且”条件、插入“或”条件、上移、下移、删除、自动调整、清空,如下图。

DataProcess_Filter4

【向前缩进】多个层级关系,选择同一层级中的第一个过滤关系,点击“向前缩进”,将过滤关系和它上方的过滤条件一起向前移动一层;选择任何一个中间过滤关系,点击“向前缩进”就只将移动过滤关系本身向前移动一层;选择最后一个过滤关系,点击“向前缩进”,将过滤关系和它下方的过滤条件一起向前移动一层。

DataProcess_Filtering_ Indent_Forward

选中关系2,点击“向前缩进”,条件1和条件2合并。

DataProcessing_Filtering_Indent_Backwards_Result1

选中关系3,点击“向前缩进”,关系3向前调整一层,变成和条件1且同一层。条件2和条件4组合在一起,条件3和条件5组合在一起。

DataProcessing_Filtering_Indent_Backwards_Result2

选中关系4,点击“向前缩进”,关系4向前调整一层,条件1和条件5组合在一起,条件2、条件3、条件4组合在一起。

DataProcessing_Filtering_Indent_Backwards_Result3

说明:

标红提示用户调整为合理的过滤设置,此时出现的原因是同一层级上的多个过滤条件,同时出现了“且”、“或”条件关系,可点击“自动调整”调整条件层次、条件关系,还可以手动调整合理过滤,

【向后缩进】多个层级关系,同一层级中选择任一过滤关系,点击“向后缩进”,把它和上方、下方的过滤条件一起向后移动一层。

DataProcessing_Filtering_Indent_Backwards

选中关系2,点击“向后缩进”,关系2与它上方与下方的条件2、条件3也向后移动一层,条件2和条件3组合在一起。

DataProcessing_Filtering_Indent_Backwards_Result

说明:

处于第一层级的过滤关系,不支持“向前缩进”、“向后缩进”。

处于同一层级的多个过滤关系不能同时出现“且”、“或”。

每个层级只有两个子条件时,选择任何的一个过滤关系都支持“向前缩进”,不支持“向后缩进”。

【转为为且/转换为或】多条件时“且”、“或”关系切换,点击“转化为与”、“转化为或”图标。

切换前:

DataProcess_Filter19

切换后:

DataProcess_Filter20

【交换子条件】交换节点下同级别的筛选条件的位置。

交换前:

DataProcess_Filter9

交换后:

DataProcess_Filter10

【插入“且”条件】在所选条件上方插入一条“且”过滤条件,与所选条件处于同一级。

【插入“或”条件】在所选条件上方插入一条“或”过滤条件,与所选条件处于同一级。

【上移/下移】上移/下移选中条件。

【删除】删除当前选中条件。

【自动调整】如果过滤条件设置中线为红色,点击“自动调整”,自动调整不合法的过滤项,并合并可以合并的过滤项。标红的原因可能是同一层级上的多个过滤条件,同时出现了“且”、“或”条件关系,用户还可以手动调整条件层次、条件关系。自动调整时,“且”优先。

以下列举了三种常见的标红场景说明。

场景一

DataProcess_Filter_Auto_Adjust_1

点击“自动调整”后。

DataProcess_Filter_Auto_Adjust_1_Result

场景二

DataProcess_Filter_Auto_Adjust_2

点击“自动调整”后。

DataProcess_Filter_Auto_Adjust_2_Result

场景三

DataProcess_Filter_Auto_Adjust_3

点击“自动调整”后。

DataProcess_Filter_Auto_Adjust_3_Result

【清空】清空所有过滤条件。

【点击添加“且”条件/点击添加“或”条件】在所有条件之后添加一条“且”/“或”条件。

说明:

过滤条件层级关系、组合关系调整、插入、删除也支持通过右键菜单实现。

DataProcess_Filter11

4. 典型案例

地图范围过滤

地图组件上只想保留以上海市杨浦区上海财经大学为坐标原点,周围1000米范围的点。

1)新建计算列使用position函数将经度、纬度数据转换为长整数。

DataProcess_converttolong

2)地图上绑定经度、纬度到地标列,绑定地名到标签。

DataProcess_Filter14

3)点击组件右上方的工具栏上的DataProcess_Filter1按钮,在过滤弹窗中设置过滤条件。

在【过滤】选项卡页面,点击【点击添加条件】,然后在下拉列表选择“计算列”字段,并设置条件“是在圆形内”,值类型选择“字段值”,并在复选框中勾选上“121.501,31.307,10000”,如下图。

DataProcess_Filter15

值类型也可以选择参数,例如“下拉列表参数1”,如下图:

DataProcess_Filter17

下拉列表参数组件需要依次选择3个值,作为经度值、纬度值、半径(米),实现参数过滤,如下图。

DataProcess_Filter18

过滤后,只上海市杨福区上海财经大学周围1000米范围的点。

DataProcess_Filter16

若选择“在矩形内”,需要依次选择4个值,作为经度值、纬度值、宽(米)、高(米),步骤同“在圆形内”。

字段过滤

例如有以下表格,希望只统计利润>预算_利润的订单

DataProcess_Filter5

在表格过滤器里面选择“字段”,设置过滤条件“利润是大于预算_利润”即可:

DataProcess_Filter6

结果如下:

DataProcess_Filter7

 

注意:

对于默认格式设置为“日期(转换时区)”的字段,所有过滤的地方根据用户时区的设置进行相应转换。

只有度量类型的明细列才支持字段过滤。