1.一种针对类别对比的时序矩阵热力图可视化方法,包含如下步骤:步骤1:从数据集的所有维度选取如下几类数据维度:
(1)在数据集中的所有数据进行分类过程中,作为分类依据的维度(简称为分类维度);
(2)在数据集中标识每一条数据记录发生时间的维度(简称为时间维度);
(3)在数据集中用于数据分析的维度,即在可视分析过程中用于展现的维度(简称为展现维度)。
步骤2:针对步骤1中选取的分类维度,基于一定的分类规则将整个数据集中的所有数据记录划分为不同的分类,将分类种类数记为D。
步骤3:针对步骤1中选取的时间维度,将时间值映射为时间序列值,将时间序列值的总个数记为T。
时间维度包括月、日、小时、分钟等,对数据中的时间维度进行时间序列值转换,具体转换方法为:步骤3.1:时间轴若是按照月、日来定义,则时间序列值转换方法如公式(1)所示:DVi=31×moni+di (1)
其中,moni、di分别为第i条数据记录对应的月和日,DVi为其映射的时间序列值。
步骤3.2:时间轴若是按照小时、分钟来定义,则时间序列值转换方法如公式(2)所示:TVi=60×hi+mi (2)
其中,hi、mi分别为第i条数据记录对应的小时和分钟,TVi为其映射的时间序列值。
步骤4:针对步骤1中选取的展现维度,获知其数据的基本分布情况,如有必要,选择合理的转换函数(如指数函数、log函数)使其转换后的数据尽量均匀分布。针对每一展现维度,将需展现数据的最大最小值设为Zmax、Zmin。
步骤5:建立可视化结果的布局结构。
本发明的可视化结果的布局结构中,将所有数据记录的不同分类纵向排列,数据集中的所有分类中,每种分类占一行;将所有数据记录的不同时间序列值横向排列,数据集中的所有时间序列值,每个时间序列值占一列。
该布局中,数据集中的每条数据记录映射为可视化结果中的一个“像素块”,所有数据记录对应的可视元素根据该条记录对应的时间序列值和分类呈现一个“矩阵”的形式,在本发明中称为“矩阵布局”。矩阵布局中呈现所有数据记录的像素块绘制区域简称为“像素块绘制区域”。
数据集中的每一分类所占的高度像素数计算方法如公式(3)所示:d=(H-H1-H2)/D (3)
其中,d为每一分类所占的高度像素数;H为设定的可视化结果总高度像素数,可根据实际情况设定;H1、H2为可视化结果中“像素块绘制区域”外的高度像素数;D为步骤2中获得的数据集的分类种类数。
数据集中的每一时间序列值所占的宽度像素数计算方法如公式(4)所示:t=(W-W1-W2)/T (4)
其中,t为每一个时间序列值的映射宽度;W为可视化结果总宽度像素数,可根据实际情况设定;W1、W2为可视化结果中“像素块绘制区域”外的宽度像素数;T为时间序列值的个数。
步骤6:设置数据记录中展现维度数据的颜色映射表。
在本发明中借鉴“热力图”可视化方法,将所需分析的数据映射为颜色,可以采用能够区分不同数值的颜色即可。
步骤7:将数据集中的每条数据记录,计算其在可视化结果中对应的“像素块”的位置和颜色编码。一条数据记录对应的像素块的位置和颜色编码的计算方法为:步骤7.1:根据该条数据记录的分类维度在步骤2中所得出的分类,查找矩阵布局中该分类的纵坐标,并设置为自身纵坐标。
相同的分类下所有数据记录对应的像素块的纵坐标相同,反之,不同的分类下数据记录对应的像素块纵坐标不同;
步骤7.2:根据该条数据记录的时间维度在步骤3中所得出的时间序列值,查找矩阵布局中该分类的横坐标,并设置为自身横坐标。
相同的时间序列值的所有数据记录对应的像素块的横坐标相同,反之,不同的时间序列值的数据记录对应的对应的像素块横坐标不同;
步骤7.3:根据该条数据记录的展现维度数据,计算其对应的像素块的颜色编码如公式(5)所示:其中,CLRp为第p个像素块对应的颜色编号,TAMp为该条数据记录中的展现维度数据的值,maxTAM、minTAM分别为所有数据记录中的展现维度数据的最大值与最小值。
步骤8:为增加最终可视化结果中所呈现的信息量,将矩阵布局中的“每一行的像素块对应的数据记录”的展现维度数据的平均值映射为条形图(称为分类维度条形图),并置于矩阵布局左侧,该条形图可用于分析不同分类的数据记录的展现维度的数据对比情况。
步骤9:为增加最终可视化结果中所呈现的信息量,将矩阵布局中的“每一列的像素块对应的数据记录”的展现维度数据的平均值映射为条形图(称为时间维度条形图),并置于矩阵布局下方,该条形图可用于分析不同时间序列值的数据记录的展现维度的数据对比情况。
步骤10:为整体布局添加分类维度标签与时间维度标签。在分类维度条形图左侧添加分类维度标签,包含该分类的具体名称及相应信息;在时间维度条形图下方添加时间维度标签。