MATLAB 如何以海森频率格子格纸的形式绘制频率分布曲线?

思路:将水文频率在海森格纸上对应的位置算出来,通过更改坐标轴标签制作海森频率格纸

先放参考链接:
norminv
如何利用matlab在海森几率格纸上绘制图形

clc
clear  
close all

%% 随机生成径流系列,并计算对应频率
q = randi(1000,1000,1);
q = sortrows(q,-1);
for j = 1:length(q)
        frequncy(j,1) = j/(length(q)+1);
end

%% 计算海森频率格纸中对应的位置及海森频率纸的标准刻度位置
%样本数据的频率对应的位置
x = frequncy*100;
xx = norminv(x/100,0,1);
% 标准刻度位置
x=[0.01 0.05 0.1 0.5 1 5 10 15 20 30 40 50 60 70 80 85 90 95 99 99.9 99.95 99.99];
x_standard = norminv(x/100,0,1);

%% 绘图
figure(1)
plot(frequncy*100,q,'k')
xlabel('Percentaeg of streamflow is equalled or exceeded (%)')
ylabel('daily streamflow (mm/d)')
save('case1.png')

figure(2)
plot(xx,q,'k')
xlim([min(xx) max(xx)])
set(gca, 'XTick',x_standard, 'XTickLabel', string(x));
xlabel('Percentaeg of streamflow is equalled or exceeded (%)')
ylabel('daily streamflow (mm/d)')
save('case2.png')

原始频率图像:
请添加图片描述

海森频率图像:
请添加图片描述
在这里插入图片描述

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值