利用matlab M_Map工具制作GPS测站分布图

一、安装M_Map

  1. 首先去官网(https://www.eoas.ubc.ca/~rich/map.html)下载M_Map文件,进入M_Map下载页面,如下图:

M_Map官网下载界面
2. 点击gzipped tar-file下载m_map1.4.tar.gz压缩文件(大约8.28MB)。
3. 解压下载得到的m_map1.4.tar.gz压缩文件,将M_Map文件复制到MATLAB安装目录下的toolbox中,例如复制到D:\Program Files\MATLAB\R2014a\toolbox中。然后在MATLAB软件主页上找到“设置路径”按钮,点击“设置路径”按钮,出现“设置路径”对话框(如下图),然后点击“添加文件夹”,找到某盘:\Program Files\MATLAB\R2014a\toolbox中m_map文件,然后选中m_map,点击“选择文件夹”。
在这里插入图片描述
M_Map文件路径被添加之后,点击“保存”,然后关闭即可。
4. 测试M_Map工具箱是否安装成功。在命令行窗口输入help m_map,如果出现M_Map版本、功能介绍等信息,就说明安装成功了。若显示m_map not found,说明没有安装成功,需要检查并重新配置。
在这里插入图片描述

二、测试m_map是否可用。

 打开MATLAB,新建一个脚本,然后输入如下代码:
close all, clear all, clc, dbstop if error

m_proj('ortho','lat',48','long',-123');
m_coast('patch','r');
m_grid('linest','-','xticklabels',[],'yticklabels',[]);

text(0,0,'M\_Map is installed successfully!','fontsize',25,'color','b',...
    'verticalalignment','middle','horizontalalignment','center');

保存、运行、得到下面图形:
在这里插入图片描述

三、绘制GPS测站分布图。

首先准备好GPS测站数据“station.txt“(经度、纬度和测站号)。按照以下代码,修改相应选项,将测站绘制在地图中:
station.txt中的数据格式:
119.75 49.22 50527
125.22 49.17 50557

close all, clear all, clc, dbstop if error
load('station.txt');
rLon=station(:,1);
rLat=station(:,2);
rsta=num2str(station(:,3));

r=size(rLon,1);
s=size(rLon,1);
 
m_proj('miller','lat',[0 60],'long',[60 150]);  %确定投影方式和绘图界线  矩形外框 
%m_proj('robinson','lat',[-90 90],'long',[-180 180]);  %确定投影方式和绘图界线  椭圆外框
m_coast('linewidth',1,'color','r');%画出海岸线,设置线宽和颜色
m_coast('patch',[0.7 1.0 0.7],'edgecolor','none'); %海岸线填充
m_grid('box','fancy','linestyle','-','gridcolor','w','backcolor',[0.2 0.65 1]);%添加格网
     
    for i=1:r
        if i<=s
            m_line(rLon(i),rLat(i),'Marker','o','LineWidth',0.75,'MarkerSize',8,'color','black');%绘制测站点,及其形状、大小和颜色
            hold on;
            m_line(rLon(i),rLat(i),'Marker','^','LineWidth',0.75,'color','r');
        end
        if i>s
            m_line(rLon(i),rLat(i),'Marker','v','LineWidth',20.755,'color','r');
        end
        m_text(rLon(i),rLat(i),rsta(i,:),'vertical','top');%将测站号标在图中     
    end
      
    set(gcf,'units','inches','position',[12 5 5 4]);%设置图像位置和大小 设置图像在scree中的位置[left bottom width height]

     title('GPS station map','fontsize',14,'fontweight','bold');
     
     set(gcf,'color','w');   % Need to do this otherwise 'print' turns the lakes black

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/SmartTiger_CSL/article/details/103128917