水深地形图
1. 转置
1.1 代码示例
Filename='filename.nc';
lon=ncread(Filename,'LON'); % 115-140
lat=ncread(Filename,'LAT'); % 15-40
dep=ncread(Filename,'BATHY');
dep=dep';
重点注意,水深数据dep需要进行转置
1.2 解释说明
对4×5型矩阵进行转置得到为5×4型矩阵。
对于nc文件中的水深数据,其维度:
Dimensions: LON17701_19201,LAT6301_7801,TIME
重构网格点meshgrid
后得到的网格同为(lon,lat),但区别如下:
如左图,假设标记处表示其lon=30,lat=40的水深,但发现若在地图中标记处应为lon=40,lat=30,因此对进行转置得到后,标记处变为,恰好与lon=40,lat=30与其对应。
故:在进行一般绘图时需要考虑是否进行转置!
2. plot水深地形图
2.1 代码示例
f=figure(id);
m_proj('mercator','lon',[115,140],'lat',[15,40]);
m_contourf(lon,lat,dep,50,'linestyle','none');
m_gshhs_f('Color','g','LineWidth',0.6,'LineStyle','-.');
m_grid('linestyle',':','box','fancy','tickdir','out','linecolor','w','alpah','0.5');
设置投影和,等值线填充,海岸线,格点
2.2 部分参数详解
m_proj('投影方式','long',[lonmin lonmax],'lat',[latmin latmax]);
2.2.1 等值线
m_contourf(x,y,z,level,LineSpec,'ShowText','LineWidth','LabelSpacing');
. x,y,z的维度size应该一致,若x,y分别为,则可以通过meshgrid进行重构网格,最终得到相同大小的x,y,z;
% reshap size
[X,Y]=meshgrid(x,y) % produce the coordinates of a rectangular grid (X, Y).
cat(DIM,A,B) % cat(2,A,B) is the same as [A,B].
% cat(1,A,B) is the same as [A;B].
. level表示层级,可以为层级数也可以是一个或几个特定的层级;
contourf(X,Y,Z,10)
contourf(X,Y,Z,[2 3])
contourf(X,Y,Z,[2 2])
上述三幅图来自于mathworks,分别表示level=50,[2 3],[2 2]的结果;
. LineSpec表示线性
contourf(X,Y,Z,50,'b--');
contourf(X,Y,Z,50,'linestyle','--','color','blue'
两种呈现结果相同,均显示蓝色虚线的线条格式
. ShowText表示等高线标签
2.2.2 海岸线
m_gshhs(RES,'patch' ( ,standard patch options,...,...) )
2.2.3 网格相关参数
3. colormap
hh=colorbar;
set(hh,'position',[0.78 0.1 0.02 0.8]);
caxis([-7000 3000]);
set(hh,'ytick',-7000:1000:3000,'yticklabel',-7000:1000:3000);
colormap([ m_colmap('blues(1)',70); m_colmap('greens',30)]);
3.1 常见的colormap/m_colmap
3.2 特殊拼接用法
. flipud翻转colormap
colormap(m_colmap('blues'));
colormap(flipud(m_colmap('blues')));
. colormap拼接
colormap([ m_colmap('blues',70); m_colmap('greens',30)]);
表示blues与greens两个colmap的比例为7:3
本文来自博客园,作者:dan-chen,转载请注明原文链接:https://www.cnblogs.com/dan-chen/p/10781229.html
---------------
小陈的学习历险记
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具