07 - matlab m_map地学绘图工具基础函数 - 绘制等高线

07 - matlab m_map地学绘图工具基础函数 - 绘制等高线

  • 0. 引言
  • 1. 关于绘制m_contour
  • 2. 关于绘制m_contourf
  • 3. 关于绘制m_elev
  • 4. 结语


0. 引言

   本篇介绍下m_map中添加绘制等高线的一系列函数及其用法,主要函数包括m_elevm_contourm_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中绘制等高线的几个方法,通过示例展示了各函数的基本用法,对于绘制常见地学图已经够用了,后面若发现还有其他和绘制等高线有关的函数再进行补充希望对绘图的你有所帮助






😜
😜😜
😜😜😜😜

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/744148.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

动物常见图像的图像分类数据集

常见动物图像分类数据集 数据集: 链接:https://pan.baidu.com/s/1zZnCUZuNlX6MjuZImlDjTw?pwd03b9 提取码:03b9 数据集信息介绍: 文件夹 大象 中的图片数量: 1446 文件夹 松鼠 中的图片数量: 1862 文件夹 河马 中的图片数量:…

web自动化(一)selenium安装环境搭建、DrissionPage安装

selenium 简介 selenium是企业广泛应用的web自动化框架 selenium 三大组件 selenium IDE 浏览器插件 实现脚本录制 webDriver 实现对浏览器进行各种操作 Grid 分布式执行 用例同时在多个浏览器执行,提高测试效率 问题:环境搭建复杂,浏览器版…

天才程序员周弈帆 | Stable Diffusion 解读(四):Diffusers实现源码解读

