| Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) | 
![]()  | 
	
| 		
			
			 | 
		#1 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2007-07-16 
				
				
				
					帖子: 3
				 
				
				
				声望力: 0 ![]()  | 
	
	
	
		
		
			
			 
			
			曲线拟合: 
		
		
		
		
		
		
		
	实测以下试验数据,请选用光滑的二次曲线拟合这些离散数据,要求: (1) 个数据点离曲线的综合误差尽可能小; (2) 画出拟合曲线图形,标出原始离散数据点。 (3) 划出误差分布图形,定量分析表述拟合误差。 x 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 y -0.44 1.97 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2 请高手指点啊  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#2 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2007-07-15 
				
				
				
					帖子: 6
				 
				
				
				声望力: 0 ![]()  | 
	
	
	
		
		
			
			 
			
			对于这个问题,小弟有几个粗浅的见解: 
		
		
		
		
		
		
		
	(1) 个数据点离曲线的综合误差尽可能小 可使用一维插值interp1,我选用了三次样条插值spline; (2) 画出拟合曲线图形,标出原始离散数据点 假设曲线是线性二次曲线:f(x)=a1*x^2+a2*x+a3,然后求出A=(a1,a2,a3),使得f(x(i))-y(i)最小(当然非线性也是可以的) (3) 划出误差分布图形,定量分析表述拟合误差 这个还不会,哈哈 下面是程序:x=[0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 >> y=[-0.44 1.97 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2]; >> X=0:0.01:1; >> Y=interp1(x,y,X,'spline'); >> A=polyfit(X,Y,2) >> z=polyval(A,X); >> plot(x,y,'k+',X,z,'r')  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#3 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2007-07-16 
				
				
				
					帖子: 3
				 
				
				
				声望力: 0 ![]()  | 
	
	
	
		
		
			
			 
			
			我也不会(3) 请教高手啊
		 
		
		
		
		
		
		
		
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#4 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2007-07-16 
				
				
				
					帖子: 3
				 
				
				
				声望力: 0 ![]()  | 
	
	
	
		
		
			
			 
			
			很急啊 呼唤高手
		 
		
		
		
		
		
		
		
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#5 | 
| 
			
			 普通会员 
			
			
			
				
			
			注册日期: 2007-05-18 
				
				年龄: 38 
				
					帖子: 77
				 
				
				
				声望力: 20 ![]()  | 
	
	
	
		
		
			
			 
			
			clear;clc;clf %清除内存中的变量,并清屏 
		
		
		
		
		
		
			x=0:0.1:1; y=[-0.44 1.97 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2]; A=polyfit(x,y,9);%把所有数据的y坐标关于x进行9次拟合,可以自己改 Y=poly2str(A,'X')%显示拟合多项式 xx=0:0.001:1;%设置xx Y=polyval(A,xx);%根据xx,用拟合多项式A生成拟合好的数据 plot(x,y,'*',xx,Y,'r') grid on%显示网格 
				__________________ 
		
		
		
		
	吾幼学文,10年不就,怒,遂习武,校场骑射,中鼓吏,乃逐,闭门研医良久,自攥一良方,服之,卒!!!  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#6 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2007-07-12 
				
				
				
					帖子: 1
				 
				
				
				声望力: 0 ![]()  | 
	
	
	
		
		
			
			 
			
			很基础阿,不过还是不是很熟悉阿,好好学习了
		 
		
		
		
		
		
		
		
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#7 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2007-08-07 
				
				
				
					帖子: 2
				 
				
				
				声望力: 0 ![]()  | 
	
	
	
		
		
			
			 
			
			x=[0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 
		
		
		
		
		
		
		
	y=[-0.44 1.97 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2]; a = linspace(0,1.0,100); b = interp1(x,y,a,'cubic'); plot(a,b,x,y,'cubic');  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#8 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2007-08-07 
				
				
				
					帖子: 2
				 
				
				
				声望力: 0 ![]()  | 
	
	
	
		
		
			
			 
			
			或者 
		
		
		
		
		
		
		
	x=[0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 >> y=[-0.44 1.97 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2]; a = 0:0.01:1.0; b = ployval(ployfit(x,y,3),a); plot(a,b,x,y,'bo'); 纠正一下刚才上面的错了 应该是plot(a,b,x,y,'bo'); 不是plot(a,b,x,y,'cubic');  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#9 | 
| 
			
			 高级会员 
			
			
			
			注册日期: 2007-06-24 
				
				年龄: 70 
				
					帖子: 188
				 
				
				
				声望力: 22 ![]()  | 
	
	
	
		
		
			
			 
			
			yhat=(b(1)+b(2)*exp(b(3)*x+b(4)*x.^2))./(1+b(5)*exp(b(6)*x+b(7)*x.^2)); 
		
		
		
		
		
		
		
	SSy = 129.6221 b=[11.28373734, 26.66992882, 5.978100169, -20.46399152, 111.9917405, -11.62488572, 4.328266653] RSS =2.932514206 MSe = 0.7331 R2 =.977376  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 |