国土地理院APIとは?開発者が知るべき地理空間情報の活用方法
![]() |
20万件以上の案件から、副業に最適なリモート・週3〜の案件を一括検索できるプラットフォーム。プロフィール登録でAIスカウトが自動的にマッチング案件を提案。市場統計や単価相場、エージェントの口コミも無料で閲覧可能なため、本業を続けながら効率的に高単価の副業案件を探せます。フリーランスボード |
| |
週2〜3日から働ける柔軟な案件が業界トップクラスの豊富さを誇るフリーランスエージェント。エンド直契約のため高単価で、週3日稼働でも十分な報酬を得られます。リモートや時間フレキシブルな案件も多数。スタートアップ・ベンチャー中心で、トレンド技術を使った魅力的な案件が揃っています。専属エージェントが案件紹介から契約交渉までサポート。利用企業2,000社以上の実績。ITプロパートナーズ |
| |
10,000件以上の案件を保有し、週3日〜・フルリモートなど柔軟な働き方に対応。高単価案件が豊富で、報酬保障制度(60%)や保険料負担(50%)など正社員並みの手厚い福利厚生が特徴。通勤交通費(月3万円)、スキルアップ費用(月1万円)の支給に加え、リロクラブ・freeeが無料利用可能。非公開案件80%以上、支払いサイト20日で安心して稼働できます。Midworks |
国土地理院API(GSI API)は、日本の国土地理院が提供する地理空間情報を活用できる公式APIサービスです。地図データ、標高情報、住所検索機能など、様々な地理情報をプログラムから簡単に取得できます。
目次
- 1 国土地理院APIの基本概要
- 2 国土地理院APIで利用できる主要サービス
- 3 国土地理院APIの具体的な活用例
- 4 国土地理院APIのメリットと活用シーン
- 5 実装時の注意点とベストプラクティス
- 6 よくある質問(FAQ)
- 7 まとめ
- 8 ■「らくらくPython塾」が切り開く「呪文コーディング」とは?
- 9 ■プロンプトだけでオリジナルアプリを開発・公開してみた!!
- 10 ■AI時代の第一歩!「AI駆動開発コース」はじめました!
- 11 ■テックジム東京本校
- 12 <短期講習>5日で5万円の「Pythonミニキャンプ」開催中。
- 13 <月1開催>放送作家による映像ディレクター養成講座
- 14 <オンライン無料>理系出身者向けのPython爆速講座
国土地理院APIの基本概要
- 無料で利用可能:基本的な機能は無償で使用できます
- 豊富なデータ:地形図、航空写真、標高データなど多様な情報を提供
- REST API形式:シンプルなHTTPリクエストで情報取得が可能
- JSON形式のレスポンス:Webアプリケーションに組み込みやすい形式
国土地理院APIで利用できる主要サービス
1. 地理院地図API
日本全国の詳細な地図データにアクセスできます。
// 地図タイル取得の例
const mapUrl = `https://cyberjapandata.gsi.go.jp/xyz/std/{z}/{x}/{y}.png`;
2. 標高API
指定した緯度経度の標高情報を取得できます。
// 標高データ取得の例
const elevationUrl = `https://cyberjapandata.gsi.go.jp/general/dem5a_png/{z}/{x}/{y}.png`;
3. 住所検索API
住所から緯度経度を取得したり、逆に座標から住所を調べることができます。
4. 災害情報API
地震、洪水、土砂災害などの災害関連情報にアクセス可能です。
国土地理院APIの具体的な活用例
Webアプリケーションでの地図表示
<!DOCTYPE html>
<html>
<head>
<title>国土地理院地図の表示</title>
<link rel="stylesheet" href="https://unpkg.com/leaflet/dist/leaflet.css" />
</head>
<body>
<div id="map" style="height: 400px;"></div>
<script src="https://unpkg.com/leaflet/dist/leaflet.js"></script>
<script>
// 地図の初期化
const map = L.map('map').setView([35.6762, 139.6503], 10);
// 国土地理院の地図タイル追加
L.tileLayer('https://cyberjapandata.gsi.go.jp/xyz/std/{z}/{x}/{y}.png', {
attribution: '© <a href="https://www.gsi.go.jp/">国土地理院</a>',
maxZoom: 18
}).addTo(map);
</script>
</body>
</html>
標高データの取得と活用
import requests
import json
def get_elevation(lat, lon):
"""指定座標の標高を取得"""
url = f"https://cyberjapandata.gsi.go.jp/general/dem/scripts/getelevation.php"
params = {
'lon': lon,
'lat': lat,
'outtype': 'JSON'
}
response = requests.get(url, params=params)
data = response.json()
return data['elevation']
# 東京駅の標高取得例
elevation = get_elevation(35.6812, 139.7671)
print(f"東京駅の標高: {elevation}m")
国土地理院APIのメリットと活用シーン
メリット
- 信頼性の高いデータ:政府機関が提供する正確な地理情報
- 無料利用:基本機能は費用がかからない
- 豊富なデータセット:地形、災害、インフラ情報など多様
- 日本特化:日本国内の詳細情報が充実
主な活用シーン
- 不動産サイト:物件周辺の地形や標高情報の表示
- 観光アプリ:登山ルートや景観スポットの情報提供
- 防災システム:災害リスクの可視化と避難経路案内
- 物流システム:配送ルートの最適化
- 農業支援:地形を考慮した営農計画支援
実装時の注意点とベストプラクティス
APIリクエストの最適化
// リクエスト頻度の制御
class GsiApiClient {
constructor() {
this.requestQueue = [];
this.isProcessing = false;
}
async makeRequest(url) {
return new Promise((resolve, reject) => {
this.requestQueue.push({ url, resolve, reject });
this.processQueue();
});
}
async processQueue() {
if (this.isProcessing || this.requestQueue.length === 0) return;
this.isProcessing = true;
const { url, resolve, reject } = this.requestQueue.shift();
try {
const response = await fetch(url);
const data = await response.json();
resolve(data);
} catch (error) {
reject(error);
} finally {
this.isProcessing = false;
// 次のリクエストを少し遅延
setTimeout(() => this.processQueue(), 100);
}
}
}
エラーハンドリング
async function fetchElevationData(lat, lon) {
try {
const response = await fetch(
`https://cyberjapandata.gsi.go.jp/general/dem/scripts/getelevation.php?lon=${lon}&lat=${lat}&outtype=JSON`
);
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
const data = await response.json();
if (data.elevation === null) {
throw new Error('指定座標の標高データが取得できませんでした');
}
return data.elevation;
} catch (error) {
console.error('標高データ取得エラー:', error);
return null;
}
}
よくある質問(FAQ)
Q: 商用利用は可能ですか?
A: はい、国土地理院のデータは基本的に商用利用が可能です。ただし、利用規約を確認し、適切な著作権表示を行う必要があります。
Q: APIキーは必要ですか?
A: 基本的な地図表示や標高取得には認証は不要です。ただし、大量のリクエストを行う場合は事前相談が推奨されます。
Q: レスポンス速度はどの程度ですか?
A: 通常、1秒以内にレスポンスが返されます。ただし、リクエスト頻度や時間帯によって変動する場合があります。
まとめ
国土地理院APIは、日本の地理空間情報を活用したWebサービス開発において非常に有用なツールです。無料で高品質なデータにアクセスでき、様々な用途に応用できます。
適切な実装方法を理解し、利用規約を遵守することで、ユーザーに価値のある地理情報サービスを提供できるでしょう。
参考リンク
この記事は2025年7月時点の情報に基づいています。最新の情報は国土地理院の公式サイトでご確認ください。
■「らくらくPython塾」が切り開く「呪文コーディング」とは?
■プロンプトだけでオリジナルアプリを開発・公開してみた!!
■AI時代の第一歩!「AI駆動開発コース」はじめました!
テックジム東京本校で先行開始。
■テックジム東京本校
「武田塾」のプログラミング版といえば「テックジム」。
講義動画なし、教科書なし。「進捗管理とコーチング」で効率学習。
より早く、より安く、しかも対面型のプログラミングスクールです。
<短期講習>5日で5万円の「Pythonミニキャンプ」開催中。
<月1開催>放送作家による映像ディレクター養成講座
<オンライン無料>理系出身者向けのPython爆速講座
![]() |
20万件以上の案件から、副業に最適なリモート・週3〜の案件を一括検索できるプラットフォーム。プロフィール登録でAIスカウトが自動的にマッチング案件を提案。市場統計や単価相場、エージェントの口コミも無料で閲覧可能なため、本業を続けながら効率的に高単価の副業案件を探せます。フリーランスボード |
| |
週2〜3日から働ける柔軟な案件が業界トップクラスの豊富さを誇るフリーランスエージェント。エンド直契約のため高単価で、週3日稼働でも十分な報酬を得られます。リモートや時間フレキシブルな案件も多数。スタートアップ・ベンチャー中心で、トレンド技術を使った魅力的な案件が揃っています。専属エージェントが案件紹介から契約交渉までサポート。利用企業2,000社以上の実績。ITプロパートナーズ |
| |
10,000件以上の案件を保有し、週3日〜・フルリモートなど柔軟な働き方に対応。高単価案件が豊富で、報酬保障制度(60%)や保険料負担(50%)など正社員並みの手厚い福利厚生が特徴。通勤交通費(月3万円)、スキルアップ費用(月1万円)の支給に加え、リロクラブ・freeeが無料利用可能。非公開案件80%以上、支払いサイト20日で安心して稼働できます。Midworks |







