[Generic Mapping Tools (GMT)] 如何利用GMT绘制海洋潮汐中分潮同潮图

[复制链接]
海洋潮汐由诸多分潮组成,同潮图的绘制是潮汐研究的常见操作。这里介绍GMT绘制同潮图的主要步骤,并导出振幅和相位的等值线,转为kml格式,以便在google earth查看。
数据下载
使用AVISO网站的FES2014潮汐模型,各分潮为单独的nc文件。内容包含:
[C] 纯文本查看 复制代码
$ ls
2n2.nc  k2.nc  m3.nc  m8.nc    mm.nc   msf.nc  nu2.nc  q1.nc  s2.nc  ssa.nc
j1.nc   l2.nc  m4.nc  mf.nc    mn4.nc  mu2.nc  o1.nc   r2.nc  s4.nc  t2.nc
k1.nc   m2.nc  m6.nc  mks2.nc  ms4.nc  n2.nc   p1.nc   s1.nc  sa.nc
绘图代码
以山东周边海域M2和S2分潮为例绘图。
主要用到了grdcontour绘制等值线,在相位一行代码中,注意加入-Z+p,代码如下。
[C] 纯文本查看 复制代码
#!/usr/bin/env bash
ps=sd.ps
gmt pscoast -R115/125/34/42 -JM6i -Baf -Gburlywood  -Di -A10 -P -K --FORMAT_GEO_MAP=dddF > $ps
gmt grdimage "m2.nc?amplitude" -J -R -O -K -Q >> $ps
gmt pscoast -R -J -Gwhite  -Df -K -O >> $ps
gmt grdcontour -R "m2.nc?phase" -J -Gl123/37/120/34,122/39/125/39 -C20 -A40+f7p+a0+u@. -Z+p  -Wc0.25p,white -Wa0.75p,white -O -K  >> $ps
gmt grdcontour -R "m2.nc?amplitude" -J -GlBL/TR -C20 -A40+f7p+a0  -Wc0.25p,black -Wa0.75p,black -O -K  >> $ps
76df1caa6447089d28b0e168749e4665.png
M2
- i# U! w7 F. ?( R( e4 c% A7 S
36d9b0d31ff632991bf80026314bebf1.png
S2

' c7 i+ {  V; [0 L

3 H+ I  c, G& K4 K7 d( U

; q. K6 |& S, q9 W' i: W
数据导出
首先使用grdcontour的-D输出等值线文件,再使用gmt2kml制作kml文件,可进一步导入Google Earth。

* d; a; Q$ I6 i3 K6 h* C
[C] 纯文本查看 复制代码
# Output data
gmt grdcontour -R "m2.nc?phase" -J -C10 -A20+f7p+a0  -Wc0.25p,gray -Wa0.75p,gray -Dcontours_p.txt
gmt grdcontour -R "m2.nc?amplitude" -J -C10 -A20+f7p+a0  -Wc0.25p,red -Wa0.75p,red -Dcontours_a.txt
# Transform to kml
gmt 2kml contours_p.txt -Wthick,black -Fl > contours_p.kml
gmt 2kml contours_a.txt -Wthick,white -Fl > contours_a.kml
4c24424c76fa0a2cb0be416124916702.png
导入Google Earth
! F5 Z2 ]2 p: R  W. U
5 x9 d; R7 S% _# V; B
回复

举报 使用道具

相关帖子

全部回帖
暂无回帖,快来参与回复吧
懒得打字?点击右侧快捷回复 【吾爱海洋论坛发文有奖】
您需要登录后才可以回帖 登录 | 立即注册
秋成
活跃在2022-12-16
快速回复 返回顶部 返回列表