做全屏式网站尺寸是多大,网站伪静态如何配置,浙江省城乡建设网站证件查询,影视宣传制作公司07 - matlab m_map地学绘图工具基础函数 - 绘制等高线 0. 引言1. 关于绘制m_contour2. 关于绘制m_contourf3. 关于绘制m_elev4. 结语 0. 引言 本篇介绍下m_map中添加绘制等高线的一系列函数及其用法#xff0c;主要函数包括m_elev、m_contour、m_contourf还有一些函数也和绘制… 07 - matlab m_map地学绘图工具基础函数 - 绘制等高线 0. 引言1. 关于绘制m_contour2. 关于绘制m_contourf3. 关于绘制m_elev4. 结语 0. 引言 本篇介绍下m_map中添加绘制等高线的一系列函数及其用法主要函数包括m_elev、m_contour、m_contourf还有一些函数也和绘制等高线有关(如m_tbase、m_etopo2)但没有合适的数据未完成调用测试所以不进行展开。
1. 关于绘制m_contour m_contour 函数用于在地图投影上绘制等值线图。等值线图是一种常用的展示地理数据的方法通过连接相同数值的点来展示数据的变化趋势。使用m_contour函数可以在地图上直观地显示这些等值线并帮助分析地理数据的特征。 m_contour 函数的一般调用形式 [cs,h]m_contour(long,lat,data,varargin)其中long,lat为绘制数据的一系列经纬度坐标data为高度起伏数据long,lat和data都是矩阵形式且行列必须一致long,lat和data可以理解为投影区域的一系列3维点m_contour是将相同或相近起伏的点进行连接的过程varargin为可选参数控制绘制的等高线的样式如linecolor线的颜色、linewidth线宽、edgecolor边缘颜色等返回的cs存储等高线矩阵h包含了绘制等高线的一些其它参数cs和h如果没用可以省略输出。 示例 示例中使用的外部数据是全球的GLDAS水文模型绘制了下图区域的水文等高线图。测试数据在网盘中提取码为n67r。
clc;clear;
ncFilePath GLDAS_NOAH10_M.A200602.021.nc4;
lon ncread(ncFilePath,lon);
lat ncread(ncFilePath,lat);
soilmoi_data ncread(ncFilePath,SoilMoi0_10cm_inst); [LN,LT]meshgrid(lon,lat);figure;
m_proj(mercator,lon,[0 105.5],lat,[0 60]);% 绘制填充的等值线图
[cs,h] m_contour(LN,LT, soilmoi_data, linecolor, r, linewidth, 1);
%m_contour(LN,LT, soilmoi_data,edgecolor,r,facecolor,g);% 添加地图边界和海岸线
m_coast(line, color, k);
m_grid(linestyle, none, box, fancy);% 添加颜色条
colorbar;2. 关于绘制m_contourf m_contourf函数用于在地图上绘制填充等值线图。它与Matlab自带的contourf函数相似差异是m_contourf在制图中应用能够基于投影直接绘制地理图件。 m_contourf的一般形式
[cs,h]m_contourf(long,lat,data,varargin)其调用形式和m_contour基本一致差异在varargin中部分属性是控制填充的这个是m_contour中没有的。 示例如下测试数据在网盘中提取码为n67r。
clc;clear;
ncFilePath GLDAS_NOAH10_M.A200602.021.nc4;
lon ncread(ncFilePath,lon);
lat ncread(ncFilePath,lat);
soilmoi_data ncread(ncFilePath,SoilMoi0_10cm_inst); [LN,LT]meshgrid(lon,lat);figure;
m_proj(mercator,lon,[0 105.5],lat,[0 60]);% 绘制填充的等值线图
[CS,CH] m_contourf(LN,LT, soilmoi_data);% 添加地图边界和海岸线
m_coast(line, color, k);
m_grid(linestyle, none, box, fancy);% 添加颜色条
colorbar;3. 关于绘制m_elev m_elev函数可以利用1°高程数据集绘制多种类型的地图上面提到m_contour(绘制等高线) 和m_contourf(填充等高线)两个函数都可以看作是 m_elev函数功能的一部分。 m_elev函数有多种调用形式主要形式如下
一般形式1
[ELEV,LONG,LAT]M_ELEV([LONG_MIN LONG_MAX LAT_MIN LAT_MAX])形式1输入绘图区域经纬度四至即 [最小经度 最大经度 最小维度 最大维度]返回四至区域高程数据格点分辨率为1° 示例 形式1的调用主要用于提取研究范围的高程数据并不会绘制等高线下面两图为有等高线和没等高线的对比
m_proj(mercator,long,[-160 -40],lat,[30 80]);
m_coast(patch,[1 .85 .7]);%m_elev(contourf,[500:500:6000]);
% 提取范围内高程数据
[ele,lon,lat] m_elev([-160 -100 30 60]);m_grid(box,fancy,tickdir,in);
colormap(flipud(copper));一般形式2
M_ELEV(OPTN,args,...)第二种调用形式OPTN参数为功能选择参数可以选择绘制等高线contour图、等高线填充contourf图、pcolor图、栅格图像image和阴影shadedrelief图共5种类型的地图; args表示其他可选项可以控制绘图的线条样式、颜色等属性
% OPTN: contour - contour lines are drawn.
% contourf - filled contours are drawn.
% LEVELS are the levels used, and ARGS
% are optional patch arguments of line types,
% colors, etc.
% pcolor - pcolor call
% image - displays pixellated image 展示栅格图像
% shadedrelief - shaded relief map. 阴影地形图下面示例包含了上述五种类型的有关命令并展示了五种图的图示
m_proj(mercator,long,[-160 -40],lat,[30 80]);
m_coast(patch,[1 .85 .7]);% 一般形式1
%[ELEV,LONG,LAT]m_elev([-100 -40 50 80]);
% 一般形式2
%m_elev(contourf,[500:500:6000]); % 绘制等高线
%m_elev(contour,[500:500:6000]); % 绘制等高线填充
%m_elev(image);
m_elev(shadedrelief,gradient,.5);
%m_elev(pcolor)m_grid(box,fancy,tickdir,in);
colormap(flipud(copper));contour image shadedrelief pcolor
4. 结语 本篇介绍了m_map中绘制等高线的几个方法通过示例展示了各函数的基本用法对于绘制常见地学图已经够用了后面若发现还有其他和绘制等高线有关的函数再进行补充。希望对绘图的你有所帮助