想用matlab的gui读入一个mat数据文件,然后可以对这个数据进行处理

作者&投稿:鞠肢 (若有异议请与网页底部的电邮联系)
matlab的GUI同时载入多个mat文件的数据?~

给你一点提示,我没用GUI,是以前写函数文件用到读取多个mat文件到内存区。大同小异。
D=dir('directory\filname');%预读取的文件路径
N=max(size(D));%文件个数
for i=1:N
load(D(i,1).name));
end
但是不知道你的matlab版本,对于7.0,循环变量i可能得稍加改动。因为有路径符,.和..
如果还要选择,在for循环里,适当加个strcmp判断语句就可以了。

直接用matlab提供的数据保存函数save就可以实现该功能。
save函数的一般语句结构如下:
save filename options
保存当前工作空间的所有变量到filename制定的文件中,此文件后缀名通常为mat。如果不指定filename变量,则会默认保存到matlab.mat这个文件中。

举例说明如下:
data = A; % A为数据矩阵,data为需要保存的数据
save data.mat data % 即将data数据矩阵保存到data.mat文件中,也就实现了将数据存到名字为变量的mat文件中的功能

你的str这个时候还不是一个路径,load不了,试试下面的方法:
[filename,pathname]=uigetfile(['*.mat'],'选择数据');
str=[pathname,filename];
if (filename==0 & pathname==0)
msgbox('您没有选择文件,请重新选择!','打开文件出错','error');
else
data=load (strcat([pathname filename])); %strcat是组成路径的,记不得是不是这么写了。
msgbox('打开及读取数据完毕!','确认','warn');
end

给你一点提示,我没用gui,是以前写函数文件用到读取多个mat文件到内存区。大同小异。
d=dir('directory\filname');%预读取的文件路径
n=max(size(d));%文件个数
for
i=1:n
load(d(i,1).name));
end
但是不知道你的matlab版本,对于7.0,循环变量i可能得稍加改动。因为有路径符,.和..
如果还要选择,在for循环里,适当加个strcmp判断语句就可以了。

试了你的程序,没有问题。得到的data为struct结构,里面应该有一个或多个变量。使用data.x就可以,x为你想用的变量。data和x之间为点号。


传递函数为G(s)=s 时间响应分析,用matlab编程
num应该是[1 0],或者也可以这样产生纯微分环节 G=tf('s')但要注意,纯微分模型s不是一个proper model,不能求阶跃或脉冲响应。step和impulse函数会调用isproper函数对系统进行判断,如果不满足,则报错:>> step(tf([1 0],1))??? Error using ==> rfinputsNot supported for non-proper ...

