- 积分
- 2472
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2014-9-3
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
这两个图片完全不一样,请教各位了?我把绘图程序发上来。
clear
clc
filename='Y:\20190419\high\uv\850\19041908.000';
%%
%地图数据读取
ma=shaperead('D:\data\data_resouse\shp\China\bou2_4m\bou2_4l');
LON=[ma(:).X]; % 提取经度
LAT= [ma(:).Y]; % 提取纬度
%%
dia=diamond11(filename)
lat_num=dia.latgrinum;
lon_num=dia. longrinum;
latbeg=dia.latbeg;
latend=dia.latend;
lonbeg=dia.lonbeg;
lonend=dia.lonend;
latdis=dia.latdis;
londis=dia.londis;
uu = dia.datau;
vv =dia.datav;
Lat=[latbeg:latdis:latend];%%原始数据维度
Lon=[lonbeg:londis:lonend];%%原始数据经度
%[lon,lat] = meshgrid(lon,Lat);
[lon,lat]=meshgrid(Lon,Lat);
m_proj('lambert','lat',[10 60],'lon',[72 140]);
m_grid('linestyle','none','tickdir','out');
hold on
m_windbarb(lon,lat,vv,uu);
%m_quiver(lon,lat,u,v)
hold on
m_plot(LON,LAT,'k-')
用到的函数为http://bbs.06climate.com/forum.p ... mp;highlight=micaps这个帖子下面的大神提供,再次感谢。
function dia=diamond11(filename)
%此函数用于读取diamond4类型数据
%filename为要读取文件的路径,由主程序按照循环生成
%*********本程序内有部分数据未使用,但是读取过程已经包含,具体对应请查看
%Micaps数据结构,如有需要可自行设置接口使用
fid=eval(['fopen(''' filename ''')']);
Type=fscanf(fid,'%s%s%s',3);
Time=fscanf(fid,'%d%d%d%d%d',6);
Pointpara=fscanf(fid,'%f%f%f%f%f%f',6);
Linepara=fscanf(fid,'%f%f',2);
Temp=struct('year',[],'month',[],'day',[],'hour',[],'presc',[],...
'lev',[],'londis',[],'latdis',[],'lonbeg',[],'lonend',[],...
'latbeg',[],'latend',[],'latgrinum',[],'longrinum',[],...
'datau',[],'datav',[]);
Temp.year=Time(1);
Temp.month=Time(2);
Temp.day=Time(3);
Temp.hour=Time(4);
Temp.presc=Time(5);
Temp.lev=Time(6);
Temp.londis=Pointpara(1);
Temp.latdis=Pointpara(2);
Temp.lonbeg=Pointpara(3);
Temp.lonend=Pointpara(4);
Temp.latbeg=Pointpara(5);
Temp.latend=Pointpara(6);
Temp.latgrinum=Linepara(1);
Temp.longrinum=Linepara(2);
n=1;
while n<=Linepara(2)
Temp.datau(n,:)=fscanf(fid,'%f',Linepara(1));
Temp.datav(n,:)=fscanf(fid,'%f',Linepara(1));
n=n+1;
end
dia=Temp;
end
|
-
micaps
-
matlab绘制
|