最近的一篇文章中,数据测试结果得到了一大堆数据,想找一个式子或者曲线来找一找其中x和y的规律。手动试了一些函数曲线,总是不能满足所有的数据。上头说可以用matlab拟合,这个之前还真没用过,用了一下还真是好用。好了,废话不多说了,简单举个例子试验一下。
如下图所示:
在matlab的命令行窗口里面写,当然如果数据较多和为了保存程序也可以在文件中写,这里为了方便,就直接在命令行里写了。第一行x= [3,5,7,9,11,13];是x的取值,第二行
y = [1.85,2.1,2.4,2.5,2.7,2.8];是x对应的y值,c = polyfit(x,y,2),polyfit()这个函数里面有三个参数,前两个知道了,第三个是拟合的多项式的x的最高幂次,这里是2,就是最高是x的平方;这里c的结果分别是2次项系数,1次项系数和常熟项系数。可以多试几个最高幂次3,4,5,6。
知道参数了,显示一下曲线,就是拟合的结果。当然这只是多项式拟合,还有其他很多的拟合,具体可以参考 http://blog.sina.com.cn/s/blog_8e1548b80101c9iu.html。
x = [3:13];
y = -0.0051*x.^2+0.1771*x+