数据驱动的可视化设计

2024-06-27

数据驱动的可视化设计(共8篇)

数据驱动的可视化设计 篇1

微机械电子系统 (Micro-Electro-Mechanical System, MEMS) 兴起于20世纪80年代后期, 其含义十分广泛, 可定义为由微米和纳米加工技术制作而成的, 融机、电、光、磁以及其他相关技术群为一体的可活动和控制的微工程系统。

1微流体驱动元器件研究背景

微流体驱动与控制技术是MEMS的一个重要分支, 是构成大多数微系统中感应元件和执行器件的主要组成部分, 也是MEMS发展需要解决的关键技术之一, 被国家自然科学基金委员会列入我国MEMS发展的主要研究方向。微流体的驱动与控制和宏观流体的驱动与控制有很大的不同, 主要是由于当尺度减小时, 流体的流动特性发生了变化, 这种流动特性的变化使得宏观流体驱动与控制技术在微流体中的简单移植往往不成功。微流体的驱动与控制技术更为复杂和多样化, 不仅可能出现不同于宏观流动的规律, 而且许多在宏观流动中被忽略的因素, 将成为主要的影响因素, 因此具有重要的研究价值和意义。其研究成果在集成电路的冷却、流体的微量配给、药物的微量注射、微型传感器、微推进器的燃料输送等方面具有广泛的应用前景[1,2]。

微流体驱动中比较有发展前景的是特殊流体驱动, 指的是利用特殊流体或者流体的特殊性质实现微流体驱动与控制的驱动方式。这里的特殊流体指的是电、磁流变液, 利用其黏度随着电、磁场变化的性质来实现驱动的目标[3]。利用流体的特殊性质实现微流体驱动与控制的研究主要是液晶领域, 典型代表是日本的Yoshitaka M和Katsushi F。其主要原理是利用电场作用下液晶分子指向矢 (液晶中大部分分子的平均指向) 产生旋转的特点, 利用其旋转所产生的液晶流动对微小粒子实现操作[4,5]。这种驱动方式可实现精确控制, 制作简单。通过施加电压驱动液晶产生流动, 实现电能到机械能的转化, 减少可动部件数量, 并且可以通过控制电压精确控制流速, 利用电压的切换可以在微通道的交叉口控制液晶流的方向。国内河南工业大学刘春波研究团队致力于液晶引流驱动的研究, 并将其与微流道相结合实现了低电压微流体驱动的目标, 进一步扩大了其应用范围[6]。

利用液晶引流实现微流体驱动, 关键的一步是设计微流体驱动器及传感器, 而要设计出高效的驱动执行元件, 需要详细了解液晶在流道中精确的流动过程, 包括流动过程中的速度场、应力场、压力场和温度场等的变化过程, 而要拿到这样的数据需要用到复杂的非牛顿流体力学知识以及较高的程序设计及计算能力, 这给使用者带来很大的困难。目前在宏观液压驱动器设计领域, 可以使用较通用的计算流体动力学 (Computational Fluid Dynamics, CFD) 软件解决这个问题, 比如ANSYS和FLUNT等。设计者可以方便地使用结构网格和非结构网格对各种复杂流道区域进行网格划分, 进而实施计算, 计算结果还可以通过后处理绘图模块形象地表达出来, 非常方便, 无需懂得高深的流体力学知识。但对于微流体流动, 理论及计算模型建立方法与宏观流体有较大的区别, 因此商业软件无法满足要求。目前, 并没有针对微流体驱动元器件设计的软件。

基于以上事实, 笔者开发了一个用于分析微流体 (液晶) 流动的计算及可视化软件。通过该软件, 微流体驱动器的设计者可以自由设计流道, 选择驱动方式, 选择微流体种类及计算理论, 通过计算得到流道内部各种场的计算结果。还可以将结果可视化, 一目了然知道所设计流道的优点及缺点, 进而对流道进行优化设计。

2可视化软件设计

2.1软件的设计思想

该软件本着方便、适用的原则, 参照目前通用的CFD软件的标准, 从用户需求的角度出发, 针对各种复杂的液晶微流动, 采用不同的离散格式与数值方法, 期待在微流体驱动领域内使计算速度、稳定性和精度方面达到最佳, 从而高效解决微流体驱动、执行器设计领域的复杂流动计算问题。

2.2软件的特点

目前, 研究者们习惯上将流体在特征尺寸在1μm到1 mm之间的流道中的流动称为微流动。与宏观流动相比, 微流动由于存在尺寸效应而具有很多特殊性。主要包括:宏观理论的适用性, 体积力与表面力的作用地位, 表面粗糙度的影响及梯度参数效应等。因此, 随着特征尺寸的不断减小, 微流动呈现出与宏观流动不同的特性。普通的CFD软件无论从理论选择还是计算方法都没有这方面的考虑, 因此, 在该方向的使用受到很大限制, 结果的准确性无法保证。为了精确设计MEMS微流体元器件及系统, 有必要对微流动进行深入研究。在该软件中, 笔者运用了大量课题组多年来在微流体驱动方向的研究成果, 包括理论的选择、计算方法的选择等核心部分。软件中得到的计算结果已经通过实验加以验证, 进一步加强了计算结果的可靠性, 为微流体驱动器、执行器的设计奠定了理论基础。

2.3软件的构成与功能

该软件为非流体专业人员进行微流体驱动器或传感器设计的辅助工具, 其主要包括以下模块。

1) 微流道设计模块。软件的微流道设计界面见图1。对于微流体驱动来说, 考虑到加工因素, 不便设计过于复杂的流道, 因此, 软件给出的选择包括方形、圆形等标准流道, 如需设计多样化的流道 (仅限于以上选项) , 可选择利用基本单元的自由组合。

2) 材料选择。软件的材料选择界面见图2。微流道设计完成后, 便进入到材料选择模块, 该软件提供两大类液晶材料, 按照流动形态的不同, 分为小分子与高分子液晶计算两部分, 设计者可根据所选液晶材料的分类进行选择, 这一选择直接与后面计算环节相关, 尤其是涉及到计算参数输入部分。

3) 驱动方式模块。由于液晶流动微流体驱动的驱动方式灵活多样, 包括电、磁、压力等, 因此设计者可以根据自己的需要, 对设计的驱动方式模块, 进行选择, 这一步的选择要与后面计算时参数输入部分相对应。

4) 计算理论选择。在该软件中主要可以进行液晶流动计算, 典型液晶可以分为小分子和高分子两类, 在计算流动的过程中液晶种类的不同直接决定所选择的计算理论不同。

5) 计算方法选择。普通的CFD软件的处理过程包括前处理、计算和后处理三大步, 前处理的过程包括网格划分、求解器选择和设置边界条件三大步。由于该软件主要用于计算微流体驱动的流动效果, 在微流体驱动原件流道设计中, 考虑到加工困难, 所设计的流道一般较为简单, 不存在复杂拐角等, 因此该软件中省略了网格生成的部分, 全部采用标准的结构网格。

6) 参数输入模块。图3为小分子计算的参数输入界面。参数输入包括物理性质参数 (包括黏度、弹性系数、密度等) 、驱动参数 (包括电、磁场或压力等) 。可根据要求进行具体输入。

7) 计算结果可视化模块。该软件的计算结果可以直接保存为数据文件, 方便设计者自行绘图, 也可以选择软件的绘图模块自动成图。该绘图模块提供各种场的绘图功能, 包括温度场、压力场、速度场、指向矢场等。还包括关系图的绘制功能, 设计者可以自行选择相关变量进行关系图的绘制。大分子仿真绘图可视化界面, 见图4。由于液晶计算的特殊性, 即流动与液晶分子指向矢存在耦合现象, 因此该软件还提供了分子指向矢与流动的耦合结果动态绘图功能, 直观展示流动过程中分子指向矢的变化。

2.4软件的设计与实现

