MATLAB中怎么在拟合曲线上找到x对应的y
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/17 04:04:47
在顶端有一个Analysis目录,这个目录下选择fitting,然后linerfitting是线性拟合(一次),polynomialfitting是多项式拟合(可自己输入表达式).常用的基本就这两个吧
t=[0:54];y=[1.4712 1.45327 1.44467 1.42513 1.41487 1.40393 1.382667&nb
例如:commandwindow输入数据 >>x=1:0.1:10;>>y=sin(x)>>z=y.*x.*2;>>cftool 调
如上所述,采用polyfit来拟合,二次多项式polyfit(x,y,2)x=[0.110.130.190.210.270.370.530.590.710.790.891.07];y=[3868-10
对于线性函数,除了polyfit(),还可以用regress()等对于非线性函数,可以用lsqcurvefit()或nlinfit()等根据你提供的数据,可以拟合成如下关系Q=0.52429N^1.6
两边取自然对数lnY=lnA-BX,令Z=lnY,C=-B,D=lnAZ=CX+D拟合这个直线就OK
plot可以画多条曲线在一个图上主要把拟合的数据也算出来,一起画就好了
好像是最小二乘拟合:最小二乘大约是1795年高斯在他那星体运动轨道预报工作中提出的[1].后来,最小二乘法就成了估计理论的奠基石.由于最小二乘法结构简单,编制程序也不困难,所以它颇受人们重视,应用相当
x=[1978:1:2010]';y=[56663274575576978998511101313142817821920215022922601314943385145580962416854765
x=[27560000,55120000,82680000,88192000,110240000,137800000]y=[1743170000,1894750000,2053220000,20670
y=[00.060.110.170.230.280.340.400.460.520.590.650.720.800.870.961.051.161.311.55]';x=[20.0218.9517.7
function[a,resnorm]=sphere_fit(a0,data)%对数据进行球拟合,a0是初始的球心和半径%data是x、y、z的数据矩阵,第一行是x,第二行是y,第三行是z%a是拟合后
要是你的数据是线性的话,可以用多项式拟合:polyfit(x,y,n)n为所需要拟合多项式的次数,返回值为多项式系数;若是非线性的话,你得有一个和你绘图曲线吻合的函数模型,然后在这个函数模型基础上求这
figure文件可以打开编辑,最右侧showplottoolsandDockfigure
曲线总可以用参数方程描述:X=x(t),Y=y(t),Z=z(t),不妨假设x(t),y(t),z(t)是关于t的多项式函数,那么:x(t)=x0+x1*t+x2*t^2.给定一组参数就有一条曲线,并
这样好些,比多项式精度高许多.functionhhx=[123456];y=[214575949898];b0=[111111];a=nlinfit(x,y,@mymodel,b0)xx=min(x)
fprintf('y=%f*x+%f',p(1),p(2));再问:Thankyou。能用,采纳。非常感谢。
自己写个简单的小程序就可以了,计算每个数据点(x,y0)和拟合直线对应点(x,y1)的误差|y1-y0|,其中的最大值就是最大偏差
%1非线性拟合warningoffx=[100200400600800]';y=[406080120150]';f=fittype('a+b*x^m');options=fitoptions('a+b
求个相对误差不就行了吗ex=0.18*(2*x).^(-0.6)+0.012*(2*x).^(-0.08567);delta=(y-ex)./ex;plot(x,delta);