Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
|
![]() |
#1 |
初级会员
注册日期: 2009-04-21
年龄: 39
帖子: 5
声望力: 0 ![]() |
![]()
有这样两组数据:h和mu:
h=[-9000,-8000,-7000,-6000,-5000,-4000,-3000,-2000,-1500,-1100,-1000,-900,-800,-700,-600,-500,-400,-300,-250,-200,-160,-140,-120,-100,-90,-80,-70,-60,-50,-46,-40,-36,-30,-25,-20,-17,-15,-13,-11,-10,-9,-8,-7,-6.30000000000000,0,6.30000000000000,7,8,9,10,11,13,15,17,20,25,30,36,40,46,50,60,70,80,90,100,120,140,160,200,250,300,400,500,600,700,800,900,1000,1100,1500,2000,3000,4000,5000,6000,7000,8000,9000]; mu=[5.00000000000000e-06,7.50000000000000e-06,1.00000000000000e-05,1.00000000000000e-05,1.50000000000000e-05,2.00000000000000e-05,2.50000000000000e-05,3.50000000000000e-05,3.25000000000000e-05,6.25000000000000e-05,0.000100000000000000,0.000100000000000000,0.000100000000000000,0.000100000000000000,0.000100000000000000,0.000100000000000000,0.000150000000000000,0.000200000000000000,0.000300000000000000,0.000325000000000000,0.000375000000000000,0.000750000000000000,0.000750000000000000,0.000750000000000000,0.00100000000000000,0.00150000000000000,0.00250000000000000,0.00300000000000000,0.00525000000000000,0.00541666700000000,0.00416666700000000,0.00583333300000000,0.00933333300000000,0.0140000000000000,0.0230000000000000,0.0350000000000000,0.0475000000000000,0.0600000000000000,0.102500000000000,0.130000000000000,0.145000000000000,0.145000000000000,0.117142857000000,0.0809523810000000,0.0476190480000000,0.0809523810000000,0.117142857000000,0.145000000000000,0.145000000000000,0.130000000000000,0.102500000000000,0.0600000000000000,0.0475000000000000,0.0350000000000000,0.0230000000000000,0.0140000000000000,0.00933333300000000,0.00583333300000000,0.00416666700000000,0.00541666700000000,0.00525000000000000,0.00300000000000000,0.00250000000000000,0.00150000000000000,0.00100000000000000,0.000750000000000000,0.000750000000000000,0.000750000000000000,0.000375000000000000,0.000325000000000000,0.000300000000000000,0.000200000000000000,0.000150000000000000,0.000100000000000000,0.000100000000000000,0.000100000000000000,0.000100000000000000,0.000100000000000000,0.000100000000000000,6.25000000000000e-05,3.25000000000000e-05,3.50000000000000e-05,2.50000000000000e-05,2.00000000000000e-05,1.50000000000000e-05,1.00000000000000e-05,1.00000000000000e-05,7.50000000000000e-06,5.00000000000000e-06]; 以h为横坐标,mu 为纵坐标,用polyfit拟合的曲线偏差很大,怎样拟合能使曲线比较接近呢?能进行分段拟合再拼接么? 谢谢,~ |
![]() |
![]() |
![]() |
#2 |
高级会员
注册日期: 2007-06-24
年龄: 70
帖子: 188
声望力: 21 ![]() |
![]()
fy=b(1)./(1+b(2)*x.^2+b(3)*x.^4+b(4)*exp(b(5)*x.^2));
b =[ -0.10245748, -0.015258002, 0.0000012473027, -4.589731, -0.028092274] RSS =0.0009084860045 MSe = 1.0946e-005 R^2 = 0.99417 |
![]() |
![]() |
![]() |
#3 |
初级会员
注册日期: 2009-04-21
年龄: 39
帖子: 5
声望力: 0 ![]() |
![]()
在h为-150—-50,50—150之间的曲线很不光滑,这个可以改善吗?谢谢!~
|
![]() |
![]() |
![]() |
#4 |
高级会员
注册日期: 2007-06-24
年龄: 70
帖子: 188
声望力: 21 ![]() |
![]()
如果只画这一段,尽量将X(横轴)的间隔变得小一点即可。
|
![]() |
![]() |
![]() |
#5 |
高级会员
注册日期: 2008-11-07
住址: 湖南长沙
帖子: 233
声望力: 21 ![]() |
![]()
不是已经给你解答过了吗?我画了三个不同的拟合函数图。
__________________
坚持就是胜利,努力就有奇迹。 |
![]() |
![]() |
![]() |
#6 |
高级会员
注册日期: 2007-06-24
年龄: 70
帖子: 188
声望力: 21 ![]() |
![]()
x=[-9000,-8000,-7000,-6000,-5000,-4000,-3000,-2000,-1500,-1100,-1000,-900,-800,-700,-600,-500,-400,-300,-250,-200,-160,-140,-120,-100,-90,-80,-70,-60,-50,-46,-40,-36,-30,-25,-20,-17,-15,-13,-11,-10,-9,-8,-7,-6.30000000000000,0,6.30000000000000,7,8,9,10,11,13,15,17,20,25,30,36,40,46,50,60,70,80,90,100,120,140,160,200,250,300,400,500,600,700,800,900,1000,1100,1500,2000,3000,4000,5000,6000,7000,8000,9000];
y=[5.00000000000000e-06,7.50000000000000e-06,1.00000000000000e-05,1.00000000000000e-05,1.50000000000000e-05,2.00000000000000e-05,2.50000000000000e-05,3.50000000000000e-05,3.25000000000000e-05,6.25000000000000e-05,0.000100000000000000,0.000100000000000000,0.000100000000000000,0.000100000000000000,0.000100000000000000,0.000100000000000000,0.000150000000000000,0.000200000000000000,0.000300000000000000,0.000325000000000000,0.000375000000000000,0.000750000000000000,0.000750000000000000,0.000750000000000000,0.00100000000000000,0.00150000000000000,0.00250000000000000,0.00300000000000000,0.00525000000000000,0.00541666700000000,0.00416666700000000,0.00583333300000000,0.00933333300000000,0.0140000000000000,0.0230000000000000,0.0350000000000000,0.0475000000000000,0.0600000000000000,0.102500000000000,0.130000000000000,0.145000000000000,0.145000000000000,0.117142857000000,0.0809523810000000,0.0476190480000000,0.0809523810000000,0.117142857000000,0.145000000000000,0.145000000000000,0.130000000000000,0.102500000000000,0.0600000000000000,0.0475000000000000,0.0350000000000000,0.0230000000000000,0.0140000000000000,0.00933333300000000,0.00583333300000000,0.00416666700000000,0.00541666700000000,0.00525000000000000,0.00300000000000000,0.00250000000000000,0.00150000000000000,0.00100000000000000,0.000750000000000000,0.000750000000000000,0.000750000000000000,0.000375000000000000,0.000325000000000000,0.000300000000000000,0.000200000000000000,0.000150000000000000,0.000100000000000000,0.000100000000000000,0.000100000000000000,0.000100000000000000,0.000100000000000000,0.000100000000000000,6.25000000000000e-05,3.25000000000000e-05,3.50000000000000e-05,2.50000000000000e-05,2.00000000000000e-05,1.50000000000000e-05,1.00000000000000e-05,1.00000000000000e-05,7.50000000000000e-06,5.00000000000000e-06]; fx=@(b,x)b(1)./(1+b(2)*x.^2+b(3)*x.^4+b(4)*exp(b(5)*x.^2)); b=[-0.10245748, -0.015258002, 0.0000012473027, -4.589731, -0.028092274]; x(1:24)=[]; y(1:24)=[]; x(42:65)=[]; y(42:65)=[]; plot(x,y,'o','markersize',10,'markerfacecolor','k') x1=-95:95; y1=fx(b,x1); hold on plot(x1,y1,'linewidth',3) axis tight |
![]() |
![]() |