11 - matlab m_map地學繪圖工具基礎函數 - 繪制航跡、橢圓、風向玫瑰圖和特定的圓形區域的有關函數及其用法

11 - matlab m_map地學繪圖工具基礎函數 - 繪制航跡、橢圓、風向玫瑰圖和特定的圓形區域的有關函數及其用法

  • 0. 引言
  • 1. 關于m_track
  • 2. 關于m_range_ring
  • 3. 關于m_ellipse
  • 4. 關于m_windrose
  • 5. 結語


0. 引言

?? 本篇介紹下m_map繪制航跡圖函數(m_track)、繪制特定半徑的范圍的函數(m_range_ring)、繪制橢圓的函數(m_ellipse)、繪制風玫瑰圖的函數(m_windrose)。

1. 關于m_track

??m_track函數用于在地圖上繪制航跡。這個函數可以用來可視化航行路徑或飛行路徑等。航跡圖上可以標注時間日期

??m_track 函數一般形式為:

m_track(lon,lat,varargin)

其中:

  • lon 和 lat:航跡點的經度和緯度坐標。
  • varargin:可選參數,控制航跡線的刻度樣式、日期和時間標簽樣式。主要包括下面內容:
    ??ticks 刻度間隔以分鐘為單位,默認為60分;
    ??times 時間標簽間隔以分鐘為單位,默認為240分鐘;
    ??dates 日期標簽間隔以分鐘為單位,默認為720分鐘;
    ??timef[ormat] 時間在刻度線上的顯示樣式;
    ??datef[ormat] 日期在刻度線上的顯示樣式;
    ??color 航跡線和標簽顏色設置,默認為黑色;
    ??linew[idth] 航跡線線寬設置;
    ??lines[tyle] 航跡線線形設置;
    ??fonts[ize] 標簽字體尺寸設置;
    ??fontn[ame] 標簽字體設置;
    ??clip 是否進行裁剪(on/off)
    ??orien[t] 標簽方向(true/upright)

示例(利用官網示例):

m_proj('UTM','long',[-72 -68],'lat',[40 44]);
m_gshhs_i('color','k');
m_grid('box','fancy','tickdir','in');
m_ruler(1.2,[.5 .8]);% fake up a trackline
lons=[-71:.1:-67];
lats=60*cos((lons+115)*pi/180);
dates=datenum(1997,10,23,15,1:41,zeros(1,41));m_track(lons,lats,dates,'ticks',0,'times',4,'dates',8,...'clip','off','color','r','orient','upright');m_northarrow(-68.5,43.4,.4,'type',2);

??下圖紅色部分即為m_track命令加載的內容,可以使用上面提到的屬性進行繪圖樣式的調整;


2. 關于m_range_ring

??m_range_ring 函數用于在地圖上繪制指定半徑的范圍圈。這在航海、航空和地理信息系統中很常見,用于表示某一點周圍的特定半徑范圍。

??m_range_ring 函數的基本語法如下:

m_range_ring(lon, lat, radius, varargin)

??其中,lon 和 lat 是范圍的中心點投影坐標;radius 是范圍的半徑,以與地圖坐標系統相匹配的距離單位(例如公里或海里)表示;varargin 可選參數,用于指定范圍線條的樣式、顏色等信息,不做展開,可以參照其他繪圖命令;

官網示例

%% 官網示例
close all;clc;clear;
m_proj('hammer','clong',170); % 定義投影
m_grid('xtick',[],'ytick',[],'linestyle','-'); % 不顯示坐標軸
m_coast('patch','g'); % 陸地填充
m_line(100.5,13.5,'marker','square','color','r'); % 在當前坐標處繪制了一個紅色矩形
m_range_ring(100.5,13.5,[1000:1000:15000],'color','b','linewi',2); % 以當前坐標為原點,半徑間隔為1000繪制15個藍色范圍圈
xlabel('1000km range rings from Bangkok'); % 添加圖示

自建示例

