现有2列×100行的数据(假设第一列的参数为t, 第二列的参数为y),并且保存到了excel表中。问题:1)如何在Matlab中建立一个100×2的矩阵[t,y],其参数来自于Excel。2)再用这100组离散的点,在Matlab中绘制出一条光滑的曲线。望高人答复,不甚感激!
1)打开matlab,点击右上角wokspace里的绿色向下箭头,弹出选择路径窗口,并选择你所需要导入的数据(如data.xls),出现新的窗口点finish.完成导入,我认为最简单的方法了。由于你是每一列为一类,因此,要记得转置。>> A=data %赋值A = 1 3 2 2 3 1> A=A' %转置A = 1 2 3 3 2 1其中t=[1,:];y=[2,:]; %即t为第一行数据,y为第二行数据。2)离散点画成光滑的,需要插值。>> t=A(1,:)>>y=A(2,:);>> T=1:0.1:3;>> Y=interp1(t,y,T,'spline');%插值>> plot(t,y,'+',t,y,T,Y,'r:');%画图前几天刚好学了插值拟合~上课间隙偷偷回答的,望采纳。不懂可以接着问呢。
额,如果只有2列100行,可以直接复制进matlab。方法一:1)、在matlab里先定义个空的变量。t=zeros(1,100);y=zeros(1,100);2)、在workspace窗口打开这个空矩阵,这时候看到的跟Excel表格样子差不多,可以直接把excel里的数粘贴过来。很方便。3)、画图。plot(t,y);方法二:A = xlsread('yourfilename.xls');t=A(:,1);y=A(:,2);plot(t,y);具体的xlsread用法你可以在matlab里help一下。excel文件记得放在你当前文件夹下。