广泛应用于固体力学、流体力学等领域的有限元程序都是用Fortran语言编写的, 输入数据通过磁盘文件来实现, 输出数据以文本形式保存。

由于软件要求界面友好, 又具有大量的数据计算, 采用Fortran与VB两种语言混合开发的方法。Fortran与VB两种语言混合编程, 既弥补了Fortran语言图形功能弱, 计算结果难于图形化的缺陷, 又消除了单纯用VB语言处理大计算量问题执行效率低的弊端。用VB语言设计界面和控制程序, 而大量繁琐的数据计算过程由Fortran语言实现, 将Fortran语言程序编译成可执行程序, 在适当的时候由VB语言程序启动它。计算结束后, 结果储存为数据文件, 如需使用软件提供的绘图程序, 只需重新打开数据文件即可, 绘图程序在VB下完成。

3结束语

笔者开发了一个用于微流体驱动领域元器件设计的辅助专用软件, 运用特殊流体 (液晶) 驱动领域研究成果, 在理论选择及计算方法上与普通CFD软件有所区别, 软件的后处理绘图功能可以方便地将计算结果绘制成动态或者静态图像, 为微流体驱动领域的发展奠定了基础。

参考文献

[1]Nikolaev A V, Kartsova L A, Filimonov V V, et al.A microfluidic chip analyzer for determining neurotransmitters[J].Journal of Analytical Chemistry, 2013, 68 (12) :1093-1098.

[2]Zhang Chunsun, Xing Da.Microfluidic gradient PCR (MGPCR) :a new method for microfkuidic DNA amplification[J].Biomedical Microdevices, 2010, 12 (12) :1-12.

[3]贺杰, 高丽霞.磁流变液颗粒成链过程的理论和实验研究[J].功能材料, 2013, 44 (2) :1-5.

[4]Yoshitaka Miedal, Katsushi Furutani.Two-dimensional micromanipulation using liquid crystals[J].Applied Physics Letters, 2005, 86 (10) :1-3.

[5]Fiyukket Yves, Jary Dorothee.Digital microfluidic design and optimization of classic and new fluidic functions for lab on a chip systems[J].Microfluidics and Nanofluidics, 2008, 4 (3) :1007-1010.

[6]刘春波, 田勇.基于液晶引流效应的全新微流体驱动方式[J].机械工程学报, 2012, 48 (16) :122-129.

数据可视化的中国历程 篇2

在梳理发展历程之前,我们有必要先对数据可视化做一个简单了解。数据可视化,是关于数据视觉表现形式的科学技术研究,主要是借助于图形化手段,清晰有效地传达和沟通信息。数据可视化是一个处于不断演变之中的概念,其边界在不断地扩大。在中国,目前数据可视化的发展可分为四个阶段。

第一个阶段是先计算机时代。陈炎指出,中国在数据可视化领域要远落后于国外,起步较晚。一直到20世纪上半叶,中国才出现一位先驱——陈正祥。陈正祥一生致力于绘图,主张用地图说话,用地图反映历史,利用地图对政治、经济、文化、生态、环境等现象进行描绘和阐述。他的知名作品《中国文化地理》中有两个经典案例,一个是中国诗人分布图,一个是蝗神庙分布图。

第二个阶段是计算机时代。此时,国际上出现如水晶报表等数据可视化产品,随着SO、C++等走向了全球。但水晶报表在中国却遭遇到了“水土不服”,最后水晶报表产品被BO收购,BO又被SAP收购了。接下来登场的本土厂商是华表。华表解决了中国式复杂报表和买一次无限分发的问题,但随后被用友收购,到2008年就基本不维护了。这个阶段还有思达报表,是第一款纯java报表和web报表工具,2000年在国内成立研发公司,但由于人员动荡,一度退出中国市场,目前国内还有部分用户。2004年,国内出现两大报表厂商——润乾报表和帆软报表。润乾创新应用SOL理论和EXCEL各自扩展结合,解决了中国式复杂报表;帆软则是国内第一家只卖产品就把销售额带到近1亿元的厂商。此外,表格可视化有两个分支,即席报表和OLAP,国内代表厂商是广州尚南和上海炎鼎。

第三个阶段进入读图时代。数据图形可视化有三种方案解决,一种是传统表格可视化软件厂商提供的图表控件,这种基本上能解决大家的核心需求;第二种方式是独立图表控件,需要基本代码集成到企业信息系统里面去;第三种是图表可视化软件,其代表软件有Tableau和帆软的FineBI。

从以上的发展趋势不难看出,图形的可视化成为数据可视化中间越来越重要的一部分。这使得数据可视化的相关厂商不得不思考,如果自己的产品是集成开源图表控件进行可视化,那么开源收费了应该怎么办?

第四个阶段就是大数据时代。大数据时代对数据可视化提出了两个挑战,一个是传统小数据变成了传统小数据+现代大记录,另一个是结构化数据变成了结构化数据+非结构化数据。大数据时代的管理模式从金字塔向扁平化转移,中基层员工拥有了决策权、用人权和分配权,因此产生了很多个性可视化诉求。此时,数据可视化之路从原来的全部由IT部门运作转移成IT部门做一部分,业务部门也做一部分。因此,大数据时代的IT厂商提供产品需要既能支持高性能又能进行自助分析。

地图中的数据可视化设计 篇3

关键词:信息可视化,地图,数据

一、地图中的可视化设计要素

地图具有明显的数据化特征,必须依据明确的数学法则和科学的理性对数据文本进行分析,以此为依据构建合理的信息结构和逻辑系统。信息的最终呈现都表现出视觉化的语言特征,在遵循清晰、精确、科学的前提下通常会追求视觉表达的优化,文字、版面、图形、色彩的合理安排,以视觉设计的手法作为信息传达的辅助手段,借鉴设计心理学、人体工程学的基本理论,帮助信息更高效地传递。地图的最终目的是要完成一定量的信息传递结果,对某地理区域的基本情况或某领域内的数据变化有明确量化的信息传递和接收,否则就失去了其存在的价值和意义。

二、案例分析

(一)死亡地图(1854年,John Snow)

19世纪欧洲大城市霍乱横行,伦敦由于垃圾堆积、水源污染、排水系统薄弱,成为疾病滋生的地点。人们认为土壤中散发的有毒气体侵害了人体,如果呼吸到“瘴气”或接触到霍乱患者,就会染上这种疾病。医生John Snow不相信这种说法,决心通过彻底调查疾病的根源来证实自己的怀疑。他将发病人的地点进行了统计,用标点地图的方式分别标注当地井水和霍乱患者的分布,地图清晰地反映了两者之间的关系,即Broad大街的公共水泵供水范围内霍乱罹患率明显较高,凭此判断出霍乱爆发的源头。

在这幅流传后世的“死亡地图”中,黑色圆点代表霍乱爆发地点,十字叉代表水井,通过这两个变量,以视觉的形态明确表明了水泵和疾病之间的关系,体现出以地图形态为基础的视觉化信息设计手法从庞杂的数据中找出重点和秩序的能力。

(二)拿破仑东征路线图(1861年)

1812年6月24日,拿破仑率领欧洲历史上最大规模的部队,开赴莫斯科,等他们到达那里,莫斯科已成为空城,所有供给被中断,军队不得不撤回。归程中天气恶劣,供给缺乏,军队伤亡惨重,没了装甲大军团的小分队在Vyazma、Krasnoi和Polotsk被俄国人击溃,在渡贝尔齐纳河时遭俄军两面夹击。直到1812年12月14日大军惨败被逐出俄国领土,只剩下约22,000人幸存。

这一历史时刻被法国工程师Charles Joseph Minard转换成了信息视觉化的先驱作品,也被Edward Tufte誉为是迄今为止最好的统计图表。(1)该图包含几个个独立变量:线条的宽度实时地指代着军队规模;整个线条标明了军队移动所到之处的经纬度;不同的颜色区分了军队移动的大方向,棕色表示前进,黑色表示撤退;军队在某些特定日期的所在地点被标注;图表下部标明撤退途中的温度变化,每一次大规模降温都与图表中黑色撤退部队人数的急剧减少相关。

