仪表盘数据表处理
仪表盘数据表处理
物可视支持JS语法的方式,对数据表进行处理。目前支持的操作:新建列、编辑列、列排序、行排序、重命名、行转列、透视表。未来还会开放更多能力。
同时,物可视将用户对数据表的操作以流水线(Piepelie)的方式记录下来,方便用户对数据表的历史操作记录进行管理(编辑或删除)。
“数据表“页面分为三个区域:
- 数据表列表区域(左侧):1. 展示该仪表盘已有的全部数据表及其运行状态,2. 新建数据表按钮;
- 流水线区域(右侧上方):展示当前选中的数据表所对应的流水线处理过程;
- 预览区域(右侧下方):展现流水线的输入/输出结果。
添加完数据表后,物可视支持对数据表进行处理。 流水线有两个状态:“运行“和“暂停“。在“运行“状态下,除数据源节点(蓝色节点)外,用户无法对流水线进行编辑;在“暂停“状态下,用户可以新建、编辑、删除流水线节点。 流水线默认处于“运行“状态,可通过 按钮切换为“暂停“状态。
注:流水线的暂停并不会停止触发数据查询。请合理设置TSDB的查询频率,已免产生不必要的费用。
注意,以下变换的新建、编辑、删除都需要在流水线“暂停“的状态下操作
新建列
-
新建列:支持在数据表某一个已有列的基础上,新建一列
- 列名:新列的列名
- 基础列:基于数据表中的哪一列作为基础列来新建一列数据
- 语法窗:支持用户输入JS语法,来对数据进行变形操作,可以基于原有数据进行转化、判断、变形等等,该函数对选中列的每一行都会执行一遍;可以进行编辑的参数有:
cell | rowIndex | col | rows | header |
---|---|---|---|---|
选中列的单元格数据 | number类型, 代表单元格的行号,从0开始 | 一维数组,代表选中列的所有数据 | 二维数组,代表数据表的所有数据 | 列头 |
- 该列属性:选择新建列的属性
- 运行:试运行看下语法是否正确以及新建列的生成值是否符合预期
- 确定:确认操作完毕后,点击确认,生成新列
编辑列
- 编辑列:支持对数据表某一个现有列进行编辑修改
- 基础列:选择数据表中想要编辑的基础列
- 语法窗:支持用户输入JS语法,来对数据进行变形操作,可以基于原有数据进行转化、判断、变形等等
- 该列属性:选择要编辑的列的属性
- 运行:试运行看下语法是否正确以及新建列的生成值是否符合预期
- 确定:确认操作完毕后,点击“确定”,生成新列
列排序
- 列排序:支持对数据表现有列进行排序、显示/隐藏操作
在左侧“显示“列表和右侧“隐藏“列表之间相互拖动,可以显示或隐藏某列,如下图所示,该操作会将“PM2_5“列隐藏
在左侧“显示“列表内部拖动,可以对显示的列进行排序
行排序
- 行排序:支持对数据表中数据记录按照“升序“/“降序“进行排列
可以创建一条或多条排序规则,数据表中的每一列只可创建一条规则。
重命名
- 重命名:支持修改数据表表头(列名)
行转列
- 行转列:支持对数据表进行行列变换操作,如下图所示
透视表
- 透视表:支持对数据表进行“透视“操作
假设有如下数据源:
我们希望按照不同城市、不同日期展示气温,则可将原表中的“时间“列选做表头,将“城市列“选做首列,将“气温“列选做数据列,如下:
最终结果如下:
除了“求和(SUM)“、“计数(COUNT)“聚合外,未来会添加更多的聚合操作。
流水线操作
不同的颜色代表着不同的节点类型:
- 蓝色:初始数据表;
- 绿色:正常执行的节点;
- 红色:执行出错的节点;
- 灰色:创建了但是用户选择将其不生效的节点。
在流水线“运行“的状态下,只可以对初始数据表进行编辑和删除:
在流水线“暂停“的状态下,可以对创建节点、编辑/删除节点:
用户可对节点进行4种操作:单击鼠标悬浮到节点之上出现的三个图标,以及单击节点本身。
- 编辑初始数据表/编辑变换节点;
- 删除数据表/节点,值得注意的是,编辑或删除节点,可能导致其他节点失效(红色状态)。此时需要继续编辑或删除剩下的节点,以使整个工作流恢复正常(绿色状态);
- 激活节点,将本节点之后的所有节点设置为不生效的(灰色)节点(在旧版的物可视中,这个操作是通过单击节点本身实现的);
- 预览高亮节点的输入/输出数据(详见下文介绍)。
数据预览
用户通过Tab切换可以清晰地识别输入/输出数据。
当流水线处于“运行“状态时
“输入数据“:表示数据源的原始数据; “输出数据“:表示整条流水线执行完毕的最终输出数据(不含红色错误节点和灰色不生效节点)。
当流水线处于“暂停“状态时
如果没有节点被选中(通过单击节点实现选中和取消选中),则同上,“输入“/“输出“分别代表原始数据和整条流水线的最终输出
如果有节点被选中
“处理前数据“:表示该节点的输入数据,也就是前序节点的输出数据; “处理后数据“:表示经过该节点变换处理后的结果数据。