关于matlab数据拟合曲线的问题,程序出错!

问题描述:

关于matlab数据拟合曲线的问题,程序出错!
t=[0 .3 .8 1.1 1.6 2.3]';y=[.82 .72 .63 .60 .55 .50]';plot(T,Y,'-');E=[ones(size(t)) exp(-t)];c=E\yT=(0:0.1:2.5)';Y=[ones(size(T)) exp(-T)]*c;hold on;plot(T,Y,'-',t,y,'o')结果却是? Undefined function or variable 'T'.我是初学者,靠着耐心弄了一下午.也没弄出来,烦请哪位路过的大大指点一下!谢谢了~
t=[0 .3 .8 1.1 1.6 2.3]';
y=[.82 .72 .63 .60 .55 .50]';
plot(T,Y,'-');
E=[ones(size(t)) exp(-t)];
c=E\y
T=(0:0.1:2.5)';
Y=[ones(size(T)) exp(-T)]*c;
hold on;plot(T,Y,'-',t,y,'o')
这是书上例题的原样~
1个回答 分类:综合 2014-11-19

问题解答:

我来补答
Undefined function or variable 'T'.
未定义变量T
matlab是顺序运行的,
你在运行plot(T,Y,'-');这个指令之前还没有T的定义呢.T=(0:0.1:2.5)'却在后面.这个程序是你自己写的吗?怎么结构这么混乱.
再问: 这个是书上的例题。。。顺序调换了下,还是不行~
再答: 好吧,把第三行改成 plot(t,y,'-'); 就行了。
再问: 请问,那该怎么改一下呢?
再答: 把第三行改成 plot(t,y,'-'); 就行了。
再问: 这个也试过了,虽然最接近答案,但是数据点能够不连接成线吗?
再答: 我不明白你的意思。程序就是按照代码一步一步运行的。你说数据点能够不连接成线是什么意思?我不理解。另外,这个程序并不是matlab拟合曲线的代码。根本没有拟合运算的代码,它仅仅是定义了两组离散点给画出来而已。
再问: 好的,问题已经解决了,这个用的是最小二乘法做的曲线拟合,一个指数型函数的,可以求解出指数函数的两个系数值,多谢了~~
 
 
展开全文阅读
剩余:2000