三、价值及展望

以上两个经典案例中,显示出数据与方位的关系,以地图作为信息呈现的基本构架,必然因其数据所反映的内容与方位有关,即为信息的视觉呈现提供了展示的地基,也能使纷乱的信息在空间中自动合理排列,解决秩序问题。

案例呈现了单纯用文本难以解读的庞杂的数据信息,展示出视觉语言从庞杂的数据中找出重点和秩序的能力,使其在信息传递过程中的重要性再次得到体现。在信息设计中,地图的视觉化表达并不要求绝对的精准,而着重强调某一方面的特征和相对适合的比例,甚至要求更加地概括,突出重点,省略不必要的细节,体现了地图作为形象语言本身隶属于信息设计范畴的概念。

随着技术进步,地图的承载媒介早已不再局限于二维平面的表达,Google Earth等卫星图像软件可以直接模拟3D地球影像,甚至深入海底探究地球内部面貌,介于此,与地图相结合的信息视觉化设计势必有更大的发展空间和更轻松、灵活、人性化的表现手法。数据与图像、科学与艺术、技术与设计是本文一直在探讨、围绕的话题,新时代下的视觉化信息设计将会有更多的可能性。

参考文献

[1](美)Edward Tufte.Visual Display of Quantitative Information[M].Graphics Press出版社,2001.

[2](美)Edward Tufte.envisioning_information[M].Graphics Press出版社,1990.

