サイトのAPI図鑑B版
掲載情報が正確でない可能性があります。
政府・公共データAPI

国土地理院APIの活用ガイド【地図タイル・標高・住所検索・地形データ】

国土地理院が提供する地図タイルAPI・標高API・住所検索API・地理情報ダウンロードの活用方法を解説します。日本の地形・地理データを無料で活用できます。

#国土地理院#地図タイル#標高#地形データ

国土地理院APIとは

国土地理院(GSI:Geospatial Information Authority of Japan)は日本の地形・地図・測量に関するデータを管理する国土交通省の組織です。地図タイル・標高データ・住所検索・地名検索などのAPIを無料で公開しており、日本の地理情報を活用するアプリ開発に広く利用されています。

地図タイルの活用

国土地理院の地図タイルはOpenStreetMap互換のXYZタイル形式で提供されており、LeafletやMapboxGLと簡単に組み合わせられます。

// Leaflet.jsで国土地理院の地図を表示
import L from 'leaflet';

const map = L.map('map').setView([35.6814, 139.7670], 13);

// 標準地図
L.tileLayer('https://cyberjapandata.gsi.go.jp/xyz/std/{z}/{x}/{y}.png', {
  attribution: '© 国土地理院',
  maxZoom: 18
}).addTo(map);

// 空中写真(オルソ画像)
// https://cyberjapandata.gsi.go.jp/xyz/seamlessphoto/{z}/{x}/{y}.jpg

// 標高色別地図
// https://cyberjapandata.gsi.go.jp/xyz/relief/{z}/{x}/{y}.png

主要な地図タイルレイヤー

  • 標準地図:最新の標準地図(道路・建物・地名)
  • 空中写真:衛星・航空写真(シームレス空中写真)
  • 地形図:等高線・地形が詳細な地形図
  • 淡色地図:背景として使いやすい薄い色調の地図
  • 白地図:道路・地形のみのシンプルな地図

標高APIの使い方

// 緯度経度から標高を取得
const getElevation = async (lat, lon) => {
  const response = await fetch(
    `https://cyberjapandata2.gsi.go.jp/general/dem/scripts/getelevation.php?lon=${lon}&lat=${lat}&outtype=JSON`
  );
  const data = await response.json();
  return data.elevation; // 標高(メートル)
};

// 東京スカイツリーの位置
const elevation = await getElevation(35.7101, 139.8107);
console.log(`標高: ${elevation}m`);

住所・地名検索API

// 住所から緯度経度を検索(ジオコーディング)
GET https://msearch.gsi.go.jp/address-search/AddressSearch?q=東京都千代田区千代田1

// レスポンス
[
  {
    "geometry": { "coordinates": [139.75315, 35.68530], "type": "Point" },
    "type": "Feature",
    "properties": { "addressCode": "", "title": "東京都千代田区千代田1丁目" }
  }
]

地理院地図ベクトルタイルの活用

地理院地図ベクトルタイル(GeoJSON形式)を使うと、道路・建物・行政境界などの地理データをベクトル形式で取得して独自スタイルの地図を作成できます。MapboxGLやDeck.glとの組み合わせで高品質な3D地図表現も可能です。

まとめ

国土地理院APIは日本の地形・地理データを無料で活用できる公共APIです。地図タイル・標高・住所検索を組み合わせることで、日本向けの高品質な地図アプリを低コストで構築できます。出典として「国土地理院」の帰属表示を必ず行い、利用規約を遵守した上で活用してください。

よくある質問

Q.国土地理院の地図タイルは商用利用できますか?

国土地理院の地図タイルは「測量法に基づく国土地理院長承認」のもとで利用できます。商用利用は可能ですが、出典表示(「国土地理院」の帰属表示)が必要です。利用規約の詳細はGSIの利用規約を確認してください。

Q.国土地理院の標高APIで海外の標高は取得できますか?

国土地理院の標高APIは日本国内の標高データのみ提供しています。海外の標高データが必要な場合はGoogle Maps Elevation APIやOpenTopoDataなどのサービスを利用してください。

Q.国土地理院の地図とLeaflet.jsは組み合わせて使えますか?

はい。Leaflet.jsのTileLayerで国土地理院の地図タイルURLを指定することで、Leafletアプリに国土地理院の地図を表示できます。標準地図・空中写真・地形図など複数のタイルレイヤーを選択できます。

関連記事