电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

Matlab直线拟合和平面拟合VIP免费

Matlab直线拟合和平面拟合_第1页
1/6
Matlab直线拟合和平面拟合_第2页
2/6
Matlab直线拟合和平面拟合_第3页
3/6
利用Matlab 实现直线和平面的拟合 2011-04-14 10:45:43| 分类: 算法思想 |举报|字号 订阅 直线和平面拟合是很常用的两个算法,原理非常简单。但如果matlab 不太熟的话,写起来也不是那么容易。搜了很久才找到这两个代码,保存之,免得日后麻烦。 1、直线拟合的matlab 代码 % Fitting a best-fit line to data, both noisy and non-noisy x = rand(1,10); n = rand(size(x)); % Noise y = 2*x + 3; % x and y satisfy y = 2*x + 3 yn = y + n; % x and yn roughly satisfy yn = 2*x + 3 due to the noise % Determine coefficients for non-noisy line y=m1*x+b1 Xcolv = x(:); % Make X a column vector Ycolv = y(:); % Make Y a column vector Const = ones(size(Xcolv)); % Vector of ones for constant term Coeffs = [Xcolv Const]\Ycolv; % Find the coefficients m1 = Coeffs(1); b1 = Coeffs(2); % To fit another function to this data, simply change the first % matrix on the line defining Coeffs % For example, this code would fit a quadratic % y = Coeffs(1)*x^2+Coeffs(2)*x+Coeffs(3) % Coeffs = [Xcolv.^2 Xcolv Const]\Ycolv; % Note the .^ before the exponent of the first term % Plot the original points and the fitted curve figure plot(x,y,'ro') hold on x2 = 0:0.01:1; y2 = m1*x2+b1; % Evaluate fitted curve at many points plot(x2, y2, 'g-') title(sprintf('Non-noisy data: y=%f*x+%f',m1,b1)) % Determine coefficients for noisy line yn=m2*x+b2 Xcolv = x(:); % Make X a column vector Yncolv = yn(:); % Make Yn a column vector Const = ones(size(Xcolv)); % Vector of ones for constant term NoisyCoeffs = [Xcolv Const]\Yncolv; % Find the coefficients m2 = NoisyCoeffs(1); b2 = NoisyCoeffs(2); % Plot the original points and the fitted curve figure plot(x,yn,'ro') hold on x2 = 0:0.01:1; yn2 = m2*x2+b2; plot(x2, yn2, 'g-') title(sprintf('Noisy data: y=%f*x+%f',m2,b2)) 2、平面...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

Matlab直线拟合和平面拟合

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部