物探论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1685|回复: 0

[GMT] 使用GMT绘制剖面图

[复制链接]
发表于 2013-2-23 10:22:32 | 显示全部楼层 |阅读模式
使用GMT绘制剖面图
下图为本文绘制的结果

1.jpg 2.jpg
GMT 中提供了一个名为grdtrack的剖面图绘制程序,可以绘制常见的如DEM或者其他三维数据的剖面图。
本例子首先给出了南极和北极envisat后向散射系数空间分布,从中可以看出橘红色表示海冰分布,浅蓝色海洋表示没有海冰分布的自由海洋。然后下面的几幅小图是选取的4个剖面图,分别是北极地区沿着0°和180°,北纬50°到82°的数据采样剖面图,南极地区南纬-82°到-50°之间,沿0°和180°的采样剖面图。剖面图对于数据分析有一定的帮助,可以形象的表示出数据的波动。海冰覆盖的区域具有较高的散射特性,可以很好的周围的海洋区别开来,因此利用雷达后向散射系数可以有效的识别海冰。
本例在cygwin下使用bash脚本执行GMT程序,直接在windows的cmd环境下,一些linux命令容易出错,如head和gawk。下面提供了绘制剖面图的主要代码,而绘制分布图的命令没有在这里提供,因为不是本文重点。
代码如下:
#!/bin/bash
gmtset ANOT_FONT_SIZE 12 LABEL_FONT_SIZE 12 ANOT_FONT 1 LABEL_FONT 1
#! 设置网格线的属性,为红色虚线
gmtset GRID_PEN_PRIMARY= 0.35p,255/0/0,2_1_0.25_1:0
ops=profile.ps
#! 生成采样所用的经纬度路线文件
awk 'BEGIN{for(i=-50;i>=-82;i=i-0.01)print 0,i}' > fortrack.dat
#! 沿着指定的路线生成了采样文件
grdtrack fortrack.dat -Gglobe_hz18_ku_seaice_bscat.nc  > track.dat
#! 形成闭合环,并为之填充颜色。
echo "0 -82 -10" >> track.dat
echo "0 -50 -10" >> track.dat
head -1 track.dat >> track.dat
awk '{print $2,$3}' track.dat | psxy -Glightblue -R-82/-50/-5/35 -JX15.6/4 -W8 -Ba5f1/a10f5g10:"Sigma0(db)":WS -K -Y-26> $ops
echo "-80 0 17 0 1 LM Lat.-Sigma0 profile along 0@+o@+W" | pstext -R -JX -K -O -N >> $ops
echo "-57 -20 20 0 1 LM hz18_ku_seaice_bscat_Cicle009" | pstext -R -JX -K -O -N >> $ops

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|物探论坛 ( 鄂ICP备12002012号 微信号:iwutan )

GMT+8, 2024-5-6 08:55 , Processed in 0.072909 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表