如何用matlab给地图标点?
第二步,使用plotm函数,在地图上绘制轴上投影二维线和点,其格式 plotm(lat、lon、LineSpec) 指定线样式、标记和颜色。例如:load coastlines ax = axesm('sinusoid','Frame','on');plotm(coastlat,coastlon,'g')plotm(39.90,116.40...

已知传递函数,如何用matlab的simulink求解?函数是G(s)=(4\/s^2+10\/...
应该先把传递函数化简:>> syms s>> G=(4\/s^2+10\/s^3)\/(1+8\/s+19\/s^2+12\/s^3);>> [n,d]=numden(simple(G));>> sym2poly(n)ans = 4 10 >> sym2poly(d)ans = 1 8 19 12 可见,分子就是4*s+10,分母是s^3+8*s^2+19*s+12,可使用Transfer ...

用matlab绘图时,如何只设定一个轴范围?
用matlab绘图时,只设定一个轴范围可以通过以下方法来实现:使用 axis([XMIN XMAX YMIN YMAX]) ,对于不需要设置范围的轴,使用参数-inf,inf,即正负无穷之间 示例代码:>> x = 1:10;>> y = x.^2;>> subplot(3,1,1)>> plot(x,y,'r')>> subplot(3,1,2)>> plot(x,y,'g')>>...

如何用Matlab绘制图片的沿R,G,B方向的直方图
img = imread(kids.tif');R=img(:,:,1);G=img(:,:,2);B=img(:,:,3);subplot(3,1,1),imhist(R);subplot(3,1,2),imhist(G);subplot(3,1,3),imhist(B);

请问: 用matlab 画nyquist图,红色的十字叉是什么意思? G(s)=1的比例...
红色的十字叉是临界点(-1,j0),如果你学过nyquist稳定判据的话应该能看懂是什么意思。比例环节的nyquist曲线是一个点,对于G(s)=1,而言,该点坐标为(1, j0),但默认的绘图坐标范围没有显示出该点——不过即使把坐标范围调整更大一些也没用,作为一个点又刚好和虚线重合,根本看不出(当然,...

matlab中的fmincon函数怎么用
其中X为n维变元向量,G(x)与Ceq(X)均为非线性函数组成的向量,其它变量的含义与线性规划,二次规划中相同,用Matlab求解上述问题,基本步骤分为三步:1. 首先建立M文件fun.m定义目标函数F(X):function f = fun(X);f = F(X)2. 若约束条件中有非线性约束:G(x) <= 0 或 Ceq(x) = 0...

怎么用matlab仿真啊?
1、首先打开matlab软件,点击Simulink按钮打开Simulink仿真环境(需要一点时间),2、打开Simulink后,进入主界面,3、点击Simulink界面中的File\/New\/Model,建立并保存模型文件,4、在Simulink的左侧资源栏拖拽控件到model文件内并设置连线,5、检查系统框图无误后点击运行按钮(如下图箭头所指),大概几秒后...

如何用matlab求解一个二阶常系数微分方程组
2、 输入微分方程求解程序-->点击保存-->点击运行。3、在matlab的命令窗口即可看到求解结果,是一个关于参数a,b的表达式 第二种方法:利用Matlab中的solver函数(包括ode45、ode23、ode15s等)来求解微分方程的数值解,这种方法是最常用的方法,对于dsolve函数难以求解的方程就可以利用这种方法求解方程的...

如何用matlab在同一个坐标系中画圆和直线
常用两个方法:在同一个plot()函数中画出圆和直线 使用hold on 使当前轴及图形保持而不被刷新,从而可以继续加入新的图形 示例代码:>> t = 0:pi\/50:2*pi;>> plot(cos(t),sin(t),'r',2*cos(t)+1,2*sin(t)+1.5,'g')>> x = -2:2;>> y = 2*x;>> hold on>> plot(...

延津县19533956979: matlab中GUI的使用,调用m文件 -
阚盼先友: 方法和详细的操作步骤如下: 1、第一步,在计算机上安装matlab软件,见下图,转到下面的步骤.2、第二步,完成上述步骤后,双击matlab图标以打开其主页,见下图,转到下面的步骤. 3、第三步,完成上述步骤后,将鼠标移到“...

延津县19533956979: matlab gui文件如何直接调用已有m文件 -
阚盼先友: 打开时找准路径就可以直接调用了.1、打开matlab,2、工具栏中有一个地方显示有路径,一般是“C:\Users\DELL\Documents\MATLAB”,这个是现在的M文件保存地址,可以通过改变它来调整想要保存的M文件地址,3、调用的原始数据文件一定要和M文件发在同一个文件夹中.

延津县19533956979: matlab GUI 怎么运行M文件 -
阚盼先友: 如果是script,直接写文件名即可(不需要.m);如果是函数,用函数的调用方法.

延津县19533956979: matlab gui调用m文件及显示问题 -
阚盼先友: 问题一:界面设计的时候在左侧拖一个按钮过来,右键点击按钮,选view callbacks——callback,程序就会自动生成qq569457128同学告诉你的这行: function pushbutton1_Callback(hObject, eventdata, handles) 你想调用什么函数,就在这行下面加什么.问题二:想要画图显示在gui里,首先你要在界面设计的时候从左边拖一个Axes过来(倒数第四个).随后,比如就在你问题一的按钮那里加一段程序: x=1:10;y=6:15; plot(x,y) 那么点按钮后,gui上你拖过来的Axes里就画上了一条直线

延津县19533956979: matlab gui中执行m文件,这是您之前的问题,我想知道是怎么解决的呢,谢谢 -
阚盼先友: 就在gui某个按钮文字编写的那个部分(记不太清叫什么了)直接引用m文件的函数就可以了 时间略长记不太清请见谅啊……

延津县19533956979: matlab GUI调用m文件并显示结果图片 -
阚盼先友: 您好,这样的:问题一:界面设计的时候在左侧拖一个按钮过来,右键点击按钮,选view callbacks——callback,程序就会自动生成qq569457128同学告诉你的这行:function pushbutton1_Callback(hObject, eventdata, handles) 你想调用什么函...

延津县19533956979: 在matlab中有个控件,点击它能够调用一个m函数编写的gui,请问怎么能够做到的 -
阚盼先友: 在控件callback中直接写入m函数名,即可

延津县19533956979: matlab gui调用m函数并显示其图像 -
阚盼先友: 用zhidaosubplot把图象花回在不同的答区域 x=-2*pi:0.01:2*pi; subplot(1,2,1); y1=sin(x); plot(y1); subplot(1,2,2) y2=cos(x); plot(y2)

延津县19533956979: 如何在matlab中调用gui,就是我写了一个m文件,想在里面像调用子函数那样调用我创建的gui文件 -
阚盼先友: 在每个文件的开头把你要用的变量设置成global 例如 global x;

延津县19533956979: matlab的GUI与一般的M文件之间怎么实现参数传递啊 -
阚盼先友: 如果你是要改GUI所在的.m无关的一个M文件的话,你除非自己重新生成一遍那个M文件. 要不就把另一个M文件封装成函数然后调用传参

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网