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

更新一个GMT新增的投影类型:Spilhaus投影

Spilhaus投影是一种以海洋为主视角的投影,以南极洲为中心进行展开,将世界海洋呈现为一体,适合在海洋学研究领域进行展示洋流的绘图等。下面是一些常见的地图效果(Spilhaus World Ocean Map Projection With Sea Surface Temp)

最近发现从 GMT6 开始,GMT 支持使用 PROJ 库来实现坐标和基准面的转换。从 GMT6.6 和 PROJ 9.6.0 版本开始,GMT 实现了对Spilhaus投影的支持。下面一个实例展示了在gmt中绘制全球海平面的振幅的空间分布。

gmt begin aral_sea_lake1 png,pdf E600

% Edinburgh city, UK

% Chistrong Wen

% 2025-8-19 13:13

gmt set FORMAT_GEO_MAP ddd:mm:ssF

gmt set MAP_FRAME_TYPE plain

gmt set MAP_FRAME_PEN 1.2p,black

gmt set FONT_ANNOT_PRIMARY 13p,Helvetica,black

gmt set FONT_ANNOT_SECONDARY 12p,Times-Roman,black

gmt set MAP_TICK_PEN 0.5p,black

gmt set MAP_TICK_LENGTH_PRIMARY 0.3c

gmt set MAP_FRAME_WIDTH 0.5p

gmt set MAP_ANNOT_OFFSET_PRIMARY 0.15c

gmt set COLOR_NAN green

gmt xyz2grd grace_aviso_amp.txt -R0/360/-90/90 -I0.5 -Gm1.grd

gmt basemap -Rd -J+proj=spilhaus+width=10c+no_clip -Bwsne -Bxa30f30 -Bya30f30 -Xc -Yc

gmt makecpt -Cdeep -T0/6/0.1 -Z # 例子:根据数据范围调整

gmt grdimage m1.grd -Rg -J+proj=spilhaus+width=10c+no_clip -C -Q

gmt coast -Rg -Bg45 -J+proj=spilhaus+width=10c+no_clip -A10000 -Wthinnest --MAP_GRID_PEN_PRIMARY=0.5p,black,-.-

gmt end

结果图:

其实对应的陆地也有对应的一个投影:Airocean,目前在GMT中尚未实现,但是在ArcGIS中都可以实现。

参考资料:

-J+proj=spilhaus: Spilhaus World Ocean Map Projection — GMT 中文手册

Airocean — PROJ 9.6.2 documentation

Ocean Sciences with the Spilhaus Projection: A Seamless Ocean Map for Spatial Data Recognition | Scientific Data

http://www.dtcms.com/a/339893.html

相关文章:

  • 融智兴“RFID物流周转箱卡”荣获2025“IOTE 金奖”创新产品奖
  • 全0子数组的数目-子数组问题
  • 项目里程碑设定有哪些方法
  • 猫头虎AI分享|字节开源了一款具备长期记忆能力的多模态智能体:M3-Agent 下载、安装、配置、部署教程
  • Visual Studio 中文件属性(在解决方案资源管理器中选中文件,按 F4 或在右键菜单 -> 属性)
  • 【树莓派】【嵌入式】远程树莓派,解决ping不通问题
  • 第5.6节:awk字符串运算
  • python新工具-uv包管理工具
  • 编排之神--Kubernetes中的网络通信-Flannel插件及Calico插件演练
  • Android SystemServer 中 Service 的创建和启动方式
  • Milvus 安装和启动指南
  • 决策树学习(2)
  • almalinux9.6系统:k8s可选组件安装(1)
  • 数字ic后端设计从入门到精通14(含fusion compiler, tcl教学)半定制后端设计
  • 第三阶段数据库-2:数据库连接
  • [超表面论文快讯-200]PNAS-超表面辅助的多模态量子成像-南京大学祝世宁院士/新国立仇成伟院士团队
  • 警惕可变参数构造函数无限递归
  • Day13_【DataFrame数据组合join合并】【案例】
  • 让模型不再忽视少数类:MixUp、CutMix、Focal Loss三种技术解决数据不平衡问题
  • RabbitMQ:SpringAMQP Direct Exchange(直连型交换机)
  • RabbitMQ:SpringAMQP 入门案例
  • Flink on Native K8S安装部署
  • 3.Kotlin 集合 Set 所有方法
  • es9.0.1语义检索简单示例
  • 颠覆性进化:OpenAI正式发布GPT-5,AI大模型进入“超级智能”时代
  • InnoDB为什么使用B+树实现索引?
  • 神经网络拆解:用Excel模拟手写数字识别
  • Flume学习笔记
  • OR+DBLINK的关联SQL优化思路
  • Transformer中的编码器和解码器是什么?