您的位置:首页 > 编程语言 > MATLAB

MATLAB画双轴-倒立降水柱状图

2016-07-20 21:23 344 查看
% P=fix(rand(1,400)*500);   %产生所需数据

% Qobs=fix((rand(1,400)+10)*5);

% Qsim=Qobs-1;

function [NC,WBE]=Nash(Qobs,Qsim,P)

[m,n]=size(Qsim); 

if nargin==3  %如果输入参数为3个

    figure;  

    [AX,H1,H2]=plotyy(1:n,Qsim,1:n,P,'plot','bar');%画双轴,AX(1)左轴,AX(2)右轴,H为曲线本身

    hold on    

    set(AX(2),'YDir','reverse','Ylim',[0,max(P)*2],'YTick',[0:100:max(P)*2],'FontSize',12);  %设置右边轴为倒立

    set(AX(1),'YLim',[min(Qsim),1.3*max(Qsim)],'YTick',[min(Qsim):10:1.3*max(Qsim)],'Fontsize',12,'YColor','k');

    H3=plot(1:n,Qobs,'r-','LineWidth',1.1);

    %设置坐标轴的标题

    set(get(AX(1),'Xlabel'),'String','时间(d)');

    set(get(AX(1),'Ylabel'),'String','流量(m^3/s)');

    set(get(AX(2),'Ylabel'),'string','降雨量/mm');

    %设置figuer中线,柱的属性

    set(H2,'BarWidth',0.1);

    set(H1,'LineWidth',2,'Color','g');  %设置H1的曲线宽为4,颜色为g绿色,

    set(H3,'LineWidth',2,'Color','b')

    %设置背景色和图例

    set(gcf,'color','w');  %设置当前figure的背景颜色

    legend('模拟值','实测值','降水量');%设置图例

    WBE=sum(Qobs-Qsim)/sum(Qobs);

    NC=1-sum((Qobs-Qsim).^2)/sum((Qobs-mean(Qobs)).^2);

elseif nargin<2

     errordlg('less input!','Error','on');

else    

 WBE=sum(Qobs-Qsim)/sum(Qobs);

 NC=1-sum((Qobs-Qsim).^2)/sum((Qobs-mean(Qobs)).^2);
end

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  matlab