2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Leaflet 学習ラボ VOL.1 を作成しました

2
Last updated at Posted at 2026-05-18

Leaflet 学習ラボ VOL.1 を作成しました

はじめに

LeafletでWebGISの基礎を学ぶための静的Web教材として、Leaflet 学習ラボ VOL.1 を作成しました。

こちらの弊社のサブドメインで公開しています。

この学習ラボは、Webブラウザ上で地図を表示し、背景図、マーカー、GeoJSON、ポップアップ、凡例、レイヤ制御などを段階的に確認するための教材です。

OpenLayersと同様に地理院タイル、GeoJSON、ポップアップ、凡例、作図、QGIS・Python連携など、実務のWebGISデモにつながる内容を、順番に確認できる構成としています。

作成したもの

Astroで作成した静的なLeaflet学習サイトです。

Screenshot 2026-05-18 093735.png

主な内容は以下です。

  • Leafletのチュートリアル Lab 01〜12
  • ブラウザ上で確認できる地図演習ページ
  • 地理院タイルを使った背景図表示
  • GeoJSONサンプルデータ
  • コード例
  • 用語集
  • 参考リンク集
  • 防災GIS風のサンプルデモ

Leafletは軽量で扱いやすいため、まずWebGISを学ぶ入口として使いやすいライブラリです。

学習Labの内容

VOL.1では、以下の内容を扱います。

Lab 内容
Lab 01 はじめての地図表示
Lab 02 表示位置・ズーム・座標
Lab 03 タイルレイヤーと背景図
Lab 04 マーカー・ポップアップ・ツールチップ
Lab 05 GeoJSONの読み込みとスタイル
Lab 06 レイヤー制御と凡例
Lab 07 クリックイベントと属性表示
Lab 08 クリック入力・作図・簡易計測
Lab 09 XYZ・TMS・WMSの考え方
Lab 10 QGIS・Python出力GeoJSON連携
Lab 11 パフォーマンスと描画最適化
Lab 12 防災GISデモへの展開

単に地図を表示するだけでなく、GISデータを読み込み、属性値で色分けし、クリックで情報を確認するところまでを対象にしています。

VOL.1で重視したこと

今回のVOL.1では、次の点を重視しました。

  • L.map、L.tileLayer、setViewの関係を最初に整理する
  • Leafletで使う緯度経度の指定方法を確認する
  • 地理院タイルやOpenStreetMapなどの背景図を切り替える
  • マーカー、ポップアップ、ツールチップを使って地点情報を表示する
  • GeoJSONを読み込み、属性値に応じてスタイルを変える
  • レイヤー制御、凡例、クリックイベントを組み合わせる
  • QGISやPythonで作成したGeoJSONをWeb地図へつなげる
  • 防災GIS風の簡易デモ画面へ展開する

Leafletはシンプルに書ける一方で、座標の順番、GeoJSONの扱い、表示負荷、タイル利用条件などは意識する必要があります。

そのため、VOL.1ではプラグインに頼りすぎず、Leaflet本体の基本機能を中心に整理しました。

VOL.2で扱う予定のテーマ

VOL.1では扱わない発展テーマは、VOL.2で学ぶ想定です。

  • Leafletプラグインの活用
  • MarkerClusterによる大量点データ表示
  • Leaflet.drawなどによる作図機能
  • WMTSや高度なタイル配信
  • ベクトルタイル
  • GeoServerやAPIとの連携
  • 公開運用、キャッシュ、パフォーマンス対策
  • 防災・水理水文解析結果のWebGIS配信

まずVOL.1では、静的ファイルとブラウザだけで理解できるLeafletの基本を固める位置づけです。

OpenLayers版との使い分け

今回のLeaflet版は、先に作成したOpenLayers版と同じWebGIS学習ラボですが、位置づけは少し異なります。

項目 Leaflet OpenLayers
学びやすさ シンプルで入門しやすい 機能が多く本格的
基本用途 軽量な地図表示、簡易WebGIS 複雑なWebGIS、配信サービス連携
コード量 少なめ やや多め
向いている用途 教材、簡易デモ、確認画面 実務寄りの高度な地図画面

最初にLeafletでWebGISの基本を学び、その後OpenLayersでより高度な構成に進む、という学習順序も良いと考えています。

実行方法

ローカル(wsl環境)で確認する場合は、以下の流れです。
今後gitに公開する予定です。少々お待ちください。

npm install
npm run dev

静的ファイルとして出力する場合は、以下です。

npm run build

dist/ に静的ファイルが出力されます。

Windows環境では、同梱している以下のバッチファイルも利用できます。

setup_install.bat
run_dev.bat
build_static.bat

技術構成

主な構成は以下です。

区分 内容
フロントエンド Astro
地図ライブラリ Leaflet
表示形式 静的HTML
背景図 地理院タイル、OpenStreetMapなど
GISデータ GeoJSON
主な機能 地図表示、マーカー、ポップアップ、レイヤ制御、凡例、作図入口

静的サイトとして構成しているため、サーバーサイド処理を用意しなくても、教材や簡易デモとして公開しやすい形になっています。

注意事項

この学習ラボは、Leafletの基礎を学ぶための教材・プロトタイプです。

実務システムとして利用する場合は、地図タイルの利用規約、データ容量、描画負荷、座標系、属性情報の取り扱い、セキュリティ、公開運用方法などを別途確認する必要があります。

特に防災GISや行政向けの公開デモでは、凡例、注記、出典、更新日、利用条件を分かりやすく表示することが重要です。

まとめ

今回は、LeafletでWebGISを学ぶための 学習ラボ VOL.1 を作成しました。

公開先はこちらです。

VOL.1では、地図表示、座標、背景図、マーカー、GeoJSON、ポップアップ、レイヤ制御、作図入口、QGIS・Python連携、防災GIS風デモまでを整理しました。

今後はVOL.2として、Leafletプラグイン、クラスタリング、作図、WMTS、ベクトルタイル、GeoServer連携など、より実践的なWebGIS構成へ拡張していく予定です。

OpenLayers版の学習ラボも公開しています。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?