輕鬆畫地圖
過往學生在大學需要花上起碼一個學期,而且大學需要購買昂貴的軟件,學生才有機會學識利用電腦繪製地圖,後來即使有些免費地圖軟件,譬如QGIS和Geopandas in Google Colab (詳細可參考Yiu, 2021),但要學以致用仍是非常困難,令不少人望而卻步,不想嘗試。幸好隨著網絡數據的開放和人工智能編程的普及,現時已有工具可讓普羅大眾自製地圖,毋須購買軟件和數據,亦毋須花時間學習使用甚麼GIS (地理資訊系統),便可輕鬆畫地圖,效果媲美專業軟件。
本文試以Datawrapper為例,繪製兩類地圖,讓大家多些了解,亦可一起嘗試,看看是否簡單易用,也可分享您的心得,與網友教學相長:
Datawrapper 應用網頁可以在 https://app.datawrapper.de/ 找到,它提供三種自製地圖的類型,包括 (1) 分區著色圖 choropleth map — 如圖1, (2) 符號地圖 symbol map — 如圖2, 及 (3) 定位地圖 locator map — 如圖3。本文將展示如何製作(1) choropleth map和 (3) locator map,大家也可自行試試繪製(2) symbol map。Datawrapper 提供一個互動式平台以供繪製地圖,因此毋須學習複雜的編程或牢記功能鍵等內容。譬如在繪製分區著色圖只需四個簡單步驟,分別是:1. 選擇地區和地圖種類,2. 採用分區數據,3. 製作地圖,便可 4. 發佈。
圖1 分區著色圖 choropeth map。來源:Datawrapper
圖2 符號地圖 symbol map。來源:Datawrapper
圖3 定位地圖 locator map。來源:Datawrapper
1. 製作分區著色地圖
1.1 第一步:選擇分區地圖
Datawrapper提供了一個搜索引擎來查找您想要的分區底圖 (basemap),這樣便可省卻尋找合適分區底圖的麻煩,不需要學習甚麼shape files之類的複雜地圖檔案下載方法。所謂分區著色圖 choropleth map ,顧名思義就是一幅具有明確分區邊界的地圖,例如以國家、城市、行政地區或選區分界等劃分區域的地圖。我以紐西蘭 (New Zealand) 的 Statistical Areas 2 (統計處分區2 - SA2) 為例,透過 Datawrapper 提取一個內置的紐西蘭 SA2 地圖如下。
1.2 第二步:加入分區數據
視乎您想著色的目的,譬如要比較各區的人口,年齡或家庭入息中位數等數據,只要把各區的數據輸入便可繪製出以顏色代表高低的分區著色地圖,Datawrapper提供多種數據輸入方法,包括上傳數據檔,如 .csv 檔,或直接輸入分區數據。我為了方便示範,採用隨機配置 SA2 分區數據的方法繪製出圖4如下:
圖4 紐西蘭分區SA2著色地圖。作者試繪
1.3 第三和第四步:製圖及發佈
基本上,只需兩步已可完成一幅分區著色地圖,餘下只是一些調整及改良,更可以將其保存為 png 格式等發佈,非常方便。
2. 製作定位地圖
2.1 第一步:在世界地圖中定位及加上標記
Datawrappe 提供一幅世界地圖讓您在某地方加上標記,譬如我想把奧克蘭大學商學院大樓在地圖上加上標記,讓訪客更易找尋;您也可以使用提供的搜索引擎來標記感興趣的地方,例如我在搜索引擎輸入 University of Auckland Business School (奧克蘭大學商學院,UABS),地圖中便自動畫上標記,您可以像使用Google Map一樣把地圖拉大至您需要的比例,然後加工設計。
2.2 第二步:設計地圖
在地圖的下方,Datawrapper提供了一些簡明易用的工具來設計立體地圖,例如,它可以放大尺寸、改變旋轉角度和傾斜平面等,可隨心所欲地畫出立體地圖,更可加入附近的灰色立體建築物和綠色公園及白色道路,令人有置身現場的效果。它還提供比例尺、指北針、放大圖等製圖必備工具。圖 5是以傾斜 60 度繪製的UABS定位地圖工具的版面,其中顯示上述的工具;圖 6則顯示最終的製成地圖。
2.3 第三及第四步:註釋和佈局及發布
圖5 製作定位地圖的工具版面。來源:Datawrapper
圖6 以奧克蘭大學商學院為例繪製的定位地圖。作者試製https://www.datawrapper.de/_/aBMT1/
它非常易用,而且效果專業,既不需要學習任何GIS軟件,又可隨時隨地免費使用,毋須安裝或下載程式,是小朋友學畫地圖的好幫手。
參考
Yiu, C.Y. (2021) Mapping GIS Data on a Basemap by Contextily in Colab, Medium, June 29. https://ecyy.medium.com/mapping-gis-data-on-a-basemap-by-contextily-in-colab-dfff5837eec