%% 自建
close all;clc;clear;
m_proj('mercator', 'lon', [69.5 105.5], 'lat', [24.5 40.5]);
%
m_line(80.5,32.5,'marker','square','color','r'); % 在當前坐標處繪制了一個紅色矩形
m_range_ring(80.5,32.5,[500],'color','b','linewi',2); % 以當前坐標為遠點,向量值為半徑繪制15個藍色范圍圈
%
m_gshhs('ic','color',[.5 .5 .5]) % 中等分辨率海岸線
m_gshhs('ir2','color','b')   % 中等分辨率河流
m_grid('box','fancy','tickdir','in','gridlines','no','fontsize',12)

3. 關于m_ellipse

??m_ellipse 函數用于在地圖上繪制橢圓。

??m_ellipse函數的一般形式為:

[h,varargout]=m_ellipse(long,lat,fmaj,fmin,finc,fpha,scale,type ,varargin)

??其中,long和lat為繪制橢圓的中心點經緯坐標;fmaj和fmin 為橢圓的半長軸/半短軸長度;finc和fpha為橢圓傾角、相位角,以度為單位;scale為比例因子;type 為類型用于設置線或填充;varargin為可選參數,用于控制繪圖邊緣的顏色、寬度等屬性,這里不做展示。

??m_ellipse函數示例如下:

clf;
m_proj('lambert','long',[-130 -121.5],'lat',[47 51.5],'rectbox','on');
m_grid('linewi',2,'linest','none','tickdir','out','fontsize',12);[H]=m_ellipse(-125,49,20,10,30,30,200,'line');
[H]=m_ellipse(-125,49,30,10,80,90,200,'line','color','r','LineWidth',3,'LineStyle','--');

4. 關于m_windrose

??m_windrose函數用于繪制風向玫瑰圖。風向玫瑰圖通常用來顯示風的方向和頻率分布,適合氣象學和地理學的應用。

??m_windrose函數一般形式為:

N=m_windrose(long,lat,thet,spd,varargin)

??其中,long,lat為繪制風向玫瑰圖的投影坐標;thet為風向數據;spd為風速數據;varargin為可選參數,主要包括以下內容:

??nspeeds: 速度劃分區間數量,默認值為[0:4:24];
??ndirs : 方向劃分區間數量,默認是36個;
??size : 風向玫瑰圖尺寸占背景圖的長寬比例;
??nrings : 背景環數,標量或向量(默認值[2 4 6])。如果是標量,則設置為間隔2%的環數;
??labelrings: logical or angle;
??barstyle : 默認顏色和紋路;
??alpha : 風向玫瑰圖的透明度(0到1,默認為0.4);

??m_windrose函數繪圖示例,示例數據可從資源中獲取:

clc;clear;% 加載風速和風向
[data]=xlsread('wind data.xlsx');
clf;set(gcf,'color','w'); 
m_proj('lambert','lon',[77 82],'lat',[27 32] )
levels=[0:4:24];  % Binning for speedsm_windrose({80},{30},{data(:,1)},{data(:,2)},...'size',.17,'nspeed',levels,'alpha',1);colormap(m_colmap('jet'));
caxis([0 24]);
m_gridaxb=m_contfbar(.8,[.6 .9],levels,levels);
axb.YLabel.String='Wind speeds m/s';
axb.YTick=levels;

5. 結語

?? 本篇介紹了m_map中繪制航跡圖的函數(m_track)、繪制特定半徑范圍的函數(m_range_ring)、繪制橢圓的函數(m_ellipse)、繪制風玫瑰圖的函數(m_windrose)通過示例展示了各函數的基本用法,對于繪制常見地學圖已經夠用了,后面若發現還有其它相關函數再進行補充希望對繪圖的你有所幫助






😜
😜😜
😜😜😜😜

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/39896.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/39896.shtml
英文地址,請注明出處:http://en.pswp.cn/web/39896.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

python 發布應用程序包

