当前位置: 首页 > news >正文

Matlab地理信息绘图—研究区域绘制

文章目录

    • m_map工具箱
    • Matlab绘制研究区域
    • 结果显示

m_map工具箱

  • m_map是 MATLAB 中用于制作地图和地理数据可视化的工具包。这个工具包提供了一组函数和工具,使得用户能够在 MATLAB 中轻松创建地图,并在地图上显示各种地理和气象数据。以下是 m_map 工具包的一些主要特性和功能:

    • 地图投影: m_map 支持多种地图投影,包括等距圆柱投影、等距伪圆柱投影、等距锥形投影等。这些投影方式允许用户选择最适合其数据的投影方式。

    • 绘制地图要素: 用户可以使用 m_coast、m_grid 等函数绘制海岸线、经纬网格等地图要素。这些函数使得用户能够轻松创建具有标准地图元素的地图。

    • 地理数据可视化: m_map 提供了一组用于在地图上可视化地理和气象数据的函数。用户可以使用 m_contour、m_contourf、m_quiver 等函数在地图上绘制等高线图、矢量场等。

    • 支持多种数据格式: m_map 支持处理多种地理和气象数据的数据格式,包括常见的NetCDF、GRIB等格式。

    • 交互式工具: m_map 具有一些交互式工具,如平移、缩放、选择等,使得用户能够更灵活地查看和操作地图。

Matlab绘制研究区域

