之前我讲述了matlab中如何对散点进行分级显示matlab中对散点进行分级显示 - 哔哩哔哩 (bilibili.com)。现在我来介绍如何在gmt5中绘制散点图。
此处用到的函数模块为
gmt psxy -R%R% -J%J% -O -K point_label.txt -Sc0.15c -W0.5p,red -Cpoint.cpt -X0c -Y0c >>%ps%
其中,使用-G选项可以为符号填充单一颜色。如果要要符号颜色根据某个数值不同而变化,需要使用-C选项,-C后加cpt文件。其中的point_label.txt文件为三列属性,前两列为经纬度信息,而第三列为颜色对应的cpt值
2 3 0
5 6 1
8 2 2
下面为全部的代码:
gmtset PLOT_DEGREE_FORMAT ddd:mm:ssF
gmtset MAP_FRAME_TYPE plain
gmtset FRAM_WIDTH 0.04c
gmtset LABEL_FONT 2
gmtset LABEL_FONT_SIZE 8p
gmtset ANNOT_FONT_SIZE_PRIMARY 8p
gmtset MAP_FRAME_WIDTH 1p
gmtset MAP_ANNOT_OFFSET_PRIMARY 0.1c
set J=Cyl_stere/0/0/10c
set R=70/140/15/55
set PS="hydro.ps"
gmt makecpt -Cgray -T1000/10000/100 -I >2.cpt
gmt makecpt -Cpolar -T-100/100/25 >point.cpt
grdimage 1.grd -R%R% -J%J% -B10f10/10f10WENS -C2.cpt -Ichina.int -X2c -Y8c -K>%ps%
pscoast -R%R% -J%J% -Dh -N1 -A1000 -I1 -Wthinnest,black -X0c -Y0c -O -K >>%ps%
gmt psxy -R%R% -J%J% -O -K point_label.txt -Sc0.15c -W0.5p,red -Cpoint.cpt -X0c -Y0c >>%ps%
gmt psxy tianshan.txt -J%J% -R%R% -W0.5,red,- -X0c -Y0c -O -K >> %ps%
gmt psxy haihe.txt -J%J% -R%R% -W0.3,red,- -X0c -Y0c -O -K >> %ps%
echo 75 51 (a)| gmt pstext -J%J% -R%R% -F+f10p,5,black -X0c -Y0c -N -O -K>>%PS%
gmt psscale -Dx0.5c/-01.2c+jTC+w2.5c/0.2c+h+e --FONT_ANNOT_PRIMARY=8p,Helvetica,black -X4.5c -Y7c -O -Cpoint.cpt -Ba50>>%ps%
ps2raster %PS% -A -Tg -E512 作者:我是水怪的哥 https://www.bilibili.com/read/cv17949736 出处:bilibili