多维数据可视化技术的运用

多维数据可视化技术的运用

 

随着科技的发展,地质研究过程中可获得的属性信息越来越丰富(地质、物化和遥感信息),这些信息往往量大且标度不统一[1],不利于研究。常用的直方图、等值线图等方法由于各自研究的局限性,难以在全局上用一个图形简单地总体把握研究区的属性特征,因此迫切需要一种新的、简单且快速可行的方法来反映这些属性信息的特征。目前,多维数据可视化技术可以满足这一要求,而定量化的属性信息本质是研究区属性的多维数据,其中的任何一维(列)数据均表示研究区的某一个属性特征。可以使用多维数据可视化技术来展现多维数据的内在特征,这种方法可以在一定范围内作为一种有效的抽象信息展现工具,准确快速地发现数据集中隐藏的特征信息、关系信息、模式信息及趋势信息等[2]。本文在总结前人研究成果的基础上,用VC++6.0实现了基于几何的多维数据可视化方法,即平行坐标法和圆形平行坐标法。该方法在澳大利亚新南威尔士州Mandamah地区铜-金矿床钻孔数据的应用中,可以看出平行坐标法和圆形平行坐标法对比直方图和等值线图具有独特的优势,并且包含了两者的优点,拓宽了一个图所能表示的独特信息。   1多维数据可视化   人类生活在三维空间中,面对海量的多维信息,由于自身认知能力的局限性,需要通过特殊的途径对数据进行变化才能被我们在低维空间(一、二和三维)所认识。这种数据变化不应当只是简单的图形映射,而是要尽可能地把多维数据的特征及它们之间的关系信息在低维空间中展现出来[3-4]。目前,国内外学者已经提出了多种有效的多维数据可视化方法。如:(1)主成分分析中的数据方差[5]和多维尺度变换算法中的相异度[6]等是基于降维技术映射的方法。其基本思想就是将多维数据看做多维空间中的点,然后将这些点用某种可以在一定程度上保持这些点间特定关系的方法映射到低维可视化空间中。(2)CherNoff面法、星绘法和SurveyPlot法等基于图形和图标的多维可视化技术。图形法用一个图标表示一个多维信息的对象[7];图标法用多个具有可视特征的图标来表达多维信息,图标的每一个信息可用来表示多维信息的一维[8]。(3)平行坐标法和圆形平行坐标法等基于几何的多维可视化技术。其中,平行坐标法是目前最常用的多维数据可视化方法之一,圆形平行坐标是对它的进一步扩展[9-10]。这两种方法表达的数据比较直观且容易理解,但当数据量较大时,折线密度增加将产生大量交叠线,不便于辨识。   平行坐标的基本思想是将n维数据属性空间通过n条等距离的平行轴映射到二维平面上,每一条轴线代表一个属性维,轴线上的取值范围从对应属性的最小值到最大值均匀分布。这样,每一个数据项都可以依据其属性取值,用一条跨越n条平行轴的折线段表示,相似的对象就具有相似的折线走向趋势。可以这样来实现:设Pi=(pi1,pi2,…,pin),i=1,2,…,m,Pi为n维欧式空间中的一点(m为n空间中点的个数),经过映射Pi的第j分量pij变换为二维平面第j个平行轴上的点qij(xij,yij),那么Pi可以用依次经过点qi1,qi2,…,qin的折线段表示。令Aj和Bj分别表示这m个点的第j分量xij的最小值与最大值,第一个平行轴的横坐标为d0,平行轴最低点的纵坐标为l0,平行轴的间距为d,平行轴的长度为l,映射关系可用图1来表示,那么点qij在二维直角坐标系中的坐标(xij,yij)可用下式计算。   圆形平行坐标法是对平行坐标法的扩展。首先将圆n等分,使圆中的n条半径表示n维空间的n条坐标轴。将n维数据中的每一维数据映射到对应半径上,并用折线把相邻半径(维)间的数据连接起来,形成的闭合多边形表示一个多维数据。由于坐标轴内外的不对称性,它能更好地揭示多维信息之间的某些特殊关系。其映射关系可用图2来表示,从图中可以看出圆形平行坐标法不仅需要对y轴方向进行压缩或拉伸,x轴方向也需要。具体实现时,令半径为R,第一条半径(坐标轴)角度为0°,相邻半径之间的夹角为θ=360°n,则表示第i个半径的角度为:θi=θ(i-1)。那么点Pi=(pi1,pi2,…,pij,…,pin),i=1,2,…,m,Pi的第j分量pij在圆形平行坐标系中点qij的坐标(xij,yij)可用下式计算。   2程序设计   本程序设计了数据处理模块和绘图模块。数据处理模块用于接收数据和处理用户命令;绘图模块根据数据和用户命令绘制并显示图形。主要实现的功能及实现方法原理为:(1)在数据处理模块中,首先定义了本程序可识别的数据结构。其中第1行第1列数据为数据的个数,第2列数据为数据的维数;第2行为各维数据的名字(可以是任意字符串),从第3行开始为对应维数据,数据间用空格隔开,最后用通用的文本文件保存结果。(2)其次根据各维数据的最大值和最小值,设计了供用户选择各维数据显示范围和顺序的命令窗口。可供用户选择的数据表示方法有平行坐标法、圆形平行坐标法和二维散点法。(3)在绘图模块中,为避免由于数据量大而使系统在重绘时造成的死机现象,应用Cbitmap类定义了虚拟画布。当程序接收到绘图命令时,先在虚拟画布上绘制图形并保存,最终调用已保存的图片进行显示。这样可以避免图形重绘,提高了系统的效率。   本程序除以上大框架的功能外,在细节上也进行了很多人性化的处理,使得本程序更具有通用性,具体将在实例部分阐述。实现整个程序的流程图如图3所示。   3应用实例   将上面VC++6.0实现的多维可视化方法应用于Mandamah地区铜-金矿中。该矿床位于澳大利亚新南威尔士州中南部[11],Temora以北30km,Barmedman以南4.5km,地理位置在东经147°22′30″~147°23′12″、南纬34°10′27″~34°11′00″,研究区地形平坦。本文使用了该地区353个钻孔数据,共36418个采样点,每个样品都分析了Au、Cu、Pb、Zn、Fe、Ni、Mo、As、Bi和Ca等10种元素的含量(由于各种元素含量差异较大,在分析时将各元素含量的单位进行了统一,用g/t即10-6来表示);此外还记录了每个采样点的三维地理坐标,分别记为East、North和Depth(单位为m)。#p#分页标题#e#   在这些数据中,以(534500,6218300,15)采样点为例,分析得到Au、Cu、Pb、Zn、Fe、Ni、Mo、As、Bi和Ca等10种元素的含量分别为0.01、47.00、12.00、18.00、6.99、0.00、5.00、7.00、0.00和0.04。将该点的三维坐标值及10种元素的含量值一起作为13维空间的一个点,记为(534500,6218300,15,0.01,47.00,12.00,18.00,6.99,0.00,5.00,7.00,0.00,0.04)。前3维数据为原数据中地理坐标East、North和Depth,后10维数据分别为Au、Cu、Pb、Zn、Fe、Ni、Mo、As、Bi和Ca的元素含量。对该数据进行变化(公式(1)和公式(2))后得到平行坐标和圆形平行坐标中的13个散点,依次连接这些点,形成如图4所示的折线和图5所示的闭合多边形,分别表示该采样点的数据。当单击该折线时,该折线高亮显示并显示各维数据值;双击坐标轴时,显示该处坐标值。其中East、North和Depth之间的折线表示(534500,6218300,15)这个采样点。Depth和Au之间的线段表示该点的Au元素含量,Au和Cu之间的线段也表示该点Cu元素的含量。同时,该线段的方向(斜率)也可以表示Cu元素与Au元素的相对含量是增加还是减少。   在地理坐标为(537115,6216690)的位置上,打钻总深度为96m,垂直方向每隔2m分析一个岩心样品点。用表示一个钻孔采样点的方法,在平行坐标和圆形平行坐标上分别表示该钻孔数据(如图6,7)。从图中可发现,表示Pb、Fe、Ni、Mo、As、Bi和Ca等7个元素数值的坐标轴两边折线分布稀疏或者趋于0,表示这些元素数值分布少或者不存在。深度超过47m(单击Depth和Au之间的线段定位)时,Au元素含量约为0.01左右(双击该处坐标轴读出,以下类似),Cu和Zn元素量约为60,该深度段内折线分布密,说明这些位置有Au、Cu和Zn元素分布。进一步查看(如图8)Au、Cu和Zn元素间的关系,由折线密度可知Cu、Zn元素的含量值有两个主要聚集区,分别在12和60附近。   将上面的方法应用于该地区353个原始钻孔数据,结果见图9和图10。从图中折线密度可以看出,Au、Cu、Pb、Zn等元素都有高值突出,即高值附近折线密度稀疏,而大量数据聚集在低值附近,即低值附近折线分布密度高。   从上面的例子可以看出,用平行坐标和圆形平行坐标法表示多维数据,具有以下性质:(1)若研究某一维数据的频数分布时,可以通过对应坐标轴上折线的密度来判断,即两侧折线越疏,表示频率越低;两侧折线越密,表示频率越高。这与直方图表示的效果类似。更为重要的是,平行坐标和圆形平行坐标法克服了直方图无显示样本空间位置的缺点。直方图是对数据作无序的频数统计,这一点使得直方图失去了地质数据的位置属性。而平行坐标法或圆形平行坐标法可以通过双击坐标轴间的线段来显示该数据地理坐标,表示结果比直方图表示法更全面。此外,直方图只能表示二维或一维数据的频数分布,而平行坐标法和圆形平行坐标法不受维数的限制。平行坐标法或圆形平行坐标法可以用一个图表示多个数据频数分布信息,而使用直方图方法需要用多个直方图才能表示这种情况。(2)在分析数据分布的等值性时,可以通过双击某一坐标轴(代表某一地质属性)上某一数值所在的折线段,将与其等值的所有折线段及其所代表的数据值高亮显示,通过读取各坐标来寻找与该值等值的点。该功能可以定位与该折线等值的所有等值点的坐标,这与等值线表示的效果类似。更为重要的是,等值线图只能显示各数据的坐标,不能表达各数据的频数分布,而平行坐标法或圆形平行坐标法可以通过折线密度判断频数,这比等值线图表示法更全面。此外平行坐标法或圆形平行坐标法可以用一个图表示多个数据等值分布信息,而使用等值线方法需要用多个等值线图才能表示这种情况。   从以上分析可以看出,平行坐标法和圆形坐标法融合了直方图和等值线图各自的信息,避免了信息丢失的问题;且由于每个图可以表示多个属性(如各元素含量)的数据信息,因此可以在全局上了解整个研究区的数据分布特征。此外,坐标轴间线段的斜率还可以表示研究区各个研究对象(属性)之间可能存在的关系。综上所述,用平行坐标法和圆形坐标法来研究多维数据在很大程度上拓宽了一个图所能承载的数据信息。   4结论   基于多维数据可视化方法,用VC++6.0实现了基于几何的平行坐标系法和圆形平行坐标系法的多维数据可视化方法,该方法可以表示研究区的多个属性信息,从而在全局上了解研究区的特征。在澳大利亚新南威尔士州Mandamah地区铜-金矿的实际应用中成果显著。(1)直方图可以统计数据频数,但无法显示坐标信息;等值线图可以定位位置,但无法显示数据的频数。此外,这两种方法对数据的维数有严格的限制。平行坐标法和圆形平行坐标法用一个图简单、快速可行地融合了两者的优势:通过对应坐标轴上折线的密度来表示的频数分布;通过对应位置坐标,可查看数据分布位置。而且坐标轴间线段的斜率,还可以分析多维数据间的相对关系。(2)应用上述方法在澳大利亚新南威尔士州Mandamah地区铜-金矿床钻孔数据中,通过折线密度可以看出,Au、Cu、Pb和Zn4个元素都有高值突出,即高值附近折线分布密度稀疏,而大量数据聚集在低值附近,即低值附近折线分布密度高。本文的数据由澳大利亚新南威尔士大学地球科学学院D.R.Cohen博士提供,在研究中还得到了他的指导与帮助,在此致谢。