
想在自己的部落格或專題報告中,畫一張美美的台灣地圖,標示出各鄉鎮的資料?但一碰到那些讓人眼花撩亂的檔案格式,是不是就感到一頭霧水呢?別擔心!這篇文章將帶你一次搞懂繪製台灣地圖最常用的兩種格式:Shapefile 和 GeoJSON,並介紹各自的優缺點、適用情境,以及哪裡可以下載這些珍貴的檔案。
1. 地圖界的重量級選手:Shapefile (.shp)
如果你是資料分析師,或是經常處理地理資訊的人,Shapefile 肯定不陌生。它是由 ESRI 公司開發的一種向量圖格式,也是目前地理資訊系統(GIS)領域中最主流的格式之一。
Shapefile 的強項在於它能精準地描述地理特徵,無論是點(例如火車站)、線(例如道路)、或面(例如行政區),都能以其幾何形狀、位置和屬性資料來儲存。這表示,一個包含「台灣鄉鎮界線」的 Shapefile,除了儲存各鄉鎮的邊界形狀,還會附帶額外的屬性資料,像是鄉鎮名稱、代碼、人口數等,讓你能夠依據這些資料來為地圖上色或進行分析。- 優點:
- 資料完整性高:同時儲存幾何形狀和屬性資料,功能強大。
- GIS 軟體支援度高:幾乎所有的 GIS 軟體(如 QGIS、ArcGIS)都原生支援。
- 精確度高:適合需要進行嚴謹空間分析的學術或商業用途。
- 適用情境:
- 需要進行複雜空間分析(如疊圖分析、鄰近分析)時。
- 使用專業 GIS 軟體,處理大量地理資料時。
2. 輕巧又靈活的網路新秀:GeoJSON (.json)
相較於 Shapefile 的專業和龐大,GeoJSON 則顯得輕巧許多。它是一種基於 JavaScript 物件表示法(JSON)的地理資料格式。GeoJSON 的設計初衷就是為了讓網路應用能更方便地處理地理資料。
你可以把它想像成一個簡單的文字檔,裡面的資料以鍵(key)和值(value)的方式儲存,讓開發者或使用者能輕鬆讀懂和編輯。也因為這種特性,GeoJSON 成為許多網頁地圖應用(例如 Leaflet.js、Mapbox GL JS)的首選,能夠快速地在網頁上載入並呈現地圖。
- 優點:
- 格式簡單易讀:人類和機器都能輕鬆讀懂。
- 網頁應用友善:可以直接在網頁上使用,無需額外轉換。
- 整合性高:能與各種程式語言和開發框架完美結合。
- 適用情境:
- 想在網頁上建立互動式地圖(例如滑鼠移到鄉鎮時顯示資訊)。
- 需要快速分享或處理地圖資料,不依賴專業軟體時。

哪裡可以下載這些地圖檔案?
Shapefile
- 內政部國土測繪圖資服務雲: 有不同座標系統及最新的直轄市、鄉鎮市及村里的界線圖
- 下載網址:https://maps.nlsc.gov.tw/(選擇 下載專區 分頁 )
- 政府資料開放平台:最常被下載的官方權威的來源平台。
- 直轄市、縣市界線(TWD97經緯度): https://data.gov.tw/dataset/7442
- 鄉鎮市區界線(TWD97經緯度): https://data.gov.tw/dataset/7441
- 村里界圖(TWD97經緯度): https://data.gov.tw/dataset/7438
GeoJSON
- 全球性 GeoJSON 資料來源: https://gadm.org/download_country.html
- 民間/開源整理
除了這兩種,還有其他格式嗎?
當然!除了 Shapefile 和 GeoJSON 這兩大主流格式,還有一些其他格式,它們通常是為了改善或增進特定功能而生。
- TopoJSON: TopoJSON 是 GeoJSON 的一種延伸,它透過儲存地圖的拓樸結構(也就是不同圖徵之間的共用邊界),大大減少了檔案大小。對於需要在網頁上顯示精細地圖的應用,使用 TopoJSON 能顯著提升載入速度。
- 下載網址:可透過程式將 GeoJSON 或 Shapefile 轉換成 TopoJSON。
- 例如:https://github.com/topojson/topojson
- KML (Keyhole Markup Language): KML 是一種基於 XML 格式的地理資料,主要用於 Google Earth 和 Google 地圖等應用程式。如果你想在 Google 地圖上標示出特定的鄉鎮範圍,KML 是最直接的選擇。
結語
總結來說,如果你要進行嚴謹的資料分析,或是使用專業 GIS 軟體,Shapefile 會是你的最佳夥伴;但若你主要想在網頁上呈現互動式地圖,或是需要輕便的資料格式,那麼 GeoJSON 絕對是首選。