%% Figure1 研究区域
clear;clc;close all
load('.\data\Arctic_depth');
load('.\data\napa025_lat_lon');
load('.\data\oceandeep_ws.mat')
load('.\data\depthmap2.mat')
depth(depth==0)=nan;
siz=25;lind=1.5;lind1=3;x_0=0.1;
y_0=0.56;
len=0.85;
width=0.40;
d_x=0.43;
d_y=-0.46;
px=[0 0 0 1];
py=[0 1 1 1];lon=lon_napa025;lat=lat_napa025;
lat_napa025(lat_napa025<68|lat_napa025>77)=nan;
lon_napa025(lat_napa025<68|lat_napa025>77)=nan;
lon_napa025(lon_napa025<205|lon_napa025>240)=nan;
lat_napa025(lon_napa025<205|lon_napa025>240)=nan;x1=[25 50:50:200 500:500:2000 3000];
x2=[50:50:200 500:500:2000 3000 6000];
C1=0;C2=length(x1);
Datajet=zeros(528,735);
for ii=1:length(x1)Datajet(depth>=x1(ii)&depth<x2(ii))=ii-0.5;
endxx1=[0 20 50:50:300 400 500:500:3000 4000 4500 5000];
xx2=[20 50:50:300 400 500:500:3000 4000 4500 5000 5500];
CC1=0;CC2=length(xx1);
Datajet1=zeros(528,735);
for ii=1:length(xx1)Datajet1(depth>=xx1(ii)&depth<xx2(ii))=ii-0.5;
end
% 北冰洋
set(gcf,'color',[1 1 1],'position',[10 45 800 800*1.2]);%get(0,'screensize')
axes('position',[0.05 0.58 0.4 0.4]);
m_proj('azimuthal equal-area','latitude',90,'radius',40,'rectbox','on','rotagnle',90);
% m_coast 低精度;m_gshhs_i 中精度;m_gshhs_f 高精度
m_coast('patch',[.5 .5 .5],'linestyle','none');
for ii=1:length(xx2)hold onD_contour1=[xx2(ii) xx2(ii)];%定义等值线插值范围[c,hs]=m_contour(lon,lat,depth,D_contour1,'color',depthmap(3*ii,:),'linewidth',0.5);
end
m_grid('box','on','xtick',6,'tickdir','in','ytick',4,'yticklabel',[],'fontsize',siz-10,'fontname','Times New Roman');
hold on
x1=[205:240];y1=68*ones(1,length(x1));y2=[68:1:77];x2=240*ones(1,length(y2));
y3=77*ones(1,length(x1));x3=205*ones(1,length(y2));
m_plot(x1,y1,'linewidth',2,'color','k');
m_plot(x2,y2,'linewidth',2,'color','k');
m_plot(x1,y3,'linewidth',2,'color','k');
m_plot(x3,y2,'linewidth',2,'color','k');
hold on
m_text(140,60,'(a)','color','k','fontname','Times New Roman','fontweight','bold','fontsize',siz-5);
%  波弗特海
hold on
% axes('position',[x_0+d_x*px(1), y_0+d_y*py(1), len, width]);
axes('position',[0.2713 0.5444 0.6737 0.3975]);
m_proj('lambert','lon',[205 240],'lat',[68 77]);
shading flat
hold on
x1=[210:235];y1=68*ones(1,length(x1));y2=[68:1:75];x2=235*ones(1,length(y2));
y3=75*ones(1,length(x1));x3=210*ones(1,length(y2));
m_plot(x2,y2,'linewidth',2,'color','r');
m_plot(x1,y3,'linewidth',2,'color','r');
m_plot(x3,y2,'linewidth',2,'color','r');
hold on
m_gshhs_f('patch',[.6 .6 .6]);
m_grid('box','fancy','xtick',[210 235],'tickdir','in',...'ytick',[71 75],'yaxislocation','right',...'fontname','Times New Roman','fontsize',siz-10,'fontweight','bold','linestyle','none')
% 等深线
hold on
for ii=1:length(xx2)hold onD_contour1=[xx2(ii) xx2(ii)];%定义等值线插值范围[c,hs]=m_contour(lon,lat,depth,D_contour1,'color',depthmap(3*ii,:),'linewidth',0.5);clabel(c,hs,'rotation',0,'fontname','Times New Roman','Labelspacing',400,...'fontweight','bold','FontSize',siz-15,'color',depthmap(3*ii,:));%画等值线上的数值同上
end
hh1=annotation('arrow',[0.2025 0.4150],[0.7135 0.9396],'linewidth',lind1-1);
hh2=annotation('arrow',[0.1700 0.2875],[0.6667 0.5854],'linewidth',lind1-1);
hold on
colormap(oceandeep_ws);
caxis([C1 C2]);
hold on
m_text(207,69,'(b)','color','k','fontname','Times New Roman','fontweight','bold','fontsize',siz-5);
m_text(215,72.5,'\it波弗特海','color','k','fontname','宋体','fontweight','bold','fontsize',siz-5);
m_text(210,69,'\it阿拉斯加','color','k','fontname','宋体','fontweight','bold','fontsize',siz-5);
m_text(230,69,'\it加拿大','color','k','fontname','宋体','fontweight','bold','fontsize',siz-5);
m_text(235.8,73,'\it班克','color','k','fontname','宋体','fontweight','bold','fontsize',siz-10);
m_text(235.8,72.5,'\it斯岛','color','k','fontname','宋体','fontweight','bold','fontsize',siz-10);
m_text(235.8,70.8,'\it阿蒙','color','k','fontname','宋体','fontweight','bold','fontsize',siz-10);
m_text(235.8,70.4,'\it森湾','color','k','fontname','宋体','fontweight','bold','fontsize',siz-10);
m_text(210,75.5,'\it加拿大海盆','color','k','fontname','宋体','fontweight','bold','fontsize',siz-5);% export_fig(['.\map\','Figure1.png'],'-r200')
% export_fig(['.\map\','Figure1.tif'],'-r200')
% close all

结果显示

在这里插入图片描述

相关文章:

Matlab地理信息绘图—研究区域绘制

文章目录 m_map工具箱Matlab绘制研究区域结果显示 m_map工具箱 m_map是 MATLAB 中用于制作地图和地理数据可视化的工具包。这个工具包提供了一组函数和工具&#xff0c;使得用户能够在 MATLAB 中轻松创建地图&#xff0c;并在地图上显示各种地理和气象数据。以下是 m_map 工具包…...

[CSAWQual 2019]Web_Unagi - 文件上传+XXE注入(XML编码绕过)

[CSAWQual 2019]Web_Unagi 1 解题流程1.1 分析1.2 解题 2 思考总结 1 解题流程 这篇博客讲了xml进行编码转换绕过的原理&#xff1a;https://www.shawroot.cc/156.html 1.1 分析 页面可以上传&#xff0c;上传一句话php失败&#xff0c;点击示例发现是xml格式&#xff0c;那…...

ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)的问题解决

winR打开窗口输入 services.msc 停止mysql 找到data文件&#xff0c;清空其中全部文件。没有data文件&#xff0c;手动创建 ​ 输入 mysqld --remove mysql 移除服务&#xff1b; 注册服务&#xff0c;mysqld -install&#xff1b; 并开始初始化&#xff0c;mysqld --initi…...

什么是函数库和动态链接库?

函数库和动态链接库&#xff08;也称为共享库&#xff09;是在软件开发中常见的两种代码重用技术&#xff0c;它们有助于组织、共享和管理代码。在本文中&#xff0c;我们将详细解释函数库和动态链接库的概念、用途以及它们的工作原理。 ## 什么是函数库&#xff1f; 函数库是…...

POM配置

dependencies 所有声明在dependencies里的依赖都会自动引入&#xff0c;并默认被所有的子项目继承 dependencyManagement 只是声明依赖&#xff0c;并不会自动引入&#xff0c;因此子项目需要显示声明依赖。在子项目中声明了依赖项&#xff0c;且没有指定具体版本&#x…...

微电网单台并网逆变器PQ控制matlab仿真模型

微❤关注“电气仔推送”获得资料&#xff08;专享优惠&#xff09; 微电网运行在并网模式下且公共电网供应正常时&#xff0c;因为公共电网给定了电 压和频率的参考值&#xff0c;所有的逆变器可以使用PQ控制方式。 当系统频率为额定频率f0时&#xff0c;系统稳定在A点&#x…...

计算机毕业设计选什么题目好?springboot 旅游网站

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…...

Android Fragment中使用Arouter跳转到Activity后返回Fragment不回调onActivityResult

Fragment中通过路由跳转到Activity 跳转传递参数 通过Arouter跳转 Postcard postcard ARouter.getInstance().build(RouterConstant.ACTION_TRANSMANAGERACTIVITY1);Bundle bundle new Bundle();bundle.putInt("code", 404);postcard.with(bundle); //设置bundlef…...

hive add columns 后查询不到新字段数据的问题

分区表add columns 查询不到新增字段数据的问题&#xff1b; 5.1元数据管理 &#xff08;1&#xff09;基本架构 Hive的2个重要组件&#xff1a;hiveService2 和metastore,一个负责转成MR进行执行&#xff0c;一个负责元数据服务管理 beeline-->hiveService2/spar…...

【linux】权限相关问题

【linux】权限相关问题 一.用户的分类sudo 二.文件执行的权限i. 文件的分类ii.人的分类三.修改创建文件的权限chmod更改文件创造的默认权限(umask) 三.删除&#xff08;粘滞位&#xff09; 一.用户的分类 在我们使用linux的时候&#xff0c;有用户类型的区分&#xff0c;不同用…...

“.NET视频总结:认识框架的结构和组件,掌握开发工具的奥妙“一

目录 第一单元&#xff1a;二十一世纪程序执行 背景: 总结&#xff1a; 第二单元:对象导向与类别设计 背景: 总结&#xff1a; 第三单元&#xff1a;使用类别与基底类别库 总结: 第四单元:Windows开发程序 背景: 总结: 第五单元:防护式程序设计 背景: 总结: 第六…...

02-RocketMQ开发模型

目录汇总&#xff1a;RocketMQ从入门到精通汇总 上一篇&#xff1a;01-RocketMQ整体理解与快速实战 上一部分&#xff0c;我们可以搭建RocketMQ集群&#xff0c;然后也可以用命令行往RocketMQ写入消息并进行消费了。这一部分我们就来看怎么在项目中用上RocketMQ。 一、RocketMQ…...

第83步 时间序列建模实战:Catboost回归建模

基于WIN10的64位系统演示 一、写在前面 这一期&#xff0c;我们介绍Catboost回归。 同样&#xff0c;这里使用这个数据&#xff1a; 《PLoS One》2015年一篇题目为《Comparison of Two Hybrid Models for Forecasting the Incidence of Hemorrhagic Fever with Renal Syndr…...

开源任务调度框架

本文主要介绍一下任务调度框架Flowjob的整体结构&#xff0c;以及整体的心路历程。 功能介绍 flowjob主要用于搭建统一的任务调度平台&#xff0c;方便各个业务方进行接入使用。 项目在设计的时候&#xff0c;考虑了扩展性、稳定性、伸缩性等相关问题&#xff0c;可以作为公司…...

Android Native 开发 要点记录

Android Studio 中写 C 代码 android studio创建C项目_android studio native c-CSDN博客 项目配置参考 【CMake】CMakeLists.txt的超傻瓜手把手教程&#xff08;附实例源码&#xff09;_【cmake】cmakelists.txt的超傻瓜手把手教程(附实例源码)-CSDN博客 CMakeLists.txt 讲解…...

数据库中查询所有表信息,查询所有字段信息

MYSQL中 所有表信息 information_schema.tables表 SELECT * FROM information_schema.tables -- TABLE_NAME 表名 -- TABLE_COMMENT 表中文名所有字段信息 information_schema.COLUMNS表 SELECT * FROM information_schema.tables -- TABLE_SCHEMA 数据库名 -- COLUMN…...

改进智能优化算法常用指标一键导出为EXCEL,最优值,平均值,标准差,最差值,中位数,秩和检验,箱线图...

声明&#xff1a;对于作者的原创代码&#xff0c;禁止转售倒卖&#xff0c;违者必究&#xff01; 为了突出改进智能优化算法的效果&#xff0c;常常会将改进的智能算法与其他算法进行对比。 在一些期刊论文中&#xff0c;经常会看到一个超级大的表格&#xff0c;统计着每个算法…...

在asp.net中,实现类似安卓界面toast的方法(附更多弹窗样式)

目录 一、背景 二、操作方法 2.1修改前 2.2修改后 三、总结 附&#xff1a;参考文章&#xff1a; 一、背景 最近在以前的asp.net网页中&#xff0c;每次点击确定都弹窗&#xff0c;然后还要弹窗点击确认&#xff0c;太麻烦了&#xff0c;这次想升级一下&#xff0c;实现…...

一站式解决方案:Qt 跨平台开发灵活可靠

一站式解决方案&#xff1a;Qt 跨平台开发灵活可靠 Qt 是一种跨平台开发工具&#xff0c;为开发者提供了一站式解决方案。无论您的项目目标是 Windows、Linux、macOS、嵌入式系统还是移动平台&#xff0c;Qt 都能胜任。这种跨平台的特性不仅节省开支&#xff0c;还推动了战略的…...

将cpu版本的pytorch换成gpu版本

1.首先激活虚拟环境 winRcmd 打开dos命令窗口 查看虚拟环境列表 conda env list 激活虚拟环境 2.将原来的pytorch_cpu版本换成gpu版本 注意&#xff1a;安装gpu版本的pytorch时并不需要先卸载原来的cpu版本pytorch,安装时会自己替换的 打开pytorch官网查看以前版本 Previo…...

Appium+python自动化(十六)- ADB命令

简介 Android 调试桥(adb)是多种用途的工具&#xff0c;该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具&#xff0c;其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利&#xff0c;如安装和调试…...

跨链模式:多链互操作架构与性能扩展方案

跨链模式&#xff1a;多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈&#xff1a;模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展&#xff08;H2Cross架构&#xff09;&#xff1a; 适配层&#xf…...

Linux --进程控制

本文从以下五个方面来初步认识进程控制&#xff1a; 目录 进程创建 进程终止 进程等待 进程替换 模拟实现一个微型shell 进程创建 在Linux系统中我们可以在一个进程使用系统调用fork()来创建子进程&#xff0c;创建出来的进程就是子进程&#xff0c;原来的进程为父进程。…...

初学 pytest 记录

安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...

mac 安装homebrew (nvm 及git)

mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用&#xff1a; 方法一&#xff1a;使用 Homebrew 安装 Git&#xff08;推荐&#xff09; 步骤如下&#xff1a;打开终端&#xff08;Terminal.app&#xff09; 1.安装 Homebrew…...

并发编程 - go版

1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程&#xff0c;系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...

群晖NAS如何在虚拟机创建飞牛NAS

套件中心下载安装Virtual Machine Manager 创建虚拟机 配置虚拟机 飞牛官网下载 https://iso.liveupdate.fnnas.com/x86_64/trim/fnos-0.9.2-863.iso 群晖NAS如何在虚拟机创建飞牛NAS - 个人信息分享...

pikachu靶场通关笔记19 SQL注入02-字符型注入(GET)

目录 一、SQL注入 二、字符型SQL注入 三、字符型注入与数字型注入 四、源码分析 五、渗透实战 1、渗透准备 2、SQL注入探测 &#xff08;1&#xff09;输入单引号 &#xff08;2&#xff09;万能注入语句 3、获取回显列orderby 4、获取数据库名database 5、获取表名…...

libfmt: 现代C++的格式化工具库介绍与酷炫功能

libfmt: 现代C的格式化工具库介绍与酷炫功能 libfmt 是一个开源的C格式化库&#xff0c;提供了高效、安全的文本格式化功能&#xff0c;是C20中引入的std::format的基础实现。它比传统的printf和iostream更安全、更灵活、性能更好。 基本介绍 主要特点 类型安全&#xff1a…...

MFE(微前端) Module Federation:Webpack.config.js文件中每个属性的含义解释

以Module Federation 插件详为例&#xff0c;Webpack.config.js它可能的配置和含义如下&#xff1a; 前言 Module Federation 的Webpack.config.js核心配置包括&#xff1a; name filename&#xff08;定义应用标识&#xff09; remotes&#xff08;引用远程模块&#xff0…...