利用matlab绘制大型研究区

1、序言

很多时候,我们需要标准自己的研究范围,方便别人对你的研究有一个初步的了解。这是我们需要自己画出研究的范围。这里我们采用matlab画研究区

2、数据准备

(1)、自己安装matlab,可以参考网上的下载和安装教程;
(2)、自己下载matlab地学常用的插件包m_map;
(3)地形适量数据文件;
(4)、自己先设定一个基本的研究范围,后面就可以调整

3、使用的方法

在matlab中编写程序,利用地形文件,设置阈值,实现水路分离,本文以大研究区为例
(1)参考程序
addpath m_map
filename=‘E:\其他数据\水深\ETOPO1_Ice_g_gmt4.grd’;
ncdisp(filename);
%在这里设置画图区域的经纬度
lat_min=0; lat_max=42;
lon_min=103; lon_max=136;
%设置画图区域的起始水深线
depth_start=0;
%度数转换成像元个数来计算(注意这个为左下角坐标系)
reslu=10800/180;
ilat_min=(90+lat_min)*reslu;
ilat_max=(90+lat_max)*reslu;
lat_step=ilat_max-ilat_min;
ilon_min=(180+lon_min)*reslu;
ilon_max=(180+lon_max)*reslu;
lon_step=ilon_max-ilon_min;
lat_depth=ncread(filename,‘y’,ilat_min,lat_step);
lon_depth=ncread(filename,‘x’,ilon_min,lon_step);
depth=ncread(filename,‘z’,[ilon_min ilat_min],[lon_step lat_step]);
depth(depth>depth_start)=NaN;

figure
m_proj(‘miller’,‘lon_depth’,[lon_min lon_max],‘lat_depth’,[lat_min lat_max]); %设置输出图像的坐标系
depth_h=m_pcolor(lon_depth,lat_depth,depth’); %画一个pcolor图像
% caxis([depth_min,depth_max]);
shading flat;
m_gshhs_h(‘patch’,[0.25 0.25 0.25],‘edgecolor’,‘k’); %用于生成高分辨率的海岸线数据
m_grid(‘box’,‘fancy’,‘tickdir’,‘out’); %设置图像成经纬块
colormap(white); %这个主要用于设置colorbar颜色条的变化
m_text(109’,34’,‘China’,‘fontsize’,18);
hold on;
saveas(depth_h,[‘E:\程序\研究区域’,a,’.png’])
(2)结果图如下
在这里插入图片描述

4、讨论及结论

matlab具有很强大的功能,特别是在数据的运算方面。这里小编利用自己曾经编写的程序为例展示了如何利用matlab画研究区,写的程序比较简单,很多方面的细节需要改进。希望对刚开始接触的人有帮助。

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

good_learn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值