Q2:matlab 有公式的曲线拟合

x=[0 46.01 92.64 187.16 387.53 780.50];

y=[0 0.506 0.887 1.252 1.755 1.981];

f=@(p,x)p(1)*p(2)*x./((p(3)-x).*(1+(p(2)-1)*x/p(3))) ; p=nlinfit(x,y,f,[1 1 1])%p=[a b c] plot(x,y,ro)

hold on

ezplot(@(x)f(p,x),[-10 800])

另外你也可以利用可视化工具cftool进行手动拟合对于matlab7以前版本,不支持@定义函数的用下面的程序

x=[0 46.01 92.64 187.16 387.53 780.50];

y=[0 0.506 0.887 1.252 1.755 1.981];

f=inline(p(1)*p(2)*x./((p(3)-x).*(1+(p(2)-1)*x/p(3))),p,x);

p=nlinfit(x,y,f,[1 1 1])%p=[a b c]

plot(x,y,ro)

hold on

xx=-10:800;

yy=f(p,xx);

plot(xx,yy)

xlim([-10,800])

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