2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 统计学基于matlab MATPLOT:一款基于MATLAB的地球化学数据分析成图软件

统计学基于matlab MATPLOT:一款基于MATLAB的地球化学数据分析成图软件

时间:2022-11-08 20:33:17

相关推荐

统计学基于matlab MATPLOT:一款基于MATLAB的地球化学数据分析成图软件

在地球化学研究中,数据图解可以直观展示数据的规律和特征,一直以来是研究人员必不可少的分析手段。迄今为止,国内外开发了多款数据分析成图软件(例如,

为了解决以上问题,并且满足目前研究工作中的一些需求,我们开发了一款基于MATLAB的地球化学数据成图软件——MATPLOT。该软件一方面可以在Windows、Mac OS或Linux系统下的MATLAB中运行(MATLAB APPS形式);还可以在安装对应版本的MATLAB支持包后,通过编译生成的软件程序独立运行在不同操作系统中(独立运行程序)。该软件不但可以处理一个数据表文件不同表单中的数据,同时还可以处理同一文件夹下不同数据表文件的数据,并且不需要数据具有严格一致的格式。通过MATPLOT可以对地球化学数据进行常用成图分析(包括Hf和Nd同位素演化图解)或简单的统计分析(平均值和相关性分析)。所有成图均可导出为位图或矢量图,用于后期添加注释和说明。

1 结构与功能

MATPLOT程序的主界面(

图 1

Fig. 1

图 1

MATPLOT的主界面

Fig. 1

Main graphical user interface of MATPLOT

图 2

Fig. 2

图 2

MATPLOT功能结构图

Fig. 2

Functional components of MATPLOT

1.1 数据处理

MATPLOT的数据处理功能主要有加载/保存数据文件、导入数据、查看/编辑数据、数据选取/分组和数据导出等。

MATPLOT加载或保存的数据文件格式为“*.mat”,它是一种特定的MATLAB数据文件格式。一个有效的MATPLOT数据文件由四部分组成:(1)数据类型名。目前支持“全岩地球化学(Bulk Geochemistry)”和“锆石Hf(Zircon Hf)”两种模式,后续将支持其它数据类型;(2)变量名为“DataMat”的数据;(3)成图参数名和(4)成图参数。为了使用方便,MATPLOT会在启动时自动加载最后一次成功保存的数据文件。

在导入数据时,MATPLOT不但可以导入同一个Excel不同表单中的数据,还可以导入指定文件夹下所有Excel中的数据。程序将自动按照指定的变量名结构对数据汇总整理。在MATPLOT中可以自定义变量名结构表,也可以设置变量宏以用于自动计算。

由于使用习惯的不同,不同来源的同一类型数据常常具有不同的变量名。例如,全铁在不同文献中往往有多种表示方法:“Fe2O3t”、“Fe2O3*”或“TFe2O3”等。在选定变量名结构时导入数据时,如果变量名结构表中存在这些常用“变量名”(

表 1

Table 1

表 1(Table 1)

表 1 MATPLOT程序中识别合并的数据变量名

Table 1

Data with similar variate names can be merged together in MATPLOT

变量名相似变量名

Fe2O3TTFe2O3, Fe2O3*, Fe2O3t

FeOTTFeO, FeO*, FeOt

RbisoRb_iso, Rb iso

SrisoSr_iso, Sr iso

SmisoSm_iso, Sm iso

NdisoNd_iso, Nd iso

Rock_TypeRocktype, Rock Type

Sr87Sr86mSr87_Sr86m, 87Sr/86Srm, 87Sr_86Srm, Sr87/Sr86m, 87Sr/86Sr

Sr87Sr86iSr87_Sr86i, Sr87/Sr86i, 87Sr_86Sri, 87Sr/86Sri

Nd143Nd144mNd143_Nd144m, 143Nd/144Ndm, 143Nd_144Ndm, Nd143/Nd144m, 143Nd/144Nd

Nd143Nd144iNd143_Nd144i, 143Nd/144Ndi, 143Nd_144Ndi, Nd143/Nd144i,

eNd0eNd(0)

eNdteNd(t)

Pb206Pb204mPb206_Pb204m, 206Pb/204Pbm, 206Pb_204Pbm, Pb206/Pb204m, 206Pb/204Pb

Pb207Pb204mPb207_Pb204m, 207Pb/204Pbm, 207Pb_207Pbm, Pb207/Pb204m, 207Pb/204Pb

Pb208Pb204mPb208_Pb204m, 208Pb/204Pbm, 208Pb_204Pbm, Pb208/Pb204m, 208Pb/204Pb

Hf176Hf177mHf176_Hf177m, 176Hf/177Hfm, 176Hf_177Hfm, Hf176/Hf177m, 176Hf/177Hf, 176Hf/177Hf(corr)

Hf176Hf177iHf176_Hf177i, 176Hf/177Hfi, 176Hf_177Hfi, Hf176/Hf177i

SpotSpotNo., Spot No, spot, Spots

AgeAge(Ma), Age (Ma)

Yb176Hf177Yb176_Hf177, 176Yb/177Hf, 176Yb/177Hfm, 176Yb_177Hf, 176Yb177Hf, 176Yb177Hfm, Yb176Hf177m, Yb176/Hf177, Yb176/Hf177(corr)

Lu176Hf177Lu176_Hf177, 176Lu/177Hf, 176Lu/177Hfm, 176Lu_177Hf, 176Lu177Hf, 176Lu177Hfm, Lu176Hf177m, Lu176/Hf177, Lu176/Hf177(corr)

eHf0eHf(0)

eHfteHf(t)

TDM1TDM1(Ma), TMD1(Ma), TMD1(Ma)

TDM2TDM2(Ma), TMD2(Ma), TMD2(Ma)

fLuHff_Lu_Hf, fLu_Hf, fLu/Hf

ThUTh_U, Th/U

Pb206U238m,Pb206_U238, 206Pb/238U, Pb206U238, Pb206_U238m, 206Pb/238Um

Pb207U235mPb207_U235, 207Pb/235U, Pb207U235, Pb207_U235m, 207Pb/235Um

Pb207Pb206mPb207_Pb206, 207Pb/206Pb, Pb207Pb20m, Pb207_Pb206m, 207Pb/206Pbm

Pb208Th232mPb208_Th232, 208Pb/232Th, Pb208Th232, Pb208_Th232m, 208Pb/232Thm

Th232U238mTh232_U238, 232Th/238U, Th232U238, Th232_U238m, 232Th/238Um

表 1 MATPLOT程序中识别合并的数据变量名

Table 1 Data with similar variate names can be merged together in MATPLOT

所有数据汇总整理后,MATPLOT将逐一检查含有宏的变量是否有有效数据,如果没有,将按照指定的宏计算相应的数据。最后,根据对应的年龄、测试值和放射性母体含量计算相应的Hf或Nd同位素参数。

成功加载或导入数据后,数据的一些简要信息,包括文件名、数据类型、选用数据量/总数据量和成图参数名将显示于MATPLOT数据窗口界面的右侧。如果数据在导入前没有设定分组信息,在导入时将被设定为默认值(第1组)。在MATPLOT可以根据给定条件重新设定数据分组,也可以自定义条件选取成图过程中需要显示的数据。

在使用设置数据分组、选取数据、统计分析或者自定义成图等功能时,变量表达式不但支持简单的四则运算(加减乘除),还支持一些较为复杂的运算函数,详细的运算函数和表达可见

表 2

Table 2

表 2(Table 2)

表 2 MATPLOT中支持的运算函数和表达式

Table 2

Functions and expressions of data operation supported in MATPLOT

功能表达式

通用运算+、-、*、/、^、(、)

除(x1/x2)idivide(x1, x2)

取整round(x)

x的自然对数log(x)

数组x的最大值max(x)

数组x的最小值min(x)

表 2 MATPLOT中支持的运算函数和表达式

Table 2 Functions and expressions of data operation supported in MATPLOT

在读取数据文件或导入数据后,MATPLOT可以将数据导出为Excel格式或以制表符分隔的文本格式。

1.2 参数设置

在MATPLOT主界面的设置功能(SETTINGS)下,可以对软件的默认工作目录(Default work path)、成图坐标系尺寸(Diagram size)、预设成图(Provided diagram)参数、同位素衰变常数(Decay Constant)和常用Nd和Hf同位素储库(Reservoirs)值进行设定或修改。其中,在重置预设成图参数时,MATPLOT将读取“config”目录下对应Excel中的参数设置然后生成新的参数文件。

在成图参数(即数据点/线格式)功能(STYLE)下,可以对成图时的数据系列格式进行设定。作为基于MATLAB环境开发的程序,MATPLOT支持13种数据点格式和4种线条格式。在MATPLOT中,不仅可以在软件中逐一设置数据系列格式,同时还支持根据从Excel批量导入数据系列格式。

1.3 数据成图

MATPLOT成图分两部分,一部分是自定义成图(FREE PLOT),另一部分是预设成图(PROVIDED diagram)。二者具有完全相同的成图界面(

图 3

Fig. 3

图 3

MATPLOT数据成图界面

在同一窗口下可以完成六种不同类型的数据图解

Fig. 3

Data plotting graphical user interface of MATPLOT

Six kinds of diagrams can be generated in one window

MATPLOT的成图区由一个或多个成图坐标系组成(

在成图窗口的属性面板中,可以对指定成图坐标系的成图参数(成图类型、标签及相关参数)、数据显示内容(点、线、数据范围和参数线)和坐标系属性(坐标轴范围、刻度显示、坐标轴属性和网格属性)等进行设定。此外,为了方便多个成图窗口之间的对比,还可以隐藏属性面板。

1.3.1 自定义成图

MATPLOT提供二元散点图(binary)、三角图(ternary)、标准化折线图(line chart)、柱状图(histogram)、概率密度图(probability density)和同位素演化图(isotope evolution)等6种常用图解类型。此外,MATPLOT还支持调用预设成图中的指定图解对数据进行成图。

三角图和同位素演化图是两种特殊类型的二元散点图。三角图是通过将三组具有相关性的数据转化为两组不相关的数据,然后绘制而成的二元散点图。同位素演化图是在εHf(t)或εNd(t)对年龄值散点图的基础上,加上根据给定参数(可设置修改)计算的同位素演化线而成的。在使用同位素演化图时,可以在图面中添加或删除指定模式年龄的地壳演化线。

标准化折线图是通过参考值对一定顺序排列的变量数据标准化后绘制的折线图。在地质学研究中,稀土元素分布模式图和微量元素比值蛛网图是应用最广泛的两个标准化折线图。MATPLOT支持用户按照需要自定义变量顺序,也支持导入或手动添加用于标准化的参考值数据。对于没有标准化值变量的数据,成图时不进行标准化处理。

在给定统计范围和数据柱的步长后,MATPLOT可以对所选取数据进行统计分析,绘制相应的柱状图。在没有给定或部分给定柱状图统计参数时,MATPLOT分别采用所选取数据的最小值、最大值和二者之差的1/10作为统计范围的下限、上限和步长进行数据的统计成图。

概率密度图是假设数据及其误差服从正态分布,所有数据在一定范围内每一点的概率总和组成的曲线。MATPLOT不仅可以对数据总体或其中每一组数据绘制概率密度曲线,还可以对每条曲线注明每一处极大值和极小值。

1.3.2 预设成图

在地球化学研究中,分类图解或构造判别图解使用非常广泛。这些图解是不同类型的数据图,在添加一些参数线划定参数区域后,对不同区域进行注释而形成的。根据研究工作的需要,常常还需要成对或成组地完成一些相似的图解,用于说明或解释一些相关问题。例如,微量元素蛛网图和稀土元素分布模式图,A型花岗岩系列判别图解等。因此,通过预先设定成图参数,快速完成一些列图解的成图可以显著提供工作效率。

MATPLOT将目前常用的全岩地球化学图解,根据数据特征、岩石分类和构造环境判别等三大类,预设了13组共52个图解(

图 4

Fig. 4

图 4

全岩地球化学数据的预设成图主界面

Fig. 4

Graphical interface of provided diagrams for bulk geochemistry

1.4 统计分析

在MATPLOT中,可以对数据进行简单地统计分析,包括计算变量平均值和变量相关性分析。

变量平均值计算(

图 5

Fig. 5

图 5

MATPLOT统计分析主界面

(a)平均值分析;(b)相关性分析

Fig. 5

Graphical interface of Statistics of MATPLOT

(a) data average; (b) data correlation

在MATPLOT中,可以根据给定的相关性函数表达式,通过多种非线性回归的方法对变量或变量表达式的相关性进行分析,得出参数值和相关性系数(x为自变量,其它变量为参数变量)进行相关性分析,确定参数值和相关性参数。

1.5 图件导出

数据成图和统计分析功能中所形成的数据图均可以导出为位图(300dpi,“*.jpg”或“*.tif”格式)或矢量图(“*.eps”、“*.pdf”或“*.ps”格式)。

2 与现有软件的对比

MATPLOT是基于MATLAB开发的软件。相对于目前常用的其它软件,MATPLOT不但支持对较大数量的数据进行成图和统计,而且在处理数据量较大时,运行速度具有明显的优势。在MATPLOT的数据成图和统计功能中,二元散点图、三角图、标准化折线图和柱状图是数据的简单反映,它与其它软件的成图结果一致。目前研究中常用的一些功能,概率密度图和加权平均值计算主要通过Isoplot程序(

2.1 概率密度图

MATPLOT与Isoplot绘制完成概率密度图的处理方法相似。二者都是首先确定一个包含给定数据的计算范围。然后,根据数据和相应的误差值确定的一系列正态分布函数,以一定间距对该计算范围内若干点求概率和(概率密度值)。最后,依次连接每个点的的概率密度值进而形成数据的概率密度曲线。由此可见,概率密度线的确定与计算点概率值连接方式、计算范围和计算点间距有关。其中,计算点概率值连接方式和计算点间距直接影响概率密度线的精度和准确性。在这两方面,MATPLOT与Isoplot均有不同。

MATPLOT中计算点的概率密度值依次以折线形式连接,而Isoplot通过Excel内置的曲线圆滑功能连接这些概率密度值(

在MATPLOT中,计算点间距取计算范围的1/4000和数据误差值中最小值1/10两个数值中较小的一个。不同版本Isoplot中计算点间距的确定略有不同。例如,在Isoplot(v 3.25)中,间距为计算范围的1/340(

2.2 同位素演化图

在Hf和Nd同位素研究中,样品εHf(t)值和εNd(t)值对年龄的散点图是常用的图解,往往需要添加亏损地幔演化线和不同模式年龄的大陆地壳演化线。目前常用添加演化线的方法是一种近似的方法:即假设亏损地幔演化线和地壳模式年龄演化线均为直线,通过计算两个端点的值,或者根据一个端点值和固定斜率,在图中绘制相应的直线作为演化线。

根据放射性同位素理论,同位素演化图中亏损地幔演化线和地壳模式年龄演化线的理论方程分别为方程(1)和方程(2)。其中,在Nd同位素的相关计算中,DDM,DCHUR和DCC分别为现今亏损地幔、球粒陨石和地壳的143Nd/144Nd值,NDM和NCHUR分别为现今亏损地幔和球粒陨石的147Sm/144Nd值,λ为147Sm的衰变常数,T为地壳模式年龄值。在Hf同位素的相关计算中,DDM,DCHUR和DCC分别为现今亏损地幔,球粒陨石和地壳的176Hf/177Hf值;NDM和NCHUR分别为现今亏损地幔和球粒陨石的176Lu/177Hf值,λ为176Lu的衰变常数,T为地壳模式年龄值。

(1)

(2)

在MATPLOT中,根据公式(1)和公式(2),取50Ma和地壳模式年龄值1/100的较小值为间隔,计算模式年龄演化线。因此,通过MATPLOT绘制同位素演化图的准确性相对较高。在一些极端情况下,MATPLOT和常规方法的成图结果差异明显。例如,现今到4600Ma之间,对于亏损地幔εHf(t)演化线和模式年龄为4600Ma的大陆平均地壳演化线(如果有意义),通过两种不同方式获得结果的最大偏差分别可达0.22和0.77。

2.3 加权平均值计算

在MATPLOT和Isoplot两款软件中均提供对数据进行异常点检验后,再计算图基双权和误差相关加权平均值,但异常点检验的方法有所不同。

在图基双权加权平均值的计算方法中,数据的权重和数据与平均值的距离有关。显著离群数据的权重甚至会被赋为0,即被识别为异常点(t检验)对样品中异常点进行检验,检验参数t取常用的5%(

在Isoplot中,两种不同的加权平均值计算使用统一的异常点检验方法。这是一种与数据误差有关的处理方法(

由上可见,在数据中不存在异常点时,MATPLOT和Isoplot可以给出一致的加权平均值。在数据中存在异常点时,Isoplot只能对具有误差的数据进行异常点检验,而MATPLOT还可以对没有给出误差的数据进行异常点分析。对于二者异常点检验结果的可靠性,可能还需要进一步的研究探讨。

3 小结

MATPLOT是一款采用MATLAB进行开发实现的地球化学数据成图软件,可运行于Windows/Mac/Linux多平台中。该软件可以对大量数据的二元散点图、三角图、标准化折线图、柱状图、概率密度图和同位素演化图等6种常用图解类型进行成图,同时还可以对数据开展简单的统计分析。相对于目前主流的同类软件,MATPLOT还具有以下主要特点:

(1) 导入数据方便。MATPLOT可以对不同格式和不同文件中的数据进行汇总导入。

(2) 成图便捷,图件精度高。在预设成图时,可以快速完成多个所需图解。对于同位素演化图和概率密度统计图,MATPLOT相对于目前常用方法的成图精度更高。

(3) 在完成数据成图后,可以快速地设置坐标系参数,隐藏或显示指定的数据系列及其显示格式和指定数据系列的分布范围,以及在概率密度图中标记极大值和极小值等常用的功能。

(4) 导出的矢量图中冗余元素少,便于后期处理和添加注释说明。

致谢

感谢杨奇荻、王增振、刘超、张建军和童英等人对软件初期版本进行了大量测试,并提供了许多有益建议。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。