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

GMT绘图笔记:高亮特定的研究区域

问题:在利用GMTGMT绘制地图有时需要高亮研究区域内的地形起伏。就像下图(Yi et al., 2023):

通常我们需要提供研究区域内的边界文件,比如下列代码实现了如何将青藏高原区域高亮:

#!/usr/bin/env bash
# Chistrong Wen
# Uni stuttgart
# 2024-10-16
gmt begin csdn_heightlight_country png,pdf E600
# 绘制底图
gmt set FORMAT_GEO_MAP = ddd:mm:ssF
gmt set MAP_FRAME_TYPE = fancy
gmt set MAP_FRAME_PEN = 2p,black
gmt set MAP_TICK_PEN = 0.5p,black
gmt set FONT_ANNOT_PRIMARY = 9p,Helvetica,black
gmt set FONT_ANNOT_SECONDARY = 12p,Times-Roman,black
gmt set MAP_TICK_LENGTH = 1.5p
gmt set LABEL_FONT = 12p
gmt set FONT_LABEL = 12p
gmt set LABEL_FONT_SIZE = 12p
gmt set ANNOT_FONT_SIZE_PRIMARY = 12p
gmt set MAP_FRAME_WIDTH = 2p 
gmt set FRAM_WIDTH = 1c
gmt set MAP_ANNOT_OFFSET_PRIMARY = 0.15c
gmt set MAP_TICK_LENGTH_PRIMARY = 0.15c
gmt set FORMAT_ANNOT_PRIMARY = 2p,Times-Roman,black
gmt basemap -R60/120/15/50 -JM12c -BWSNE -Bxa10f10 -Bya10f10 -Xc -Y18c
gmt grdimage @earth_relief_01m -Cbest_dem1.cpt -I+m-0.8
# important code
gmt clip Tibet_boundary.txt
gmt grdimage @earth_relief_01m -Cbest_dem1.cpt -I+d
gmt clip -C
gmt plot Tibet_boundary.txt -W1p,red
# 
gmt coast -A50000 -W0.2p,black
gmt plot MajorRivers.gmt -W0.5p,blue
gmt set MAP_FRAME_PEN = 0.5p,black
gmt basemap -R-180/180/-90/90 -JG90/35/3c -Bf10a10 -Bg30 -BWESN -X0c -Y0c
gmt makecpt -Cdelta -T-2/2/0.05
gmt grdimage m11.grd -C
gmt coast -A50000 -W0.1p,black -Bg30 
gmt plot -W1p,red<<EOF
60 15
60 50
120 50
120 15
60 15
EOF
gmt end 

显示结果

而下列代码给出了如何将国家区域(印度)高亮显示:

#!/usr/bin/env bash
# Chistrong Wen
# Uni stuttgart
# 2024-10-16

gmt begin csdn_heightlight_country png,pdf E600

# 绘制底图

gmt set FORMAT_GEO_MAP = ddd:mm:ssF

gmt set MAP_FRAME_TYPE = fancy

gmt set MAP_FRAME_PEN = 2p,black

gmt set MAP_TICK_PEN = 0.5p,black

gmt set FONT_ANNOT_PRIMARY = 9p,Helvetica,black

gmt set FONT_ANNOT_SECONDARY = 12p,Times-Roman,black

gmt set MAP_TICK_LENGTH = 1.5p

gmt set LABEL_FONT = 12p

gmt set FONT_LABEL = 12p

gmt set LABEL_FONT_SIZE = 12p

gmt set ANNOT_FONT_SIZE_PRIMARY = 12p

gmt set MAP_FRAME_WIDTH = 2p

gmt set FRAM_WIDTH = 1c

gmt set MAP_ANNOT_OFFSET_PRIMARY = 0.15c

gmt set MAP_TICK_LENGTH_PRIMARY = 0.15c

gmt set FORMAT_ANNOT_PRIMARY = 2p,Times-Roman,black

gmt basemap -R60/120/15/50 -JM12c -BWSNE -Bxa10f10 -Bya10f10 -Xc -Y18c

gmt grdimage @earth_relief_01m -Cbest_dem1.cpt -I+m-0.5

# important code

gmt coast -EIndia+c

gmt grdimage @earth_relief_01m -Cbest_dem1.cpt -I+d

gmt clip -C

#

gmt coast -A50000 -W0.2p,black

gmt plot MajorRivers.gmt -W0.5p,blue

gmt set MAP_FRAME_PEN = 0.5p,black

gmt basemap -R-180/180/-90/90 -JG90/35/3c -Bf10a10 -Bg30 -BWESN -X0c -Y0c

gmt makecpt -Cdelta -T-2/2/0.05

gmt grdimage m11.grd -C

gmt coast -A50000 -W0.1p,black -Bg30

gmt plot -W1p,red<<EOF

60 15

60 50

120 50

120 15

60 15

EOF

gmt end

显示结果:

参考资料:

(53) Building subplots and using per-country shading — GMT 6.5.0 documentation

❤️欢迎点赞收藏❤️


http://www.kler.cn/news/362174.html

相关文章:

  • 数据字典是什么?和数据库、数据仓库有什么关系?
  • AI时代,谷歌会像当年的IBM一样陨落吗?
  • 5. AOP
  • Java 解决阿里云OSS服务器私有权限图片通过URL无法预览的问题
  • Spring Boot 3.3 【八】整合实现高可用 Redis 集群
  • 1.前提配置 关防火墙 关selinux
  • 【消息队列】RabbitMQ实现消费者组机制
  • 计算机毕业设计 基于Python的校园个人闲置物品换购平台的设计与实现 Python毕业设计 Python毕业设计选题【附源码+安装调试】
  • Java中的Vector,看着陌生?
  • API接口测试与优化:确保应用稳定性的必要步骤
  • Python 深度Q网络(DQN)算法详解与应用案例
  • 计算机网络考研笔记
  • 力扣题51~70
  • 动手学深度学习9.7. 序列到序列学习(seq2seq)-笔记练习(PyTorch)
  • 如何在verilog设计的磁盘阵列控制器中实现不同RAID级别(如RAID 0、RAID 1等)的切换?
  • 集成必看!Air780E开发板集成EC11旋转编码器的可靠解决方案~
  • 二、Linux 系统命令
  • c++ 对象作用域
  • 代码随想录算法训练营第十九天|Day19二叉树
  • Python包——numpy2
  • 6,000 个网站上的假 WordPress 插件提示用户安装恶意软件
  • 前端 js 处理一个数组 展示成层级下拉样式
  • 理解和解决TCP 网络编程中的粘包与拆包问题
  • 【C++】创建TCP服务端
  • DLNA—— 开启智能生活多媒体共享新时代
  • 线性可分支持向量机的原理推导 9-23拉格朗日乘子α的最大化问题 公式解析