matlab 对两组数据进行曲线拟合,得到的系数很不正常,求助

下面是我写的程序 t=0:300:86400; ci=[56 59 66 71 68 66 68 74 71 65 61 61 64 64 70 70 71 72 73 75 76 79 80 82 85 96 96 85 78 70 68 69 78 88 94 98 98 99 100 101 103 106 107 105 99 93 89 98 107 106 99 105 113 112 113 114 117 122 120 108 115 129 134 138 143 152 160 166 167 165 174 182 192 203 214 212 201 199 201 203 212 224 236 249 263 266 252 249 263 277 292 298 296 300 303 308 321 316 315 311 298 283 272 263 250 242 231 238 252 265 275 289 302 302 299 298 286 272 260 250 248 239 241 237 229 220 208 197 186 176 166 157 149 140 126 113 100 88 86 97 107 111 109 107 106 100 98 98 95 87 79 84 94 95 100 108 116 113 107 110 102 91 81 82 92 93 94 88 82 73 74 73 69 73 68 60 50 51 57 56 59 63 69 76 73 82 92 103 106 105 102 99 93 91 89 84 88 86 87 93 88 95 94 87 81 75 68 61 56 52 48 42 41 43 45 47 58 68 77 87 98 110 123 138 148 154 157 166 173 178 185 188 190 192 190 186 183 174 172 166 158 150 142 128 118 115 123 119 126 135 136 135 143 148 145 135 125 115 107 95 84 74 65 54 47 43 43 51 52 48 45 55 65 74 77 75 76 71 74 83 87 89 91 81 77 86 83 75 80 ] ci'; p=polyfit(t,ci',4); plot(t,ci','r'); p 生成的曲线看着该是3次以上,但是得到的多项式系数只有一次,各位高手指点下,是哪里出错了。

第1个回答  2019-11-11
是因为它的高次项系数太小10-12,没显示出来,你看到的就为0,建议分段拟合!或用神经网络做数据逼近!

matlab 对两组数据进行曲线拟合,得到的系数很不正常,求助
是因为它的高次项系数太小10-12,没显示出来,你看到的就为0,建议分段拟合!或用神经网络做数据逼近!

matlab拟合两条温度曲线找到发生偏差的坐标?
利用cftool曲线拟合工具箱:Linear model Poly2:f(x) = p1*x^2 + p2*x + p3 Coefficients (with 95% confidence bounds):p1 = -0.03816 (-0.05458, -0.02173)p2 = 13.56 (12.62, 14.51)p3 = -1.28 (-8.511, 5.952)Goodness of fit:SSE: 248 R-square: 0....

matlab拟合求方程系数,然后把曲线作图发现自己拟合相差甚远,求高手相...
我觉得你的拟合没问题,问题是9次多项式可能不足以拟合出这条曲线,从图上来看300-400这段拟合的结果是对的,后面就完全不对了,你可能需要更高次的多项式来进行拟合,或者结合其他函数进行拟合,比如说加入三角函数,指数函数什么的。

求助!Matlab自定义拟合函数拟合效果非常不理想,有代码如下,求解决方 ...
两个指数函数而已,有那么难吗?考虑到两个指数函数可能有一定冗余,因此先只用一个指数函数的模型,然后再修正之。想在>0区间里画出这种上凸的弧,肯定是a和b都为负数。又考虑到指数函数自身在0点取值为1,只靠a调节肯定不够,因此模型上加一个常数项修正。因此,第一次尝试的模型是:a*exp(b*...

我用的matlab里面的cftool拟合的数据,但是返回的结果不对呀?
用cftool拟合虽然为我们提供了方便,但并不是每次都能得到较满意的结果。此时,你可以考虑其他拟合函数进行拟合,如lsqcurvefit()、nlinfit()。对于本问题,可以用nlinfit()拟合比较合理。拟合结果为 a=162384467.421874 r=0.0204305926730004 验证,拟合前的y值与拟合后的y1值对比 1104 1104 11...

关于Matlab的曲线拟合问题。我想拟合一条曲线,但其中有两个数据偏差过...
找到那个两个点后,重新建立新数据矩阵(把那两个点删了)。用新的数据放到GUI里面做。

matlab多项式曲线拟合误差怎么计算?
在Matlab中使用`polyfit`函数进行多项式曲线拟合时,可通过以下方法计算拟合误差:1. 残差平方和(RSS)残差平方和是计算拟合曲线与原始数据之间的误差大小,其公式为RSS = Σ(y - y_fit)^2,其中y为原始数据点,y_fit为拟合曲线上的点。2. 均方根误差(RMSE)均方根误差为残差平方和的平均值的...

关于MATLAB曲线拟合问你。拟合后的多项式我把数值带入后为什么有那么大...
216 223 226 229 231 233 236 239 241 244 248 252 255 260 263 266 268 270 273 275 278 282 284 286];p=polyfit(x,y,3);x2=0:300;y2=polyval(p,x)subplot(2,1,1)plot(x,y,'*',x,y2,'s')subplot(2,1,2)plot(x,(y-y2).\/y)看相对误差,拟合精度还是挺高的。

如何使用matlab实现数据的曲线拟合
打开Matlab软件,在命令窗口将数据导入,并分别给数据命名,这里以x ,Y命名两个行向量数据。x=[1,3,5,7,9,15];Y=[1,4,8,13,20,25];这里的数据也可以通过文件读取的方式导入(如csvread,load等命令)。在命令窗口输入cftool,打开拟合窗口。在拟合窗口选择要拟合的数据,那个作为x,哪个作为y。

求救!!matlab如何把两组数据变成曲线并拟合成一条平滑的线!!20
title('第一组数据的x,y拟合曲线')xlabel('x')ylabel('y')hold off subplot(223)fnplt(sp2)hold on plot(x2,y2,'^')title('第二组数据的x,y拟合曲线')xlabel('x')ylabel('y')hold off t1=min(x1):0.1:max(x1);z1=(120.\/t1-1).\/(1-fnval(sp1,t1));subplot(222)plot3(...

相似回答