数据格式软件设计论文

时间:2022-06-22 05:04:32

数据格式软件设计论文

1数据传递

MATLABGUI的数据传递按照传递类型分为GUI之间的数据传递和GUI内部各个控件之间的数据传递,GUI间和GUI内的数据传递方式分为六种。1)global定义全局变量。此方式适用于GUI内以及GUI间。此方式应用简单,不需要其他的参数传递命令。但是,在任控件应用全局变量之前要先声明全局变量,即globa‘l变量名称’,而且若某一函数内部不慎修改了全局变量,则会造成变量混乱。2)应用setappdata\getappdata函数。此方式适用于GUI内以及GUI间。可以实现多个变量的存取,应用相对global繁琐,但是适用范围广,且没有应用缺陷。首先将变量名称和标量值用setappdata传递给GUI或控件,使用时再用getappdata从GUI或控件中调出。3)应用save和load函数此方式适用于GUI内以及GUI间。此方式是将变量的值先存到磁盘,用时从磁盘载入数据。当然,这种方式涉及到磁盘读写,速度相对较慢。4)应用UserData。此方式仅适用于GUI内。每个控件均具有UserData属性,将数据存储到该控件中,使用时用get函数从UserData直接获取。此方式应用简单,但是每个对象仅能存取一个变量值,因此当同一对象存储两次变量时,先前的变量值就会被覆盖掉,因此都用UserData存储简单与单一的数据。5)handles和GUIdata函数此方式仅适用于GUI内。使用handles.变量名在handles中添加该变量,之后用GUIdata保存改变量。此方式应用繁琐,而且新添加变量后可能就会覆盖已添加变量。6)varargin和varargout函数。此方式仅适用与GUI间传递数据,且只适合与主子结构,即从主GUI调用子GUI,之后关闭子GUI,而不适合并列结构或递进结构。根据不同的数据传递方式,基于所设计软件的功能需求,主要应用了可以进行多个变量传递而且相对安全稳定的setappdata\getappdata函数,同时辅以UserDate方式,实现了整个数据格式标准化软件的数据传递功能。

2应用分析

根据应用需求,设计了泰安基准地震台地磁历史数据标准化软件,用于数据格式的统一转换和基础的数据处理。根据MATLABGUI软件设计开发流程,软件的界面见图1所示,根据国际数据交换格式标准,数据相关信息均为英文。软件界面主要分为五个功能区,分别为12个头记录的录入和选择,注释记录的录入,选择打开数据文件,数据处理以及生成标准化数据文件。其中头记录的Reported和选择数据文件之间有主动数据的传递,即Reported录入报告分量之后,分别自动传达到打开数据文件的不同的显示框,以便SelectFile选择与该分量对应的数据文件,见图1中所示。当点击SelectFile选择相应分量的数据文件之后,即显示数据文件的路径信息和文件名,见图2中所示,即SelectFile与显示框也有主动的数据关联。DigitalSampling与数据处理部分的LowpassFilter存在数据被动传递,即点击LowpassFilter后,从DigitalSampling获取数据的采样率,以进行滤波。同样,PlotData、SelectFile、LowpassFilter和PlotFilteredData之间存在多个数据变量的传递。

3结论和讨论

综上所述,基于应用需求,设计了基于MATLABGUI的数据格式标准化软件,经过界面设计,数据传递函数调用编程等,完成了控件之间的操作和数据传递,实现了软件的各个功能。基于MATLABGUI软件设计,将MATLAB的强大的数据处理能力与友好的图形用户界面相结合,实现了MATLAB功能的黑箱操作,极大地拓展了MATLAB数据处理能力的受众。而且MATLAB提供的GUIDE开发环境简便易用,降低了界面设计的复杂度,提高了设计效率。但是MATLABGUI基于控件的界面,在进行界面设计时需要进行综合考虑,花费较多精力,不适用于大型程序的开发。对于每个控件的属性进行设定时容易引起错误,从而导致已经设计好的界面无法用GUIDE打开,只能重新设计。而且,MATLAB程序的封装性相对较差。但是在进行数据和图像处理时,MATLABGUI无疑具有较大优势。

作者:林秀娜 曲保安 陈传华 王强 贾立国 邢伟伟 单位:山东省地震局泰安基准地震台 山东省地震局嘉祥地震台

上一篇:医院财务管理网络信息论文 下一篇:症结与解决物理实验论文