[3](美)简·维索基·欧格雷迪(O'Grady.J.V.).信息设计(《The Information Design Handbook》)[M].凤凰出版传媒集团,译林出版社,2009.

数据驱动的可视化设计 篇4

关键词:GPS,可视化,LabVIEW,数据可视化软件

1 研究背景及意义

GPS是目前在军用和民用领域应用最为广泛的卫星导航系统,具有海陆空全方位实时三维导航与定位能力。使用时只需通过接收设备接收卫星传播的信号就能实时准确测定卫星信号传播时间延迟或相位延迟,确定出接收机与GPS各可视卫星间的距离,进而求解出接收机的三维位置坐标和三维速度信息。

通常GPS接收机的定位输出数据信息为一串包含定位信息的ASCII码字符流。该字符流既枯燥又难于理解。如果能将这些字符流中的定位信息用计算机实时展示出来,即将数据进行可视化,不仅可以帮助用户理解数据,减轻操作人员的劳动强度,而且还可以提高工程实现的方便性。由于GPS系统在点位测量时所接收的位置数据直接来源于卫星,不再需要待测点间的相互通视,测量时的自由性也有了很大的提高。

正是基于以上认识,本设计提出了采用上位机进行GPS定位数据的采集,以实现数据实时接收、解包、存储及可视化处理,同时对各种观测数据进行有效的管理,以供事后查询。

2 系统结构及硬件实现

GPS数据可视化系统结构如图1所示,它由GPS接收模块TU30-D400-031、电平转换电路MAX232、PC机信息采集显示部分组成。GPS接收模块通过射频GPS L1天线接收GPS卫星信号进行定位,并将定位结果实时输出。由于该接收模块输出信号为TTL电平,而计算机串口电平为RS-232C电平,因此必须通过MAX232电平转换电路才能将接收机与计算机的串口相连接。计算机采用Windows操作系统,利用LabVIEW编程对RS-232接口输入信息进行采集、读取并显示。

3 软件实现

3.1 LabVIEW中与数据库接口的方法

本设计中需要对GPS数据进行采集、解包、存储、可视化等操作与管理,采用LabVIEW软件开发工具进行采集、解包、可视化操作,利用数据库对GPS数据进行存储、查询等管理操作。但由于LabVIEW软件不能直接访问数据库,所以需要通过其他的工具包来辅助完成。此次设计利用美国NI公司开发的免费工具包LabSQL来实现,可以克服购买专业工具包价格昂贵或自己编写DLL程序访问数据库工作量太大等难题。

LabSQL工具包由第三方开发,源代码全部免费开放供用户使用。由于它避开了对底层ADO(ActiveX Data Objects)及SQL(Structured Query Language)的程序编写,用户在使用时只需要通过一些简单的图形化编程,即可实现对数据库中记录的查询、修改、添加、删除等功能。数据库接口操作步骤见图2。

3.2 GPS数据可视化的软件实现

3.2.1 NMEA0183标准语句

国内外GPS接收机定位数据的输出格式普遍遵循NMEA-0183协议。NMEA-0183协议是由美国海洋电子协会(National Marine Electronics Association)定义的接收机输出标准信息格式。NMEA-0183协议有各种以ASCII码文本形式输出的信息格式,数据流长度从30字符~100字符不等。常见的信息格式有$GPGGA、$GPGSV、$GPGSA、$GPRMC、$GPGLL和$GPVTG等。常用输出格式为$GPGGA,该语句中包含定位时间、接收机经纬高信息、可视卫星数、DOP值、差分状态、校正时段及校验码等12部分字符串。语句格式为:$GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,M,<10>,M,<11>,<12>*hh。其中字段<1>为UTC时间,以hhmmss(时分秒)格式表示;字段<2>和<3>为纬度信息,以ddmm.mmmm(度分)格式表示,N为北半球,S为南半球;字段<4>和<5>为经度信息,以ddmm.mmmm(度分)格式表示,E为东经,W为西经;字段<6>为GPS定位状态:0为未定位,1为非差分定位,2为差分定位,6为正在解算;字段<7>为解算所用的卫星数(00~12);字段<8>为定位时的HDOP水平精度因子,反映定位结果的误差水平;字段<9>为接收机所处的海拔高度;字段<10>为地球椭球面相对大地水准面的高度;字段<11>为差分时间;字段<12>为差分站ID号0000~1023;hh为语句的校验信息。

3.2.2 数据库模块

利用LabSQL访问数据库,将不同时间下的GPS定位数据GGA存入Access表格,见图3。

3.2.3 读取文件模块

利用LabVIEW中读取文件控件把已接收的GPS数据分离出来,显示在前面板上图形控件中。实现时通过串行端口传输和接收数据,然后为字符串进行解析处理。在对GPS接收信息进行解析时,首先查找“$GPGGA”字符串,然后再查找字符“,”,并根据“,”出现的次数位置来提取相应的导航信息并进行相应显示。图4为前面板显示读取到的文件数据。

3.2.4 查询模块

利用LabSQL工具箱中SQL命令查询满足不同筛选条件的记录:

(1)利用ADO Connection Create子VI文件创建一个Connection对象,然后利用ADO Connection Open子VI文件建立与设定GPS数据库的连接,并在ConnectionString中设定“DSN=GPS”指定数据源。

(2)利用ADO SQL Execute子VI文件执行数据库查询命令,输入SQL命令语句“SELECT*FROM GPSTable WHERE时间=#01:43:18#;”,并将查询结果送至前面板窗口中显示。

(3)利用ADO Connection Close子VI文件关闭与设定GPS数据库之间的连接。

除时间查询外,在本设计中GPS数据还可以通过其他方式(如按定位信息、经度、纬度等)实现查询功能。

3.2.5 修改、删除、添加等功能模块

修改记录部分程序框图如图5所示,基本步骤如下:

(1)建立与设定GPS数据库的连接。

(2)利用ADO Recordset Create子VI文件和ADO Recordset Open子VI文件建立与记录集(Recordset)对象的连接,并同时利用SQL查询命令“SELECT*FROM GPSTable WHERE纬度=39.980 642;”获得数据库中满足条件的全部记录。

(3)用ADO Recordset Find子VI文件确定记录位置,并输入指定目标记录的参数。

(4)用ADO Set Field Value子VI文件修改记录。参数Field用于确定记录中的字段,按照从左到右的顺序依次排列为0,1,2,…;参数Value表示修改该字段的值。这里修改的是当纬度为39.980 642°时,把使用卫星数量由9修改为7。

(5)用ADO Recordset Close.vi与ADO Connection Close.vi关闭与数据库之间的连接。

删除、添加记录的基本步骤与修改记录的步骤类似,采用ADO Recordset Delete Record子VI文件删除记录;用ADORecordset Addnew子VI文件添加记录。

3.2.6 可视化图形显示模块

在读取数据文件后,如果只是以基本数据形式显示,并不直观。本系统不仅可以实现数据显示,还可以把读取的数据图表显示出来,便于观察。图6为经度相对时间的可视化图。纬度可视化图表可类比实现。

3.2.7 系统设计中用到的一些数据转化

由于GPS采集到的经、纬度数据中含有度和分,不利于可视化时用户的实际操作,在对数据存储之前必须进行转换,全部转化成用度或度分秒表示;GPS数据中时间格式为hhmmss也不便于操作,必须进行时分秒分离,此处需要用到字符串分离程序等。

4 总结

本文设计了通过LabSQL访问GPS数据库的方法,建立了数据可视化系统,能将数据准确地写入Access数据库中,能对采集的GPS文件进行读取,且转换为直观的数据格式,从而更有利于用户观测和分析数据。

参考文献

[1]王惠南.GPS导航原理与应用[M].北京:科学出版社,2003.

[2]陈锡鸿,张银辉.LabVIEW8.2程序设计从入门到精通[M].北京:清华大学出版社,2007.

[3]韩丽娜.数据可视化技术及其应用展望[J].煤矿现代化,2005(6):39-40.

[4]何秀凤,刘建业,袁隹.GPS接收机的数据采集与处理[J].数据采集与处理,1996,11(2):154-156.

数据驱动的可视化设计 篇5

关键词:海洋数据,数据可视化,地图交互式查询,组件技术,数据库设计

1 概述

长期的海洋环境调查研究积累了大量的海洋环境数据信息,随着科学技术的飞速发展,这些数据更是以几何级数速度增长。海洋数据具有时空关联性强、时序长、种类繁多且格式多样的特点,因而对于海洋数据存储及展示的要求越来越高[1,2]。计算机和信息技术的快速发展也使海洋资料信息服务从单一方式向可视化、网络化方向发展,海洋信息共享也是海洋信息研究的一个主要趋势,而传统的文件存储格式存储容量有限,且不能满足信息共享与交换需求。数据库不仅能实现数据的统一管理,而且可以通过网络实现数据访问共享,因而也成为海洋数据重要的存储方式[3,4]。

我国海洋管理部门近年来开展了包括908“数字海洋”基础调查、渤海立体监测、渤海海洋环境质量状况与趋势监测、渤海海洋断面调查等多个专项调查,还开展了海洋站、浮标与海床基等多项常规性调查,建设了许多分散的、具备专项功能的数据库,但是缺乏能够集成各类海洋数据库和集成可视化展示和分析模型的综合平台,对数据库数据的管理应用有待进一步研究[5,6]。

国外许多机构基于海洋数据库已建立了许多功能完善的数据平台,目前的美国国家海洋数据中心、英国国家海洋数据中心(BODC)已经能够较好地实现对海洋数据的网络管理,能够实现多个领域的海洋数据的检索查询等操作[7]。亚太数据中心(APDRC)利用基于网格的LAS和DCHART服务器,为文件格式海洋数据提供了快速便捷的可视化。斯坦福大学提出Ozone集成模型对数据库ODMG进行扩展[8,9]。但上述系统有些仅对特定格式的海洋数据文件进行可视化,对于数据库格式的海洋数据直观展示数据工作相对较为薄弱,并且此类系统仅针对特定数据源,而不适用于所有的数据源格式,系统自身结构复杂,可扩展性较差。

本文设计研究海洋数据可视化信息数据库和可视化组件,实现海洋数据库统一管理及系统的可复用性;利用地图组件进行交互式查询,实现海洋数据的可视化查询与展示。

2 系统结构

2.1 体系结构

海洋数据可视化查询与展示系统(以下简称“数据可视化系统”)由数据层、业务逻辑层和应用层3层构成。

数据层是海洋要素可视化的数据来源,负责海洋基础数据的存储和读写。主要包括元数据库、基础数据库以及信息数据库。元数据数据库实现数据与属性信息的分别存储,通过元数据检索查询海洋数据,实现海洋数据的有效管理,提高利用效率。基础数据库包含海洋水文、海洋气象、海洋物理、海洋化学、海洋生物生态、海洋底质、悬浮体、海洋地球物理和海洋地形地貌基础9类数据库。而每类数据库中又包含了不同类别的数据。各数据库结构设计不同,所包含的数据类别也多种多样,数据量大,针对这一特点,可视化信息数据库存储数据可视化相关信息,为数据可视化展示提供统一接口,提高系统可复用性。

逻辑业务层通过对数据层访问,实现所有的业务逻辑。包括数据处理组件、数据格式转换组件、数据查询组件及数据可视化组件。

表示层通过将从逻辑层获取的数据利用可视化组件展示在页面中,曲线图为主要展示方式。

2.2 功能结构

数据可视化系统由3个功能模块组成,具体功能模块如图2所示。

可视化查询与展示系统分为数据格式转换、数据查询和数据可视化三个功能模块。

(1)数据格式转换

海洋数据多样性特点需要以不同的数据形式展现,因为存储格式也多种多样。数据转换功能将数据库数据无差异的转换为海洋数据常用的存储格式,如Net CDF、HDF、ASCII及目前通用的XML规范格式,满足用户多样性需求。

(2)数据查询

数据查询模块包括基于元数据的查询和目录查询两种方式。元数据查询是指首先查询符合条件的元数据,在此基础上查询数据库数据。目录查询方式是指对数据库数据按照学科目录进行分类,通过目录检索数据。

(3)数据可视化

数据可视化是指用户以地图交互方式查询数据,将抽取的数据以曲线视图展示,数据可视化实际也是数据查询的一种方式。

曲线类型包括时间序列图、剖面图及数据对比图。时间曲线展示的是选中要素在时间维度的连续变化。剖面图则是某一固定时间点以水深为基准的数据变化曲线。数据对比图是多个站点同一要素的变化比对图。

3 设计与实现

3.1 信息数据库设计

海洋基础数据包括海洋水文、海洋气象等数据库,这些数据在属性及结构方面存在较大的差异,若分别对每一类数据进行可视化研究则会耗费大量的精力,并产生许多不必要的重复工作,而且在此基础上开发的系统难以在其他数据库数据中应用,可拓展性及移植性较差。因此数据库设计必须具备通用性,综合考虑各类海洋数据的特点及共性,实现对数据源的统一访问。

经过对各类的数据库数据的对比分析发现,虽然各类数据库在数据结构等方面存在差异,但是各类数据库均包含可视化所需的时空信息、属性信息及特征要素信息。将这些信息单独提取出来,重新构建成一个新的数据库,即可视化信息数据库,记录每个基础数据库数据中所包含的数据类别、可视化要素集合、时间范围、经纬度范围、数据来源以及曲线类型信息,通过这些可视化信息检索基础数据库数据。

可视化信息数据库对基础数据库数据结构进行统一规范,为业务逻辑层提供数据层的通用接口,从而减轻业务层的工作量。可视化信息数据库E-R图如图3所示。

3.2 基于组件的功能开发

在面向对象如火如荼的发展进程中,组件的出现更具有非凡的意义。组件是一个组装单元,具有相对独立的功能、接口,并且顾名思义,组件可以独立部属并可以由第三方进行组装。利用组件技术可以优化软件结构并可以实现软件复用。用户可以依据功能需求通过对各类组件的重新组装构建一个新系统,避免重新开发软件。

目前通用的组件技术包括四类:Microsoft的DCOM/COM+、基于Java的Sun Soft J2EE、W3C的Web Service及OMG的CORBA标准实现。DCOM/COM+提供了良好的组件开发环境,并具有较好的容错机制,因此本文主要以DCOM/COM+实现开发。

根据对系统功能需求分析,该系统主要包括数据处理组件、地图组件、数据格式转换组件、数据查询组件及数据可视化组件。

数据处理组件主要是对数据层数据进行配置及访问,屏蔽底层数据库的异构性,能够直接访问大多数数据库中的数据,是其他组件功能实现的基础。数据处理组件以Web Service的形式开发,向外提供统一访问接口,实现平台独立的数据访问操作。

地图组件实现地理信息数据与航次信息基于GIS平台的统一可视化表达,地图组件同时融合时空维度筛选及多种视图形式,提供按照时间及经纬度范围筛选地理信息,以及地图、地形、卫星三种视图方式。地图组件通过数据处理组件提供的接口获取地理信息数据,处理后显示在地图上,用户可以通过拖拽及缩放调整地图的展示效果,点击地图中的标记可以显示选中位置的信息或编辑。组件提供对外接口,允许其他组件获取用户选中位置的详细信息。

格式转换、数据查询及数据可视化组件分别实现数据库数据多格式转换、数据查询列表展示及数据可视化展示的功能,此类组件各自独立,因此可以应用于其他的海洋数据可视化开发中,具有良好的可移植性。

4 系统应用

“渤海海洋数据可视化查询与展示系统”是上述系统的开发应用,该系统实现对渤海海洋数据库的数据查询、数据可视化及多格式的数据下载。系统界面如图5所示。

(1)数据可视化

左侧展示海洋基础数据库的目录结构,选定一个节点后,在页面主界面中显示该数据类别中的相关信息。

航次信息列表显示该数据类别中所有航次信息,根据所选择航次的不同,在左侧的地图中动态加载相应的站点信息,在地图中以红色点标记。地图左上方导航栏允许用户对地图上下左右移动、放大缩小等操作,用户可以按住鼠标左键对地图进行拖拽移动。

选定可视化的航次、站位及可视化要素后,点击“绘制曲线”按钮,“绘制曲线”按钮包含“时间序列曲线”、“剖面曲线”及“数据比对”曲线三种形式,分别对应不同的曲线类别。图4所展示的是指定站位下的海水温度曲线。其中该图的标题包括所选中的航次、站位及要素信息。曲线的纵坐标是水深,横坐标是海水温度,用户可以从曲线中直观分析出海水温度随海水深度的变化趋势。将鼠标放在曲线上的数据点上可以查看该点的实际水深及温度数值。

(2)数据查询

数据查询模块以列表形式展示渤海数据库数据。

(3)数据下载

下载查询的数据库数据,包括可视化形式展示或列表形式展示的数据下载。提供多格式的文件下载,包括通用海洋数据文件Net CDF、HDF、TXT及XML格式。

5 结语

本文对渤海海洋基础调查数据9类数据库中数十种类别数据结构进行分析,研究设计可视化信息数据库,屏蔽底层数据库异构,规范数据层数据,业务逻辑层仅通过一个接口即可访问各数据库中的数据,为统一处理数据奠定基础。

开发实现了各数据库通用的数据处理组件、地图组件、海洋数据格式转换组件、数据查询组件及数据可视化组件,不仅在本系统中应用优化系统结构,也可以在今后的类似系统开发中应用以实现二次开发,组件的独立部属及可移植性实现的软件的复用性,简化工作流程,节约资源。

设计实现了一个有效的渤海海区数据可视化查询与展示系统,用户通过该系统可以以可视化方式查询数据库数据并进行可视化操作。该系统对于渤海海区数据的管理共享具有一定的应用价值。

目前本系统只对渤海海区调查数据库数据进行可视化应用,下一步将对监测数据及产品数据可视化进行研究,以完善海洋多种数据库数据的可视化应用领域。系统对于海洋数据文件的可视化涉及较少,现在许多专业处理软件针对特定的海洋数据文件格式可以进行可视化等操作,为扩展系统功能,系统将进一步研究文件数据可视化的集成,在系统中调用海洋数据文件处理软件的接口,实现文件数据的可视化。

参考文献

[1]王卷乐,游松财,孙九林.地学元数据结构分析及其管理系统设计[J].计算机工程与应用,2005(5):5-7

[2]黄冬梅,张弛,杜继鹏,等.数字海洋中海量多源异构空间数据集成研究[J].海洋环境科学,2012(1):111-113

[3]邵宝民,李勃,田丰林,等.面向网络的海洋研究通用信息平台中的设计模式[J].中国海洋大学学报(自然科学版),2012(5):120-124

[4]覃如府,叶娜,许惠平,等.GIS系统中多维海洋数据可视化研究[J].同济大学学报(自然科学版),2009(2):272-276

[5]张峰,刘金,李四海,等.数字海洋可视化系统研究与实现[J].计算机工程与应用,2011(35):177-179

[6]黄冬梅,方的苟,张明华,等.面向海洋应用的Web服务管理监控平台构建[J].计算机工程,2011(2):272-274

[7]Serra-Sogas N,O Hara P D,Canessa R,et al.Visualization of spatial patterns and temporaltrends for aerial surveillance of illegal oil discharges inwestern Canadian marine waters[J].Marine PollutionBulletin,2008,56(5):825-833

[8]Kulawiak M,Prospathopoulos A,Perivoliotis L,et al.Interactive visualization of marine pollutionmonitoring and forecasting data via a Web-basedGIS[J].Computers&Geosciences,2010,36(8):1069-1080

数据驱动的可视化设计 篇6

数据结构及其算法的教学难点在于它们的抽象性和动态性,在课堂授课中采用图示可以在一定程度上化抽象为直观,但很难展现对象的瞬间动态特性和算法的动态执行过程[1]。本系统用Visual J++6.0实现,完全从学习者的角度考虑,以建构主义学习理论为指导,为数据结构教学软件增加静态模型和动态模型两种数据建模功能,不仅包含各知识点的静态文本演示,还对典型算法进行动态交互式模拟跟踪,将抽象的数据结构和算法实现动态同步可视化,具有一定的实用价值。

1 系统总体设计

系统坚持以“学”为中心的设计原则,重视学习的协作性、交互性,以学生为中心,在真实的情景中实现知识建构。系统总体结构[2]如图1所示,整个系统以知识库为中心,教师按其对领域知识的理解建立知识模型。系统为用户提供知识点的学习、章节学习、数据建模、数据结构与算法动态同步可视化和自我测试等功能。其中,知识点的学习展示领域知识的文本信息,在采用图形用户界面的同时又兼顾人们的书本阅读习惯,将各部分的入口按目录形式列于屏幕左方,构成知识导航区。知识点的学习从知识点的知识展示、典型示例和知识点测试三个层面来设计;章节学习采用PowerPoint作为辅助平台,营造以学生为中心的,音、像、光、色、语言文字组成的立体化教学,激发学生的学习兴趣,调动学习的积极性、主动性,可以最大限度地模拟课堂交互教学,用户可更加系统地对整个章节进行学习,并加深和巩固对知识的理解;数据结构与算法动态同步可视化采用自动和人工相结合两种方式来实现算法演示,并实现面向多层次用户、多路径等特点,自动状态采用Authorware和Flash作为辅助平台制作动画,按预定的程序连续进行算法的单步执行,并配合语音讲解,适合于较低层次用户了解算法的执行过程,手动状态则由用户输入原始数据,系统根据用户输入进行动态演示,用户可控制算法的执行进度,学生可仔细研究算法的细节,适合于较高层次用户研究算法;系统内建一题库可动态生成试卷,以客观题为主,自我测试可根据测试目标,在数据库中找到与此测试目标相关联的试题,按照一定的算法,如每个难度抽取定量试题等,组成试卷,用户可直接作答,也可查看正确答案,测试完毕可查看得分和用户作答的答案以及正确答案,之后可选择继续测试或退出测试。

2 系统实现的关键技术

2.1 面向对象思想

用C或Pascal描述数据结构,不能很好地实现抽象数据类型的思想,只有用C++或Java的类才能很自然地实现抽象数据类型的思想,这为改良教学内容,促进软件复用和设计良好的软件架构,打下了坚实的基础[3]。根据图的拓扑信息特征,用类描述图中顶点,类成员中包括顶点序号、邻接点(后继)、邻接边权值等基本属性。由于后继可能有多个,而且每个顶点的后继数目各不相同,也即是动态变化的,需要动态数组来表示。同时,在类中封装了类成员以及相应方法,实现了模块化和信息隐藏。这种存储结构对不直接连通的结点之间的信息不予保存,这样整个图只要n个顶点类对象就可以完全存储(一维数组),其空间复杂度为O(n),比起邻接矩阵的O(n2)大大节省了存储空间;与邻接表相比避免了使用指针,降低了复杂性,便于学生理解。同时,在执行算法时,可以随时直接获得某个结点的所有相邻顶点的全部信息以及对应的边(弧)信息,并利用相邻顶点数目来控制循环,提高算法效率[4]。

2.2 数据结构可视化

可视化技术的目标是帮助人们增强认知能力。基于计算机的可视化技术不仅仅把计算机作为信息集成处理的工具,用计算机图形和其他技术来考虑更多的样本、变量和联系,更多的是作为跟用户之间的一种交流媒介。可视化在认知激励和用户认知之间建立起一个反馈环,运用人类认知的知识,同时要避免观察出不正确模式,以免错误地决策和行动[5]。为将复杂的数据结构以直观易懂的形式展现在屏幕上,应设计可视数据结构。可视数据结构就是在顶点类的基本属性和操作的基础上,增加可视属性(如顶点大小,颜色,坐标值等),并提供可视化接口供程序调用[6]。通过调用这些接口,开发人员可以选择在现有的画图区域中显示数据结构。由于用户输入的数据是不可预知的,确定图中各顶点的坐标将是一个难题。假设图有n个顶点,采用圆形布局法:在一个图像框内绘制图,以图像框的中心为圆心、宽度的一半为半径可得一圆,将圆周等分为n份得到n个坐标作为顶点类的坐标,若两顶点之间有边则调用相应方法画线,并在连线中点(最好在五分之二)处标出边上的权值,如此便可自动实现数据结构的可视化。

2.3 利用自动化组件技术设计统一用户接口

COM(组件对象模型)是一个与操作平台无关的、分布的、面向对象的机制,它能创建可以相互交互的二进制软件模块。

(1) 用COM组件绘制图上的边(或弧)

图论中的图有有向图和无向图之分,带权图有有向网和无向网之分,因此系统将图的边分为四类:弧、边、带权弧和带权边。边的绘制用COM组件Graph实现。另外为实现算法的动态演示Graph中的方法还要分得更细一些,包括绘制顶点、边、弧(带箭头)、带顶点边、带顶点弧、带权边、带权弧等多种方法,很好地解决了代码重用问题。Graph部分代码如下:

/**

* This class is designed to be packaged with a COM DLL output format.

* The class has no standard entry points,other than the constructor.

* Public methods will be exposed as methods on the default COM interface.

* @com.register ( clsid=0F80F47E-93CD-463E-939C-563CAB4AB169,typelib=68D50FBD-0633-488F-A4A0-114F5E97F6CE )

*/

public class Graph

{

// TODO: Add additional methods and code here

/**

* NOTE: To add auto-registration code,refer to the documentation

* on the following method

*public static void onCOMRegister(boolean unRegister) {}

*/

}

public void drawEdge(PictureBox picBox,Color colorOfDrawing,Point p1,Point p2,int i,int j)

{ int x0,y0,x1,y1,x2,y2,x,y,r=10;

int penStyle=com.ms.wfc .ui.PenStyle.SOLID ;

Graphics g=picBox.createGraphics();

Pen oldPen=g.getPen ();

g.setPen (new com.ms.wfc .ui.Pen (colorOfDrawing,penStyle));

x1=p1.x;y1=p1.y; x2=p2.x;y2=p2.y;

g.drawLine (x1,y1,x2,y2);

Color vertexColor = Color.RED;

g.setTextColor(vertexColor);

Rectangle rec1=new Rectangle (x1-5,y1-5,20,20);

g.drawEllipse(rec1);

Rectangle rec2=new Rectangle (x2-5,y2-5,20,20);

g.drawEllipse(rec2);

g.drawString("v"+Integer.toString(i),x1,y1);

g.drawString("v"+Integer.toString(j),x2,y2);

}

(2) 实现其它可重用用户接口

可用COM组件设计启动屏幕、About框、登录对话框等常用界面,甚至最小的编程方面力争运用COM组件技术实现代码的可重用性。

2.4 运用ADO技术管理知识库

ADO ( ActiveX Data objects,ActiveX数据对象)是由微软公司推出的以ActiveX技术为基础的数据存取方法,是一组允许连接到并使用任意类型的数据库,但不管它的位置的数据库对象。系统运用ADO技术管理知识库和试题库。

2.5 数据建模

系统主要是为用户提供学习支持,完全从学习者的角度设计,增加数据建模功能,让学习者自己建立各种数据结构,人机交互方式输入图,即由人读图逐个图素地输入图,用户输入信息的同时系统自动显示数据结构。用户通过自己输入图形建立了数据模型,并根据自己的学习内部条件确定进行算法演示的数据变量(如图结点个数、权值等),并实现用不同的执行方式对同一个数据建模的算法演示,如以不同结点为起点求始点到终点的最短路径等。

2.6 数据结构与算法动态同步可视化

手动动态演示通过程序控制来实现。其优点在于图的信息是由用户人机交互输入的,算法的动态演示基于用户建立的数据模型,算法的动态演示过程用户是主动参与的操作者,而不是被动接受的观看者,所以能很好地激发学生的学习兴趣。每个算法采用的数据结构不同,所以数据的表达方式也不同,但演示过程相同。如图2是深度优先遍历算法的直观动画演示,左窗口是遍历时的动态演示,利用椭圆、直线、文字、填充颜色等手段描绘出顶点和直线,如将当前访问的结点描画成粗线条红色,把遍历过程中经过的边用白色绘制,来体现遍历的动态过程;右窗口是算法执行的动态演示,用字符的反显来体现算法的执行位置;左右窗口的动画演示是动态同步可视化进行的。在信息显示区的“遍历序列”框中显示当前图的遍历序列,用户实时得到当前数据建模的运行结果。在“遍历时栈的变化情况”框中动态显示遍历过程中栈的内容,使用户实时了解算法的动态执行过程和算法执行时所需的辅助空间——栈的变化情况,更进一步地理解图的深度优先遍历过程是一个递归过程。

3 总 结

系统具有以下特点:⑴考虑到系统的集成性和跨平台使用性,用Visual J++作为开发平台,用Flash、Authorware、PowerPoint等软件作为辅助开发平台。⑵系统充分利用Flash动画、声音、图像等多媒体元素,以趣味性、艺术性、生动性使学生轻松地掌握所学的知识点。⑶对同一个问题系统提供了多种理解和解决的途径,不仅满足多层次用户的需求,而且多种方式的完美结合,使用户可循序渐进不断加深对算法的理解,可很好地锻炼学生的自主学习能力,对学生研究算法很有帮助,对提高学生的学习兴趣和学习热情更是大有益处。与其他数据结构CAI系统的最大不同之处在于它的数据建模功能、可视数据结构、友好灵活的交互性和面向多层次用户、多路径的特性。

参考文献

[1]吴伟民.数据结构和算法的可视化教学研究与实践[J].现代计算机,(71).

[2]陈丽娟.算法执行过程的可视化在CAI中的应用[J].计算机工程,1999,24(9):83-84.

[3]殷人昆,邓俊辉.清华大学“数据结构”精品课程建设[J].计算机教育,2006,5.

[4]李峰,张建中.网络最短路径算法的改进与实现[J].厦门大学学报,2005(增刊):44

[5]耿学华,傅德胜.可视化数据挖掘技术研究[J].计算机应用与软件,2006,2.

数据驱动的可视化设计 篇7

关键词:数据可视化,流程工业

1 引 言

随着信息化进程的不断推进,信息技术对传统产业的渗透成为提高现代制造企业生产力的重要手段。ERP、MES、实时数据库等技术开始在流程工业中广泛应用[1,2,3],应用系统中的数据规模增长迅速。同时,这些数据表现为不同的信息粒度,如不同的时间粒度、不同的空间粒度、不同的组织机构粒度等。我们把这些数据称为多尺度数据。但是数据分析能力却未得到很大的提高,这种不对称的发展造成了目前企业信息过载现象,因而如何对大量的多尺度数据进行有效分析成为企业生产经营面临的重要问题。信息可视化技术通过对抽象信息提供计算机支持的、交互式的、可视化的表示形式,不断增强人们对于日益增长的复杂信息的认知能力,成为人们解释现象、发现规律、辅助决策的强有力工具[4]。各种图表已经在商业智能(Business Intelligence,BI)中获得了大量的应用,主要用于信息的可视化呈现、查询、统计、分析,为商业智能系统提供决策支持。

然而,在对流程工业多尺度数据进行可视化分析和处理的过程中,由于使用者的知识背景、业务范围、角色和偏好不同,他们对于数据可视化的需求通常具有很大的差异,因此对于数据的可视化表征也有不同的需求,而且这种需求还有可能随着时间的推移发生变化。同时,使用者关心的数据往往具有不同的尺度和数据来源,他们希望能够将这些数据组织在一起,按照自己的需求来选择数据源,进行可视化,更好地对这些多尺度数据进行分析。

因此,如何灵活满足用户对于可视化表征和数据源的定制需要,成为一个目前急需解决的重要问题。

本文在已有信息可视化模型的基础上给出了多尺度数据可视化模型框架,并设计开发了一个面向流程工业多尺度数据的可视化系统,可以在数据可视化过程中个性化定制数据源和可视化表征的在线需求,从而提高用户的工作效率,改善系统的可扩展性和可用性。实例表明,由本数据可视化系统所组成的组态的软件可以让人们能够迅速准确地对这些多尺度数据进行分析和处理,从中获取有用的知识。

2 模型建立

Robertson将参考模型看成是可视化基础的研究问题[5]。他认为一个形式化定义的参考模型能够通过标明核心功能来分离可视化过程的组件。参考模型也能够用来比较和选择系统,并能确定人们对可视化过程现有理解的约束或限制。

Card认为信息可视化是从数据到可视化形式再到人的感知系统的可调节的映射过程[6]。Chi等人将Card等人所提出的信息可视化模型稍做改变,给出了信息可视化的管道,再以这个可视化管道为基础,并对比传统科学可视化的数据流网络模型给出了数据状态模型[7]。Wünsche则拓展了传统的信息可视化模型,将感知和数据解释考虑进去,从而用数据解码扩展了传统的管道模型[8]。Jankun-Kelly等人总结了已有的可视化模型,他们认为已有的可视化模型既不能明确确定解码可视化技术的参数,也不能描述可视化整个过程,并给出了一个可视化过程探索模型[9,10]。该模型中的主要组件包括:可视化转换模型、可视化会话模型和可视化过程图。

考虑到模型的适用性和被验证程度,我们并没有从头开始建立一个完全崭新的模型,而是使用了Chi的数据状态模型[7]作为基础,建立一个通用的、可扩展的多尺度数据可视化过程模型。选择该模型作为多尺度数据可视化系统设计的基础主要是因为:第一,这个模型为区别信息可视化技术提供了分类学的坚实基础[11];第二,Chi证明这个模型与久经时间检验的数据流模型在功能上等价[12];第三,这个模型可以支持多数据源和多视图,而这对于用不同方式表现多尺度数据十分有利;第四,这个模型在本质上支持交互,交互模型与可视化过程可以很好地结合起来[7];第五,在该模型的支持下,完成了信息可视化工具集的构建[13]。

定义1(多尺度数据模型Multi-scale Data Model) 流程工业的多尺度数据模型使用一个五元组来定义, D = {Entity,Time,Organization,Material,Procedure},Time,Organization,Material,Procedure分别描述在时间、组织、物料和工序上的尺度。

流程工业的生产运行功能按层次可分为计划层、调度层与操作层。计划层根据市场、库存、销售等情况,安排全厂的中、长期计划。调度层主要考虑物流平衡、能力(反应能力、存储能力、运输能力等)平衡及环保要求等。操作层主要考虑原料进厂、生产加工、中间产品储存直至产品出厂的物流移动过程。虽然层次不同,但是它们都关注生产设备状态、公用工程数据、质量数据等关键生产数据,然而这些数据在时间、组织、物料和工序上的尺度是不一致的。

定义2(用户模型User Model) 用户模型是计算机系统对当前的使用用户的知识表示[14],使用一个四元组来描述用户模型:U = {Role, Knowledge, Preference, Ability},Role,Knowledge,Preference,Ability分别描述用户的角色、背景知识、偏好、能力。

对流程工业数据进行分析的用户主要包括以下类别:

生产主管:主要负责日常生产管理,对能耗情况进行统计、技术分析。

调度主管:主要负责对生产指令执行情况进行跟踪。

工艺主管:主要负责装置工艺技术全面管理工作,掌握装置生产动态。

质量主管:主要负责产品质量监管、考核,分析质量问题。

车间主任:主要负责车间安全生产、产品质量,组织开展车间、班组成本核算。

我们可以看出,因为角色(Role)不同,这些用户的业务范围也不相同。另外,不同用户的背景知识(Knowledge)、偏好(Preference)、能力(Ability)也不尽相同。

定义3(算子Operator) 算子n处理领域D的信息d,并将其转换到另一领域D′的信息d′。d×nd′(dD & d′∈D′)

从转换前后领域所处阶段来看,可将算子分为阶段内算子和阶段间算子。当领域D和领域D′属于同一个数据阶段时,此时算子Operator为阶段内算子;属于相邻阶段时,此时算子Operator为阶段间算子。

定义4(函数Function) 函数f处理领域信息之间的转换,包括阶段内的转换或相邻阶段之间的转换。显然一个函数f由一系列的算子所完成N=n1, n2,…在这个系列中的每一个算子ni都将一个领域Di映射到另一个领域Di′。在这个系列中下一个转换的领域必须与Di′一致。例如:如果m3=nnnn1,则对信息d应用m3时,d×m3= d×nnnn1 (dD2,d×n2∈D2′=D3, d×nn3∈D3′=D2)

因为每一个算子只是将一个领域里特定的数据作为输入,所以一个算子的输入数据格式与另一个算子的输出格式不一定相同。当构建一系列算子实现一个函数时,需要保证上一个算子输出与下一个算子的输入的领域及数据格式保持一致。

定义5(多尺度数据可视化过程模型Multi-scale Data Visualization Process Model) 多尺度数据可视化过程模型M描述了从多尺度数据到可视化形式再到用户感知系统的可调节的映射过程,使用一个三元组来描述多尺度数据可视化过程模型:

M = {D, U, P}

式中:DU——多尺度数据、用户;P——多尺度数据到可视化形式的映射过程,由一系列的函数所组成, P=f1,f2,f3,…对可视化过程模型M进行实例化时可以得到它的一个实例mi,mi可以完成在用户交互基础上,从最初的数据阶段到视图阶段的全过程。

多尺度数据可视化过程模型提供了一个概念模型,可以提取沿着可视化管道的所有关键的可视化操作(意味着用户交互),能够对设计中重要的结果(artifacts)进行识别。同时,它能帮助最终用户和设计者更好地理解整个可视化过程,并建立起对将应用算子环境的理解,知道算子如何被应用和做什么。最终用户可以预测他们交互行为的结果并且选择合适的算子来得到期望的结果。设计者可以区分和理解算子与交互组合的关系,并且能识别不同技术的相同之处,这样可以更好地实现系统的模块化和标准化。

3 系统构建

我们利用软件体系结构来说明系统的构建。软件体系结构描述了软件系统中各组成元素之间如何相互协调与处理。软件体系结构是一个复杂软件系统的高层结构,其基本着眼点是系统结构和需求与实现之间的交互。我们可以使用软件体系结构中三个基本要素来描述,如图1所示,构件(Components)、连接子(Connector)和配置(Config)[15]。在对流程工业多尺度数据可视化系统开发时,采用管道-过滤器(pipeline-filter)的结构。体系结构中的构件可用过滤器来表示,可实现算子的功能,而连接子可用管道来表示,配置则成为如何通过管道连接各过滤器的约束,完成了对函数以及整个多尺度数据可视化过程模型的组装。

在管道-过滤器体系结构中,每个处理步骤都被封装在一个过滤器组件中,数据通过相邻过滤器之间的管道进行传输。其好处是每个过滤器可以单独修改,功能单一,并且过滤器的选用也是可以进行配置;可以存在不同的输入数据源;互相不连接的过滤器无需共享状态信息等;可以根据应用的需要增加相应的过滤器,从而实现系统的可扩展性。

如图2所示,管道和过滤器体系架构把多尺度数据可视化过程分成为四个独立的处理阶段:①值阶段(Value Stage),过滤器的输入为原始数据,由于原始数据存在不同的结构,因此也需要有不同的数据提取过滤器与之相对应。统一设计的多尺度数据过滤器可以让用户更多地专注于所处理的多尺度数据特征上,而不是不同的数据格式上。根据多尺度数据的不同特征,可以修改配置信息(CI)来选择与之相对应的过滤器;②分析提取阶段(Analytical Abstraction Stage),过滤器的输出为多尺度数据表,需要建立大粒度数据和小粒度数据的关联关系,以便在可视化时显式地进行关联。配置信息代表了对数据不同方面的选择;③可视化提取阶段(Visualization Abstraction Stage),过滤器将输出多尺度数据可视化结构,在建立可视化结构的时候,必须充分考虑人的认知与可视化元素之间的关系。配置信息将从可视化元素的不同的组合中选择合适的结构;④视图阶段(View Stage),过滤器将输出视图,为形成较好的视图,需要更好地符合人们大脑中的模型。用户根据自己的需求对配置信息的修改将实现对可视化信息的交互,在不断变换视图的过程中完成对多尺度数据空间的探索。

4 实例应用

系统已经在中国石化SMES的综合展示模块得以成功应用,并取得了良好效果。实例应用表明:系统能够对流程工业海量多尺度数据进行可视化呈现,并通过各种交互技术辅助用户洞察信息中隐藏的规律与模式,为复杂信息分析提供有效的支持。下面以在某炼化企业的实例说明其运行效果。

图3为多尺度原油库存数据可视化展示页面。页面内包括原油编码、日期、库存曲线图、库存表、罐等组件。用户容易看到指定日期的库存情况及其前一个月内库存的变化趋势,从而可以分析理解厂内的原油库存信息,帮助进行调度作业。

图4为多尺度物料数据可视化展示页面。页面内包括期初逻辑物料、期初基本物料、期末逻辑物料、期末基本物料、所选物料的罐库存分布、所选罐的库存变化趋势等组件。用户即可以看到计划层逻辑物料的期初、期末情况比较,也可以看到调度层的库存分布情况,还可以对操作层某一个罐的库存情况在所指定的时间区间的变化趋势进行分析,从而更好地安排炼油生产作业。

5 总 结

本文所提供的多尺度数据可视化系统,可以实现对流程工业多尺度数据的全过程多维度、多角度综合展示。系统在炼化企业MES中的应用,为计划层、调度层、操作层进行生产管理提供了有力支持。

数据驱动的可视化设计 篇8

2012年,莫言获得诺贝尔文学奖,他是有史以来首位获得诺贝尔文学奖的中国籍作家。2013年12月诺贝尔颁奖典礼前后,财新数据可视化实验室推出数据新闻,向一百年来的七百多位获奖者致敬。

如今,越来越多的中国媒体和中国人关注诺贝尔,而要了解诺贝尔的历史,财新网的这张《百年诺奖》数据可视化动态图一目了然。而且在此专题出品一年后,细心地加上了2014诺贝尔奖的信息。可视化设计师任远说,这个专题会常年更新下去。

这个项目 从数据分 析——视觉 通道——视觉结构——视觉设计,经过多次迭代的方式,最终得到较满意的设计。跟着可视化设计师任远的思路,图解设计过程:

一、数据分析

在分析了诺贝尔的原始数据以后,决定以时间线为导向,分别展示各年份的数据:

(1)该年各奖项获奖比例;

(2)该年各国各奖项获奖比例;

(3)该年各国按获奖年龄分布的获奖人,获奖人的数据包含:照片,名字,英文名,性别,获奖年龄,国家,奖项类别。

为获奖人的属性分配可视化的“视觉通道”:

(1)获奖年龄:位置;

(2)国家:位置;

(3)奖项类别:颜色;

(4)其他的数据信息:边栏。

二、视觉结构设计

由获奖年龄、国家、奖项类别的视觉通道:位置、颜色,可以确定用散点图的结构会比较直观。由于国家的列表项有40多个,用横向和纵向的散点图会超出界面边界,所以把散点图折成了圆形来表现。半径表示获奖年龄,对应圆心的角度表示国家,颜色表示奖项类别。再加一层时间轴就构成了基本的数据图(见图1)。

可以看到用圆形表示散点图,越靠近圆心等分的面积越小,比较受限制,可读性和视觉效果也不佳。所以将圆形变成了环形的散点图(见图2)。

三、权衡视觉设计、交互设计、用户体验

这样一来,数据图不论是在视觉和可读性上,都有了提高。可是问题又出现了,时间轴放在最里面,用户操作起来很不方便。因为还需要一个可以精确点选到从1900-2013年的某一年的功能。于是在接下来的几天尝试了另外几种解决方案。

根据之前的数据图,拓扑出来了6个方案(见图3),但都有各自的优缺点,始终不能达到权衡视觉设计、交互设计、用户体验的最完美状态。最后选择了两个比较接近的设计,第一个和第五个。然后,加入“各国各奖项获奖比例”继续往下设计。

最终选择了“图4”中的第二个方案。

四、环形文字的可读性处理

前面的图中文字在环形排列时会有反转的情况,可读性不高。在尝试左右反转的方式后,最终又改为另一种方式:将环形用“X”分为上下左右4个部分,上下用竖排文字,左右用横排文字,文字的排列遵循从左到右和从上到下。这种方式很适合中文字体,因为中文字体基本上都是显方形的,在元素细节构图上会比较好看。如果是英文字体的话可能不太美观,英文字体大多为长方形,所以竖排的文字会显的扁一些(见图5)。

五、真实的数据往往会有“缺陷”

诺贝尔的数据在“1900”和“1940-1942”两个年份段有空缺,时间在变化的时候,数据图右侧会出现两次人物列表空白。而两个年代,第一次是在开始时间1900年,第二次是在二战期间19401942年。

为了画面元素平衡,开始时,使用诺贝尔头像和文字标题替代右侧的空白处;二战期间,用坦克和文字标题替代右侧的空白处;都用插画风格来表现,和左侧的环形数据图相应和。插画用少面积的蓝色填充,达到画面色彩平衡。

六、整体和局部展示

整个诺贝尔可视化的过程都是展示单个年份,没有一个整体呈现的过程。所以在一开始的时候加了一个整体概况分布。

上一篇:控制保护系统下一篇:透镜系统