本文来源公众号“天才程序员周弈帆”,仅用于学术分享,侵权删,干货满满。 原文链接:Stable Diffusion 解读(四):Diffusers实现源码解读 接上一篇文章[天才程序员周弈帆 | Stable Diffusion 解读…

【python013】pyinstaller打包PDF提取脚本为exe工具

1.在日常工作和学习中,遇到类似问题处理场景,如pdf文件核心内容截取,这里将文件打包成exe可执行文件,实现功能简便使用。 2.欢迎点赞、关注、批评、指正,互三走起来,小手动起来! 3.欢迎点赞、关…

19.异常处理

学习知识:方法中,异常的抛出和捕获 Main.java: public class Main {public static void main(String[] args) {errtest errtest new errtest();try{errtest.testerr();} catch (ArithmeticException e) {System.out.println("这个方法…

计算机基础知识——面向对象:封装+继承+多态整理

面向对象三大特性:封装、继承、多态。 1.封装 将一系列相关事物的共同的属性和行为提取出来,放到一个类中,同时隐藏对象的属性和实现细节,仅对外提供公共的访问方式。 【JavaBean类就可以看作是封装的完美案例。】 setter和get…

【Docker】rancher 管理平台搭建

目录 1. 所有节点安装docker 2. 所有节点配置/etc/sysconfig/docker 文件修改如下配置 3. 配置证书 4. 镜像仓库导入镜像 5. 创建镜像仓库 5.1 查询上传的 image id 5.2 镜像打标签 5.3 镜像上推 6. server 节点 7. client 节点 8. 在 server 节点启动 9. 查看运行…

聚酰胺-酰亚胺(PAI)应用前景广阔 酰氯法和异氰酸酯法为其主流制备方法

聚酰胺-酰亚胺(PAI)应用前景广阔 酰氯法和异氰酸酯法为其主流制备方法 聚酰胺-酰亚胺又称PAI,是一种分子链呈酰亚胺环和酰胺键有规则交替排列的高性能热塑性树脂。PAI具有耐磨耗性能好、摩擦系数低、尺寸稳定性好、耐高温、耐辐射、化学稳定性…

AI 编程还有前景嘛?

自从各个大厂相继出品 AI 编程助手之后,AI 在编程领域的发展,可谓是几无寸进。 相比于 AI 在多模态领域火热,AI 在编程领域的热度已经完全下来了。 阿七在公众号搜索了关键词「AI编程」,发现搜索出来的公众号寥寥无几&#xff0…

Python读取中文路径,出现乱码问题解决方案

Python读取中文路径,出现乱码问题解决方案 一、问题描述二、问题解决 欢迎学习交流! 邮箱: z…1…6.com 网站: https://zephyrhours.github.io/ 一、问题描述 笔者在使用opencv读取带有中文路径的图片时,发现会出现乱…

ROS2中的CMakeLists(一)——基础知识

在使用ROS2框架开发机器人应用时,对各个功能包Cmakelist.txt文件的更改尤为重要。本系列旨在总头开始介绍Cmakelist.txt各条语句的意义和内涵。 Cmake已经是高度集成的构建工具,其作用是在不同开发环境下生成makefile文件,以此来执行make指令…

YOLOv8/v10项目使用教程

根据改好的YOLOv8.yaml改yolov10.yaml教程 打开ultralytics/cfg/models/v8路径,找到需要移植的yaml文件,从其中复制相关的模块。打开一个YOLOv10的yaml文件。 注释掉之前相应位置的模块,并粘贴上面复制的模块,完成。 其余使用步骤…

【Linux】使用ntp同步时间

ntp介绍 NTP(Network Time Protocol,网络时间协议)是一种用于同步计算机时间的协议,工作在UDP的123端口上。它是一种客户端-服务器协议,用于同步计算机的时钟。通过连接到网络上的时间服务器,计算机可以获…

企业变革的引擎:PDM实施的策略与实践

在当今快速发展的信息技术时代,产品数据管理PDM系统已成为企业提升效率和竞争力的重要工具。PDM不仅是一项技术,更是一种管理思想的应用,它涉及到企业组织、管理和产品开发过程的全面变革。本文将探讨PDM实施的四大关键技术,为企业…

【安卓13 源码】RescueParty救援机制

RescueParty机制正是在这个背景下诞生的,当它注意到系统或系统核心组件陷入循环崩溃状态时,就会根据崩溃的程度执行不同的救援行动,以期望让设备恢复到正常使用的状态。 开机后会自动重启,进入Recovery界面。经查找,是…

YOLOv8+SwanHub+作物检测:从可视化训练到Demo演示

1. 项目介绍 本项目旨在利用先进的YOLOv8深度学习模型对麦穗进行高效、准确的检测。我们采用了GlobalWheat数据集,该数据集包含丰富的麦穗图像,为模型的训练提供了有力的数据支持。通过该实验,实现高准确率的麦穗识别,为农业生产提…

【深度学习】菜品目标检测软件系统

深度学习类文章回顾 【YOLO深度学习系列】图像分类、物体检测、实例分割、物体追踪、姿态估计、定向边框检测演示系统【含源码】 【深度学习】物体检测/实例分割/物体追踪/姿态估计/定向边框/图像分类检测演示系统【含源码】 【深度学习】YOLOV8数据标注及模型训练方法整体流程…

Matlab|【防骗帖】考虑时空相关性的风电功率预测误差建模与分析

目录 1 主要内容 2 部分程序 3 下载链接 1 主要内容 这个程序《考虑时空相关性的风电功率预测误差建模与分析》画的图片非常漂亮,和原文献基本一致,但是实际上内容并未实现出来,主要就是利用现有的风电预测的数据和结果做了相关的图&#…

CLion2024 for Mac[po] C和C++的跨平台解代码编辑器

Mac分享吧 文章目录 效果一、下载软件二、开始安装1、双击运行软件(适合自己的M芯片版或Intel芯片版),将其从左侧拖入右侧文件夹中,等待安装完毕2、应用程序显示软件图标,表示安装成功3、打开访达,点击【文…

【咨询】企业数字档案馆建设规划建议书-模版范例

导读:本文提供范例可以作为xxx建设规划建议书模版 建议书结构 第一章 项目背景及意义 1.1.企业数字档案馆建设是构建新质生产力的重要抓手 1.2.企业数字档案馆建设是落实全国档案事业发展规划的重要支撑 1.3.企业数字档案馆建设是支撑提质增效、高质量发展的有效…