文章目錄 發布python包toml配置文件構建發布python包 官方文檔參考 將自己的python項目發布成源碼包或者wheel二進制包,供其他開發者使用。 方式: 使用py工具; distutils,該工具的使用已過時;setuptools,常用方式;wheel,在setuptools的基礎上添加了 bdist_wheel, …

【BUUCTF-PWN】4-ciscn_2019_n_1

參考:BUUCTF-ciscn_2019_n_1 - 紙鳶asahi - 博客園 (cnblogs.com) buuctf 刷題記錄_PWN ciscn_2019_n_1 - MuRKuo - 博客園 (cnblogs.com) 從題海中入門(四)ciscn_2019_n_1 - FreeBuf網絡安全行業門戶 ciscn_2019_n_1 ——兩種解法_0x4134800…

Generative Modeling by Estimating Gradients of the Data Distribution

Generative Modeling by Estimating Gradients of the Data Distribution 本文介紹宋飏提出的帶噪聲擾動的基于得分的生成模型。首先介紹基本的基于得分的生成模型的訓練方法(得分匹配)和采樣方法(朗之萬動力學)。然后基于流形假…

快速了解-注解Annotation

描述 Annotation定義:注解是Java語言從JDK 5.0版本開始引入的一種技術。 Annotation作用: 注解不是程序本身,但可以對程序作出解釋。這與注釋(comment)類似,但注解可以被其他程序(如編譯器&…

react apollo hooks

1、創建ApolloProvider來包裝整個程序 <ApolloProvider client{client}><App /> <ApolloProvider> 2、useQuery查詢 工作方式usequery將返回一個數組 const {要返回的對象} useQuery(傳入參數) 實例 const query gqlquery name {whatever {field}} e…

信號量——Linux并發之魂

歡迎來到 破曉的歷程的 博客 引言 今天&#xff0c;我們繼續學習Linux線程本分&#xff0c;在Linux條件變量中&#xff0c;我們對條件變量的做了詳細的說明&#xff0c;今天我們要利用條件變量來引出我們的另一個話題——信號量內容的學習。 1.復習條件變量 在上一期博客中&…

天潤融通分析AI技術助力客戶服務,實現滿意度三倍增長

如今&#xff0c;客戶體驗越來越成為影響客戶決策的核心要素。 對于企業來講&#xff0c;客戶在不同觸點的每一次互動體驗&#xff0c;都成為塑造品牌聲譽的“Aha時刻”。但同時&#xff0c;隨著社會的發展的加速&#xff0c;客戶的需求也在日新月異&#xff0c;給企業帶來挑戰…

刷代碼隨想錄有感(125):動態規劃——最長公共子序列

題干&#xff1a; 代碼&#xff1a; class Solution { public:int longestCommonSubsequence(string text1, string text2) {vector<vector<int>>dp(text1.size() 1, vector<int>(text2.size() 1, 0));for(int i 1; i < text1.size(); i){for(int j …

【SQL】已解決:SQL錯誤(15048): 數據兼容級別有效值為100、110或120

文章目錄 一、分析問題背景二、可能出錯的原因三、錯誤代碼示例四、正確代碼示例五、注意事項 已解決SQL錯誤(15048): 數據兼容級別有效值為100、110或120 在數據庫開發和管理過程中&#xff0c;我們經常會遇到各種各樣的錯誤。本文將詳細分析SQL錯誤(15048)的背景、可能原因、…

langchain框架輕松實現本地RAG

一 什么是RAG? RAG&#xff08;Retrieval-Augmented Generation&#xff09;是一種結合了檢索和生成模型的方法&#xff0c;主要用于解決序列到序列的任務&#xff0c;如問答、對話系統、文本摘要等。它的核心思想是通過從大量文檔中檢索相關信息&#xff0c;然后利用這些信息…

vue3-openlayers 圖標閃爍、icon閃爍、marker閃爍

本篇介紹一下使用vue3-openlayers 圖標閃爍、icon閃爍、marker閃爍 1 需求 圖標閃爍、icon閃爍、marker閃爍 2 分析 圖標閃爍、icon閃爍、marker閃爍使用ol-animation-fade組件 3 實現 <template><ol-map:loadTilesWhileAnimating"true":loadTilesWh…

讀人工智能全傳03分治策略

1. 黃金年代 1.1. 圖靈在他發表的論文《計算機器與智能》中介紹了圖靈測試&#xff0c;為人工智能學科邁出第一步做出了重大貢獻 1.2. 美國在第二次世界大戰后幾十年里計算機技術發展的特色&#xff0c;也是美國在未來60年內確立人工智能領域國際領先地位的核心 1.3. 1955年…

lodash中flush的使用(debounce、throttle)

在項目的配置中&#xff0c;看到了一個請求&#xff0c;類似是這樣的 import { throttle } from lodash-es// 請求函數 async function someFetch(){const {data} await xxx.post()return data }// 節流函數 async function throttleFn(someFetch,1000)// 執行拿到數據函數 a…

leetcode--二叉樹中的最長交錯路徑

leetcode地址&#xff1a;二叉樹中的最長交錯路徑 給你一棵以 root 為根的二叉樹&#xff0c;二叉樹中的交錯路徑定義如下&#xff1a; 選擇二叉樹中 任意 節點和一個方向&#xff08;左或者右&#xff09;。 如果前進方向為右&#xff0c;那么移動到當前節點的的右子節點&…

大數據開發中的數據生命周期管理

上班越久&#xff0c;發現有些數據一直放在那里&#xff0c;根本沒有流動&#xff0c;完全沒有發揮價值&#xff0c;數據是有生命周期的&#xff0c;而且生命周期管理得好&#xff0c;工作就會更輕松。 目錄 引言數據創建示例代碼 數據存儲示例代碼 數據使用示例代碼 數據維護示…

JavaScript中閉包的理解

閉包&#xff08;Closure&#xff09;概念&#xff1a;一個函數對周圍狀態的引用捆綁在一起&#xff0c;內層函數中訪問到其外層函數的作用域。簡單來說;閉包內層函數引用外層函數的變量&#xff0c;如下圖&#xff1a; 外層在使用一個函數包裹住閉包是對變量的保護&#xff0c…

學習python常用的英語單詞,有音標,有音節劃分,適合英語基礎差的人來入門

if [?f] 如果 else [els] 否則 while [wa?l] 當...的時候 for [f?:r] “對于”或“遍歷”&#xff0c;適合于 break [brek] 中斷 continue [k?nt?nju:] 繼續 con ti nue [k?n t? nju:] pass [pɑ:s] 通過 height [ha?t] 高度 weight [we?t] 重量 keyword [ki:w…

sping-10

什么是 bean 裝配 在Java中&#xff0c;bean裝配是一種將對象&#xff08;也稱為bean&#xff09;與其他對象之間建立關聯關系的方法。這種裝配可以通過手動編寫代碼來實現&#xff0c;也可以使用依賴注入框架&#xff08;如Spring&#xff09;來自動完成。 在bean裝配中&…

【計算機視覺系列實戰教程 (實戰02)】:基于特征點匹配的圖像配準

這里寫目錄標題 1、特征點提取(1)GFTT算法提取特征點A.What&#xff08;什么是GFTT&#xff09;B.GFTT的優勢C.How&#xff08;如何使用GFTT算法提取圖像特征點&#xff09; (2)FAST算法提取特征點A.What&#xff08;什么是FAST角點&#xff09;B.FAST角點的強度值C.How&#x…

每日Attention學習8——Rectangular self-Calibration Attention

模塊出處 [ECCV 24] [link] [code] Context-Guided Spatial Feature Reconstruction for Efficient Semantic Segmentation 模塊名稱 Rectangular self-Calibration Attention (RCA) 模塊作用 空間注意力 模塊結構 模塊代碼 import torch import torch.nn as nn import tor…