/usr/share/doc/gmt/examples/ex22/example_22.sh is in gmt-examples 5.2.1+dfsg-3build1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 | #!/bin/bash
# GMT EXAMPLE 22
# $Id: example_22.sh 15178 2015-11-06 10:45:03Z fwobbe $
#
# Purpose: Automatic map of last 7 days of world-wide seismicity
# GMT progs: gmtset, pscoast, psxy, pslegend
# Unix progs: cat, sed, awk, wget|curl
#
ps=example_22.ps
gmt gmtset FONT_ANNOT_PRIMARY 10p FONT_TITLE 18p FORMAT_GEO_MAP ddd:mm:ssF
# Get the data (-q quietly) from USGS using the wget (comment out in case
# your system does not have wget or curl)
#wget http://neic.usgs.gov/neis/gis/bulletin.asc -q -O neic_quakes.d
#curl http://neic.usgs.gov/neis/gis/bulletin.asc -s > neic_quakes.d
# Count the number of events (to be used in title later. one less due to header)
n=`cat neic_quakes.d | wc -l`
n=`expr $n - 1`
# Pull out the first and last timestamp to use in legend title
first=`sed -n 2p neic_quakes.d | $AWK -F, '{printf "%s %s\n", $1, $2}'`
last=`sed -n '$p' neic_quakes.d | $AWK -F, '{printf "%s %s\n", $1, $2}'`
# Assign a string that contains the current user @ the current computer node.
# Note that two @@ is needed to print a single @ in gmt pstext:
#set me = "$user@@`hostname`"
me="GMT guru @@ GMTbox"
# Create standard seismicity color table
cat > neis.cpt << END
0 red 100 red
100 green 300 green
300 blue 10000 blue
END
# Start plotting. First lay down map, then plot quakes with size = magintude/50":
gmt pscoast -Rg -JK180/9i -B45g30 -B+t"World-wide earthquake activity" -Gbrown -Slightblue \
-Dc -A1000 -K -Y2.75i > $ps
$AWK -F, '{ print $4, $3, $6, $5*0.02}' neic_quakes.d \
| gmt psxy -R -JK -O -K -Cneis.cpt -Sci -Wthin -h >> $ps
# Create legend input file for NEIS quake plot
cat > neis.legend << END
H 16 1 $n events during $first to $last
D 0 1p
N 3
V 0 1p
S 0.1i c 0.1i red 0.25p 0.2i Shallow depth (0-100 km)
S 0.1i c 0.1i green 0.25p 0.2i Intermediate depth (100-300 km)
S 0.1i c 0.1i blue 0.25p 0.2i Very deep (> 300 km)
D 0 1p
V 0 1p
N 7
V 0 1p
S 0.1i c 0.06i - 0.25p 0.3i M 3
S 0.1i c 0.08i - 0.25p 0.3i M 4
S 0.1i c 0.10i - 0.25p 0.3i M 5
S 0.1i c 0.12i - 0.25p 0.3i M 6
S 0.1i c 0.14i - 0.25p 0.3i M 7
S 0.1i c 0.16i - 0.25p 0.3i M 8
S 0.1i c 0.18i - 0.25p 0.3i M 9
D 0 1p
V 0 1p
N 1
END
# Put together a reasonable legend text, and add logo and user's name:
cat << END >> neis.legend
G 0.25l
P
T USGS/NEIS most recent earthquakes for the last seven days. The data were
T obtained automatically from the USGS Earthquake Hazards Program page at
T @_http://neic/usgs.gov @_. Interested users may also receive email alerts
T from the USGS.
T This script can be called daily to update the latest information.
G 0.4i
# Add USGS logo
I USGS.ras 1i RT
G -0.3i
L 12 6 LB $me
END
# OK, now we can actually run gmt pslegend. We center the legend below the map.
# Trial and error shows that 1.7i is a good legend height:
gmt pslegend -DJBC+o0/0.4i+w7i/1.7i -R -J -O -F+p+glightyellow neis.legend >> $ps
# Clean up after ourselves:
rm -f neis.* gmt.conf
|