资源简介
运用fortran对原始数据进行了格式转换。
输出数据内容为时刻、经度、纬度、VTEC值等13*71*73=67379行,4列的-result.txt文件,用于下一步的绘图,此外还输出了加上日期等信息的-说明结果.txt文件,用于结果的说明。
用matlab进行静态、动态图像的绘制。
绘制出2016年7月20日、12月12日两天0-24h以2h为间隔的13张VTEC分布图,用编程方法将绘制出的13张静态图片以每秒2帧的速度播放,分别命名、保存,并利用保存的图片制作三维网格gif动态图和平面等高线gif动态图。
代码片段和文件信息
clear;
%数据处理部分
[FileNamePathName] = uigetfile(‘*.*‘‘电离层网格产品‘); %选择电离层产品文件
f = fopen(fullfile(PathNameFileName) ‘r‘); %读取文件数据
Data = fscanf(f‘%c‘); %以字符形式储存于Data中
fclose(f);
TECstart = strfind(Data ‘START OF TEC MAP‘); %查找TEC MAP开始、结束标识
TECend = strfind(Data ‘END OF TEC MAP‘);
Dateflag = strfind(Data ‘ EPOCH OF FIRST MAP ‘); %提取日期
Date = str2num(strtrim(Data(Dateflag-60: Dateflag)));
Year = Date(1); Month = Date(2); Day = Date(3); %月年日
TEC(111) = 0;
flag = 0;
PaintData=zeros(14);
for i = 1:13 %0-24时每两小时一个TEC MAP
Time=2*(i-1);
CurrentMap = Data(TECstart(i): TECend(i)); %当前时间电离数据图
TECflag = strfind(CurrentMap ‘LAT/LON1/LON2/DLON/H‘); %电离层数据开始位置
for j = 1:71 %纬度87.5至-87.5间隔2.5
LAT=87.5-2.5*(j-1);
TECdata = str2num(char(strsplit(strtrim(CurrentMap(TECflag(j)+20: TECflag(j)+390)))));
for k = 1:73 %经度-180.0至180.0间隔5
LON=-180+5*(k-1);
%TEC(ijk) = TECdata(k1);
flag = flag + 1;
PaintData(flag1:4) = [Time LAT LON TECdata(k1)];
end
end
end
%绘图部分
ScreenSize = get(0 ‘ScreenSize‘); %获得屏幕大小
set(gcf ‘Position‘ [ScreenSize(3)/2-650 ScreenSize(4)/2-200 1300 400]); %绘图窗口居中
FileName = strcat(fullfile(PathName strtok(FileName ‘.‘)) ‘.gif‘);
for i=1:13
Time = (i-1) * 2; %时间
x = PaintData(1+5183*(i-1):5183*i3); %读取数据
y = PaintData(1+5183*(i-1):5183*i2);
z = PaintData(1+5183*(i-1):5183*i4);
[XYZ] = griddata(xyzlinspace(-180180100)‘linspace(-87.587.5100)‘v4‘); %插值处理
subplot(121);
mesh(XYZ); %mesh格网绘图
shading interp; %对图形对象的颜色着色进行色彩的插值处理使色彩平滑过渡
colorbar; %色标
axis([-200 200 -100 100 0 500]); %坐标轴大小
caxis([0500]); %调节颜色标尺范围
title(sprintf(‘%d年%d月%d日%d时VTEC分布图(三维显示)‘ Year Month Day Time‘)); %标题
xlabel(‘经度‘)ylabel(‘纬度‘)zlabel(‘VTEC值‘);%各个坐标轴标签
subplot(122);
pcolor(XYZ); %二维绘图
shading interp; %对图形对象的颜色着色进行色彩的插值处理使色彩平滑过渡
colorbar; %色标
axis tight; %坐标轴的最大值和最小值和的数据范围一致
caxis([0500]); %调节颜色标尺范围
set(gca‘nextplot‘‘replacechildren‘); %设定axis覆盖重画模式
title(sprintf(‘%d年%d月%d日%d时VTEC分布图(平面显示)‘ Year Month Day Time‘)); %标题
xlabel(‘经度‘)ylabel(‘纬度‘)zlabel(‘VTEC值‘);%各个坐标轴标签
M(i)=getframe(gcf); %保存各个时刻绘图窗口到每一帧
%保存至GIF文件
im = frame2im(M(i));
[imindcm] = rgb2ind(im256);
if i == 1
imwrite(imindcmFileName ‘gif‘ ‘Loopcount‘ inf);
else
imwrite(imindcmFileName ‘gif‘ ‘WriteMode‘ ‘append‘);
end
end
close all;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 809376 2017-10-31 23:47 VTEC模型建立\VTEC.exe
文件 2907 2017-10-31 23:50 VTEC模型建立\VTEC.m
文件 2021370 2017-10-28 11:44 VTEC模型建立\程序-格式转换\1-格式转换结果\2020-result.txt
文件 2021429 2017-10-28 11:44 VTEC模型建立\程序-格式转换\1-格式转换结果\2020-说明结果.txt
文件 2021370 2017-10-28 11:44 VTEC模型建立\程序-格式转换\1-格式转换结果\3460-result.txt
文件 2021429 2017-10-28 11:44 VTEC模型建立\程序-格式转换\1-格式转换结果\3460-说明结果.txt
文件 1482 2017-10-28 14:34 VTEC模型建立\程序-格式转换\VTEC分布图-数据提取\1.f90
文件 2021370 2017-10-28 11:44 VTEC模型建立\程序-格式转换\VTEC分布图-数据提取\2020-result.txt
文件 2021429 2017-10-28 11:44 VTEC模型建立\程序-格式转换\VTEC分布图-数据提取\2020-说明结果.txt
文件 2021370 2017-10-28 11:44 VTEC模型建立\程序-格式转换\VTEC分布图-数据提取\3460-result.txt
文件 2021429 2017-10-28 11:44 VTEC模型建立\程序-格式转换\VTEC分布图-数据提取\3460-说明结果.txt
文件 11649 2017-10-28 11:44 VTEC模型建立\程序-格式转换\VTEC分布图-数据提取\Debug\1.obj
文件 3934 2017-10-28 11:44 VTEC模型建立\程序-格式转换\VTEC分布图-数据提取\Debug\BuildLog.htm
文件 53248 2017-10-28 11:44 VTEC模型建立\程序-格式转换\VTEC分布图-数据提取\Debug\vc100.pdb
文件 913920 2017-10-28 11:44 VTEC模型建立\程序-格式转换\VTEC分布图-数据提取\Debug\VTEC分布图-数据提取.exe
文件 381 2017-10-28 11:44 VTEC模型建立\程序-格式转换\VTEC分布图-数据提取\Debug\VTEC分布图-数据提取.exe.intermediate.manifest
文件 2165760 2017-10-28 11:44 VTEC模型建立\程序-格式转换\VTEC分布图-数据提取\Debug\VTEC分布图-数据提取.pdb
文件 869995 2017-10-28 02:58 VTEC模型建立\程序-格式转换\VTEC分布图-数据提取\igsg2020.16i
文件 869428 2017-10-28 00:34 VTEC模型建立\程序-格式转换\VTEC分布图-数据提取\igsg3460.16i
..A..H. 250 2017-10-30 20:43 VTEC模型建立\程序-格式转换\VTEC分布图-数据提取\VTEC分布图-数据提取.u2d
文件 1967 2017-10-26 20:36 VTEC模型建立\程序-格式转换\VTEC分布图-数据提取\VTEC分布图-数据提取.vfproj
文件 944 2017-10-26 20:25 VTEC模型建立\程序-格式转换\VTEC分布图-数据提取.sln
..A..H. 13312 2017-10-30 20:43 VTEC模型建立\程序-格式转换\VTEC分布图-数据提取.suo
文件 1373 2017-10-28 03:09 VTEC模型建立\程序-静态动态绘图\2020三维gif.m
文件 1377 2017-10-28 03:09 VTEC模型建立\程序-静态动态绘图\2020平面gif.m
文件 1373 2017-10-28 02:47 VTEC模型建立\程序-静态动态绘图\3460三维gif.m
文件 1377 2017-10-28 02:48 VTEC模型建立\程序-静态动态绘图\3460平面gif.m
文件 507267 2017-10-28 16:56 VTEC模型建立\结果-VTEC分布图\2016年12月12日\3460三维-gif.gif
文件 295630 2017-10-28 16:53 VTEC模型建立\结果-VTEC分布图\2016年12月12日\3460平面-gif.gif
文件 123618 2017-10-28 17:03 VTEC模型建立\结果-VTEC分布图\2016年12月12日\静态\3460三维-1.jpg
............此处省略67个文件信息
评论
共有 条评论