matlab中用nlinfit拟合指数函数f=a*exp(b*x)+c*exp(d*x)
x=[20092010201120122013]y=[74.0887.4294.39113.08139.65]求程序代码...
x=[2009 2010 2011 2012 2013]
y=[74.08 87.42 94.39 113.08 139.65]
求程序代码 展开
y=[74.08 87.42 94.39 113.08 139.65]
求程序代码 展开
1个回答
展开全部
对于还有年份的拟合问题,应按序列向量来处理,这样拟合的结果是有效的。即
x=[2009 2010 2011 2012 2013] 应改写为 x=1;5; %2009-2013年
具体实施代码如下
x=1;5;
y=[74.08 87.42 94.39 113.08 139.65];
fun=@(a,x)[a(1).*exp(a(2)*x)+a(3).*exp(a(4)*x)];
%a=a(1),b=a(2),c=a(3),d=a(4)
x0=[1 0.3 0.5 0.2]
a= nlinfit(x,y,fun,x0
d=a(4),c=a(3),b=a(2),a=a(1)
运行结果
d = 0.116774298952341
c = 66.7544631579477
b = 1.2220839296099
a = 0.0444737875381383
对比图形
追问
请问如何设置左上角图示和横坐标为2009-2013?谢谢
追答
可用set()函数来设置.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询