繪製海岸線

GMT中使用 coast 模塊繪製海岸線。 coast 模塊,顧名思義是海岸線、湖岸線的意思。該模塊不僅可以繪製這些岸線,還可以繪製比例尺和行政邊界等。

這一節我們將通過繪製一張美國地圖來介紹 coast 模塊的基本用法。

繪製海岸線和湖岸線

下面的腳本用最簡單的命令繪製了一張美國地圖。其中 -R 選項設置了繪圖區域,-JM15c 設置投影方式和圖片尺寸, -Baf 設置底圖邊框屬性,這些在前一節都已經做了介紹。

coast 模塊的選項 -W0.5p,black 表示繪製岸線,並設置岸線爲 0.5p寬的黑色線條。

gmt begin coastline png,pdf
    gmt coast -R-130/-50/20/60 -JM15c -Baf -W0.5p,black
gmt end show
../_images/coastline-gmtplot-0.png

美國海岸線

上圖看上去有些複雜。這是因爲默認情況下 -W 選項會繪製所有水體與陸地的界限,包括海岸線、湖岸線、湖中島的邊界等。根據水體或陸地的不同,coast模塊將岸線分爲從1到4的四個級別,依次指海岸線、湖岸線、湖中島,以及湖中島內的湖邊界。

因而,我們可以在使用 -W 選項時指定要繪製哪一個等級的岸線。下面的腳本中,我們使用 -W1/0.5p,black 表示用 0.5p 寬的黑色線條繪製1級海岸線。

gmt begin coastline png,pdf
    gmt coast -R-130/-50/20/60 -JM15c -Baf -W1/0.5p,black
gmt end show
../_images/coastline-gmtplot-1.png

繪製海岸線

可以在一個命令中多次使用 -W 選項,分別用不同的線條繪製不同等級的岸線。這裏我們使用 -W1/0.5p,black 繪製0.5p黑色的海岸線,同時使用 -W2/1p,lightred 繪製1p寬的淺紅色湖岸線。

gmt begin coastline png,pdf
    gmt coast -R-130/-50/20/60 -JM15c -Baf -W1/0.5p,black -W2/1p,lightred
gmt end show
../_images/coastline-gmtplot-2.png

繪製海岸線和湖岸線

設置要繪製的對象的最小面積

上圖看上去依然有些亂。主要是因爲美國有大大小小的很多島嶼和湖泊,GMT默認會把這些島嶼和湖泊都畫出來。如果能夠只繪製比較大的島嶼或湖泊就好了,我們可以通過 -A 選項設置要繪製的對象的最小面積(單位爲平方千米)。

gmt begin coastline png,pdf
    gmt coast -R-130/-50/20/60 -JM15c -Baf -W1/0.5p,black -W2/1p,lightred -A5000
gmt end show
../_images/coastline-gmtplot-3.png

設置要繪製的對象的最小面積

這裏我們使用 -A5000 表示只繪製面積大於5000平方千米的湖泊或島嶼。這樣子得到的圖看上去更加乾淨簡潔了。

填充陸地與水體

上面介紹瞭如何使用 -W 繪製海岸線和湖岸線。我們還可以不繪製岸線,而是爲陸地和水體設置不同的填充色。

gmt begin coastline png,pdf
    gmt coast -R-130/-50/20/60 -JM15c -Baf -A5000 -Gred -Slightblue -Clightred
gmt end show
../_images/coastline-gmtplot-4.png

填充顏色

其中,-G 設置了陸地區域的填充色,-S 設置水體的顏色, -C 則設置湖泊的顏色(若不指定 -C,則湖泊顏色由 -S 控制)。

當然,你也可以同時使用 -W 選項和 -G 選項,即繪製岸線並填充顏色。

繪製國界/州界

使用 -N 選項可以繪製國界/州界等行政邊界。-N1 表示繪製國界線, -N2 表示繪製州界/省界線(目前只有美洲各國以及澳大利亞的國界的數據)。

gmt begin coastline png,pdf
    gmt coast -R-130/-50/20/60 -JM15c -Baf -A5000 -Gred -Slightblue -Clightred -N1/1p -N2/0.25p
gmt end show
../_images/coastline-gmtplot-5.png

繪製國界與州界

除了 -N 選項之外,-E 選項也可以用於繪製州界、國界和省界,在 DCW: 世界數字圖表 一節會詳細介紹。本入門教程中暫時略過。

添加比例尺

最後,我們還需要爲地圖添加比例尺。爲了繪製比例尺,我們需要提供如下參數:

  • 要繪製哪個緯度的比例尺
  • 比例尺在圖中的位置
  • 比例尺的長度

在下面的例子中,我們使用了 -Lg-60/25+c25+w1000k+f+u 增加比例尺,其中:

  • +w1000k 表示比例尺長度爲1000千米
  • +c25 表示繪製緯度爲北緯25°處的比例尺
  • g-60/25 則表示將比例尺畫在北緯25°西經60°處
  • +f 表示比例尺的風格爲圖中所示黑白相間的鐵軌形式
  • +u 表示顯示比例尺對應的單位
gmt begin coastline png,pdf
gmt coast -R-130/-50/20/60 -JM15c -Baf -A5000 -Gred -Slightblue -Clightred -Lg-60/25+c25+w1000k+f+u
gmt end show
../_images/coastline-gmtplot-6.png

添加比例尺