首页后端开发PythonMatlab统计曲线

Matlab统计曲线

时间2023-06-07 23:07:01发布访客分类Python浏览935
导读:Matlab统计曲线?fun=@(p,x p(1 ./x.*exp(-((log(x -p(2 /p(3 .^2/2 ;%对数正态分布密度函数x=(0:0.02:6 *1e4;y=fun([3e5,8.3,0.6],x +rand(s...

Matlab统计曲线?

fun=@(p,x) p(1)./x.*exp(-((log(x)-p(2))/p(3)).^2/2); %对数正态分布密度函数

x=(0:0.02:6)*1e4;

y=fun([3e5,8.3,0.6],x)+rand(size(x)).*exp(-(x/2e4).^2)*20;

%原来你的图可能是用hist(data,n)画出来的

%就是将data数据分n个区间统计,画柱状图

%这里要保留hist的数据

%原来的语句要返回x y值

%[y x]=hist(data,n);

%这里因为没有数据所以用上边两句模拟x,y数据

bar(x,y,1); hold on; %根据x,y数据画柱状图

[maxy ind]=max(y);

p=nlinfit(x,y,fun,[maxy*x(ind),log(x(ind)),1]); %拟合

%p(1)~和幅度有关 p(2)~mu p(3)~sigma

yfit=fun(p,x); %计算拟合曲线

plot(x,yfit,'r','linewidth',2);

xmax=exp(p(2)-p(3)^2); %计算分布极大分布处和值 x=exp(mu-sigma^2);

ymax=fun(p,xmax);

plot([xmax xmax],[0 ymax],'g','linewidth',2);

xmean=exp(p(2)+p(3)^2/2); %计算期望值 x=exp(mu+sigma^2/2)

ymean=fun(p,xmean);

plot([xmean xmean],[0 ymean],'c','linewidth',2);

hold off;

xlim([min(x) max(x)]);

xlabel('BC浓度(ng/m^3)');

ylabel('频数');

legend('统计数据',['对数正态分布:\mu=' num2str(p(2)) ',\sigma=' num2str(p(3))],...

['极大概然分布位置:x=' num2str(xmax)],['期望值位置:x=' num2str(xmean)]);

text(xmean+10000,ymean+10,'$ y=\frac{ A} { x} e^{ -\frac{ (lnx-\mu)^2} { 2\sigma^2} } $',...

'interpreter','latex','FontSize',18);

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Matlab统计曲线
本文地址: https://pptw.com/jishu/66040.html
请问如何调出标尺 新冠疫情后就业难么

游客 回复需填写必要信息