matlab如何读取数据绘制风场
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,小编给大家分享一下matlab如何读取数据绘制风场,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、matlab读取NCEP再分析数据并绘制风场%该程序用于求水汽通量散度%注意!我们
千家信息网最后更新 2026年11月03日matlab如何读取数据绘制风场
小编给大家分享一下matlab如何读取数据绘制风场,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
一、matlab读取NCEP再分析数据并绘制风场
%该程序用于求水汽通量散度%注意!我们这里读到的u是四维矩阵,分别是lon*lat*level*time,clc;clear;close allf_hgt = 'ps_level_20170121_0130.nc';% ncdisp(f_hgt);time=ncread(f_hgt,'time');level=ncread(f_hgt,'level');lon=ncread(f_hgt,'longitude');lat=ncread(f_hgt,'latitude');%%%%%%时间转换time = double(time);format = 'mm dd, yyyy HH:MM:SS.FFF AM';%转换格式dstr = datestr((datenum('1900-01-01') + time./24),format);%转换后时间字符串存储TM = datevec(dstr);%将时间字符数组转化为数值数组tidx=find(TM(:,2)==1 & TM(:,3)==28 & TM(:,4)==00);%筛选7月25日08时(世界时加8)ps_lev=find(level ==850);%%删选出850hPa高度start=[1,1,ps_lev,tidx];%所指定变量的每一维的开始读取的位置count=[41,31,1,1];%从start指定的开始位置算起,一共读取的每一维要素的数目strip=[1,1,1,1];%从start开始,每一维读取的数目为count时,每一维的读取的步长hgt=ncread(f_hgt,'z',start,count,strip);%读取温度值,单位Ku=ncread(f_hgt,'u',start,count,strip);%读取温度值,单位Kv=ncread(f_hgt,'v',start,count,strip);%读取温度值,单位K[X,Y]=meshgrid(lon,lat);figure(1)m_proj('Mercator','lat',[25,35],'lon',[100,115]);% m_grid('linestyle','none','tickdir','out','fontsize',12,'fontname','Times New Roman');m_grid('linestyle','none','box','fancy','fontsize',11,'tickdir','in','xtick',[100:3:115],'ytick',[25:2:35]);hold onm_windbarb(X',Y',u,v,'color','k')%m_coast('patch',[.9 .9 .9],'edgecolor','none');[C,h]=m_contour(X',Y',hgt/10 ,'color','k','LineWidth',1);%[5000:80:5900]%[1520:25:1680]%set(b,'ShowText','on','TextStep',get(b,'LevelStep'),'fontsize',12,'fontname','Times New Roman'); %在等高线上叠加数值(文后详情)clabel(C,h,'FontSize',13,'fontname','Times New Roman');ma=shaperead('F:/RMeteoInfo/data/map/bou2_4l.shp'); % m_line( [ma(:).X], [ma(:).Y],'color',[0.5,0.5,0.5]);%绘制范围内的地图m_line([ma(:).X],[ma(:).Y],'color','r');%绘制范围内的地图m_plot(105.5,29.43,'marker','^','MarkerSize',7,'color','k','MarkerFaceColor','k')
二、matlab读取ERA5并绘制全球风场图
clc;clear;close allu0=ncread('202008muwind.nc','uas'); %读取其中一项v0=ncread('202008mvwind.nc','vas');time0=ncread('202008muwind.nc','time');lat0=ncread('202008muwind.nc','lat');lon0=ncread('202008muwind.nc','lon'); [lat,lon]=meshgrid(lat0,lon0);u=u0(:,:,2);v=v0(:,:,2);b=sqrt(u.^2+v.^2);figure(1);m_proj('Equidistant Cylindrical','long',[-180 180],'lat',[-90 90]);%矩形投影;取区域观察[lon1,lat1]=meshgrid([-180:2.5:179.75],[-90:2.5:90]);u2=u(1:10:end,1:10:end)';% u3=[u2,u2(:,end)];v2=v(1:gap:end,1:gap:end)';% v3=[v2,v2(:,end)];m_quiver(lon1,lat1,u2,v2,0);hold offm_coast('patch',[1 .85 .7]);m_grid('box','on','tickdir','out');
m_contourf(lon,lat,b);%在mmap基础上的画shading interp;%使数据插值hold on;m_quiver(lon1,lat1,u2,v2,0);hold off;
m_quiver(lon1,lat1,u2,v2,0);
m_contourf(lon,lat,b,500,'linestyle','none') %在mmap基础上的画shading interp; %使数据插值
看完了这篇文章,相信你对"matlab如何读取数据绘制风场"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!
数据
一维
单位
时间
温度
位置
地图
基础
字符
数值
数目
数组
篇文章
范围
插值
世界
全球
区域
变量
字符串
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
苏州找大状互联网科技有限公司
互联网科技垄断
互联网巨头科技公司
北京互联网科技
互联网金融与金融科技
科技与互联网发展
为想互联网科技
科技互联网创业计划书
国外互联网科技网站
互联网科技寓意
小米互联网科技园设置
互联网大会黑科技排名
互联网和黑科技的看法
中国航天科技大学国际工业互联网
中国互联网十大科技股排名
畅思互联网科技
启辰互联网科技
半导体是互联网高科技吗
福建互联网展示科技馆设计
保山浩联互联网科技有限公司
互联网科技公司
盈实互联网科技
互联网科技未来
互联网金融公司科技
以房互联网科技
远拓互联网科技
万达互联网科技
互联网科技中介
字节跳动和互联网科技
卓翼科技产业互联网合作