Matlab中如何导入Excel中的数据;如何根据这些数据在Matlab中描绘曲线

现有2列×100行的数据(假设第一列的参数为t, 第二列的参数为y),并且保存到了excel表中。
问题:
1)如何在Matlab中建立一个100×2的矩阵[t,y],其参数来自于Excel。
2)再用这100组离散的点,在Matlab中绘制出一条光滑的曲线。
望高人答复,不甚感激!
最新回答
夜久泪长

2024-09-08 05:59:14

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:');%画图

前几天刚好学了插值拟合~
上课间隙偷偷回答的,望采纳。
不懂可以接着问呢。
浪居酒家

2024-09-08 21:20:22

额,如果只有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文件记得放在你当前文件夹下。