泰勒图-Matlab_脚本

泰勒图介绍

脚本: 

clear
%data = xlsread('C:\Users\Liuy\Desktop\泰勒图制作\cfmd数据集验证.xlsx','日尺度','B2:NB3');
%data = xlsread('C:\Users\Liuy\Desktop\泰勒图制作\Acell76.xlsx','年降雨','B2:AB24');
data = xlsread('C:\Users\Liuy\Desktop\泰勒图制作\Tcell139.xlsx','按照逐月(单点)','B2:LM3');
%data = xlsread('C:\Users\Liuy\Desktop\泰勒图制作\Acell139.xlsx','按照多年日平均(单点)','B2:NB3');

%获得统计结果
for ii = 2 : size(data,1)
 		    S = allstats(data(1,:),data(ii,:));%allstats.m文件获取统计值
 		    MYSTATS(ii,:) = S(:,2); % We get stats versus reference
end       %for iserie
 MYSTATS(1,:) = S(:,1); % We assign reference stats to the first row
 
%  taylordiag(MYSTaTS(:,2),MYSTaTS(:,3),MYSTaTS(:,4));
stdev=MYSTATS(1,2);%此处时参考值的标准差

MYSTATS(:,2)=MYSTATS(:,2)/stdev;% 标准化处理,每个模式的标准差/参考值标准差
MYSTATS(:,3)=MYSTATS(:,3)/stdev;% 标准化处理,每个模式的均方根误差/参考值标准差

%作图
%折线图(subplot子图)
figure
iw=2;jw=1;
ax = ptable([2 3],[2 3;4 6]); %子图位置及大小x          
alphab = 'ABCDEFG';    %添加图编号(预设) A B C D... 

subplot(iw,jw,1); %折线图位置
plot(data');%转置
grid on,xlabel('day');ylabel('precipitation (mm)');
title(sprintf('%s: These are the different time series of daily precipitation ','A'),'fontweight','bold');
hold on
 
subplot(iw,jw,2); %泰勒图展示位置
%泰勒图 标签中使用了很多默认参数,可以参考taylordiag文件中定义,进行更改。
[pp tt axl] =taylordiag(MYSTATS(:,2),MYSTATS(:,3),MYSTATS(:,4), ... 
                 'tickrms',[0:.2:1],'titleRMS', 0 ,'showlabelsRMS',1,'widthRMS',0.5,'colRMS','g',...%去中心的均方根误差(就是减去平均值再求RMS)%每一个属性(如标题,标签)后数字,1存在,0不存在
                 'tickSTD',[0:.25:1.25],'limSTD',1.25,'styleSTD','-',... %标准差
                 'tickCOR',[.1:.2:.9 .95 .99],'showlabelsCOR',1,'titleCOR',1);%皮尔逊相关系数



%添加图注         
for ii = 1 : length(tt)
    set(tt(ii),'fontsize',9,'fontweight','bold') %标志字母大小
    set(pp(ii),'markersize',9) %标志点大小
    if ii == 1
        set(tt(ii),'String','Obser');%参考值图上显示名称
    else
        set(tt(ii),'String',alphab(ii-1));
    end
end
title(sprintf('%s: Taylor Diagram at Hanjiang','B'),'fontweight','bold'); %图名及图编号

tt = axl(2).handle;
for ii = 1 : length(tt)
    set(tt(ii),'fontsize',10,'fontweight','normal');
end
set(axl(1).handle,'fontweight','normal');

效果图:

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Leon_124

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值