ログイン購読する

GIS オープンデータ入門

座標系と EPSG

WGS84
EPSG:4326
TWD97 緯度経度
EPSG:3824
TWD97 TM2 121(台湾本島で一般的)
EPSG:3826
TWD97 TM2 119(澎湖・金門・馬祖で一般的)
EPSG:3825
TWD67 TM2 121
EPSG:3828
Web Mercator
EPSG:3857

一般的な学生の課題では TWD97 と WGS84 は近いものとして扱える場合がありますが、基準時点、用途、必要精度を確認してください。TWD67 は適切なパラメーターやグリッドで変換し、TWD97 と指定し直すだけではいけません。

QGIS への読み込み

  • SHP:ZIP 一式を QGIS にドラッグします。.shp だけでなく付属ファイルも保持してください。
  • GeoJSON:QGIS でベクターレイヤーを追加し、元の座標系を確認します。
  • KML/KMZ:QGIS でベクターレイヤーを追加し、レイヤーと属性を確認します。
  • CSV:「区切りテキストレイヤーの追加」で X を経度・東距、Y を緯度・北距に指定し、正しい EPSG を選択します。
  • XML:最初に構造を確認します。座標が含まれていても空間レイヤーとして直接読み込めるとは限らず、GeoJSON や座標 CSV への変換が必要な場合があります。
  • WMTS:QGIS の WMS/WMTS 接続に NLSC GetCapabilities URL を追加し、レイヤーとタイル行列を選択して利用許諾を確認します。
  • WMS:QGIS で提供元の URL を使って WMS/WMTS 接続を作成し、レイヤーと対応 CRS を確認します。

NLSC WMTS GetCapabilities ↗

Python 座標変換の例

最初に元の座標系を確認してください。CRS の指定と座標変換は異なる操作です。汎用 GeoJSON の出力前に WGS84 へ変換します。

from pathlib import Path
import geopandas as gpd

# pip install geopandas pyproj
source = Path("data.shp")
if not source.is_file():
    raise FileNotFoundError(source)
data = gpd.read_file(source)
if data.crs is None:
    raise ValueError("Missing source CRS: check the provider metadata first")
projected = data.to_crs(epsg=3826)
# RFC 7946 GeoJSON uses WGS84 longitude / latitude, not projected metres.
projected.to_crs(epsg=4326).to_file("output.geojson", driver="GeoJSON")

ライセンスと引用

目録内の全データに同じライセンスが適用されるわけではありません。提供元でライセンス、帰属表示、更新日、制限を確認してください。未確認の場合は「元のサイトを参照」と表示します。

台湾政府資料開放授権条款 第1版 ↗

OSM · ODbL ↗ · Natural Earth · Public Domain ↗ · EDGAR · CC BY 4.0 ↗

出典:各提供機関。台湾政府資料開放授権条款 第1版、または各提供元のライセンスに従います。本サイトは目録とリンクのみを整理し、データファイルを再配布しません。 ライセンスの詳細 ↗