Upgrade to Pro — share decks privately, control downloads, hide ads and more …

PythonでWeb地図アプリを作ってみよう

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for ぴっかりん ぴっかりん
February 21, 2026
240

 PythonでWeb地図アプリを作ってみよう

2026年2月21日(土)に静岡県静岡市で開催されたPyCon mini Shizuoka 2026にて発表した資料です。
デモとして使用していたGoogle Colabのノートブックは以下から動かすことができます。

https://colab.research.google.com/drive/1t5xE-G9oq1hWenw6uhf10xjls204SF2a?usp=sharing

Avatar for ぴっかりん

ぴっかりん

February 21, 2026
Tweet

Transcript

  1. PyCon mini Shizuoka 2026 はじめに • 本発表は、所属会社で行っていることではなく、個人で 使ってみたライブラリの発表になります • デモは、以下のリンクからGoogle

    Colab上で 実行することが可能です https://colab.research.google.com/drive/1t5xE- G9oq1hWenw6uhf10xjls204SF2a?usp=sharing • X(旧Twitter)を見ていることが多いので、ぜひ #pyconshizu を付けて感想をポストして頂けると嬉しいです! 2
  2. PyCon mini Shizuoka 2026 発表内容 1. 自己紹介 2. Web地図の基礎 3.

    leafmapの紹介と基礎 4. 静岡のデータを可視化してみよう 5. まとめ 4
  3. PyCon mini Shizuoka 2026 1. 自己紹介 • 出身: 静岡県駿東郡長泉町 •

    趣味: 地理空間情報と戯れる、散歩、旅行... • 推し: 鬼頭明里さん、すそのん、不動産情報ライブラリス • 活動: PLATEAU ADVOCATE 2025、 OSGeo.JP 運営委員、 SatAI.Challenge 運営メンバ ←「ぴっかりん」という名前でSNS等に 生息してます 6 「国土数値情報(行政区域データ)」(国土交通省)を 加工して作成
  4. PyCon mini Shizuoka 2026 1. 自己紹介 私のPyCon参加歴 PyConJP 2021(オンライン) PyConJP

    2022(オンサイト) PyCon APAC 2023(オンサイト) 8 「国土数値情報(行政区域データ)」(国土交通省)を加工して作成
  5. PyCon mini Shizuoka 2026 1. 自己紹介 私のPyCon参加歴 PyConJP 2021(オンライン) PyConJP

    2022(オンサイト) PyCon APAC 2023(オンサイト) PyCon mini Shizuoka 2024 continue (オンサイト・発表) あと、PyCon JP 2025(広島)でも発表しています 9 「国土数値情報(行政区域データ)」(国土交通省)を加工して作成
  6. PyCon mini Shizuoka 2026 1. 自己紹介? 今までのPyConでは3Dデータや衛星画像など専門的なことを 話してきました 16 PyCon

    mini Shizuoka 2024 continue 「 PythonでPLATEAUのデータを扱ってみる」 PyCon JP 2025 「 Hello, satellite data! ~Pythonではじめる 衛星データ解析~」
  7. PyCon mini Shizuoka 2026 2. Web地図の基礎 そもそもWeb地図とは? ✓ Webブラウザ上でインタラクティブに操作できる地図 ✓

    有名なものだと、Google Maps、OpenStreetMapなど → 皆さん、当たり前のように使っていますよね 20 OpenStreetMap 地理院地図(電子国土WEB)
  8. PyCon mini Shizuoka 2026 2. Web地図の基礎 位置の表し方 ✓ 緯度、経度 →

    経度: 東西方向 → 緯度: 南北方向 ✓ 皆さんお馴染みですよね? 21 出典: https://commons.wikimedia.org/wiki/ File:Latitude_and_Longitude_of_the_Earth.svg
  9. PyCon mini Shizuoka 2026 2. Web地図の基礎 位置の表し方 ✓ 地球は球体、けど平面に表したい! →

    球体を平面になるように変換すればOK → この変換を「投影」、変換のルールを「地図投影法」という → 面積、角度、距離をすべて正確には再現できない(歪みを許容) 22 ※ Nano Bananaにより作成
  10. PyCon mini Shizuoka 2026 2. Web地図の基礎 位置の表し方 ✓ Webメルカトル図法 →

    Google Mapsをはじめ、多くのWeb地図サービスで使用 → 北緯および南緯約85度以上の領域の描画をあきらめ、 地球全体を正方形の地図で表現 23 ※ Nano Bananaにより作成 約85度以上の部分は あきらめる
  11. PyCon mini Shizuoka 2026 2. Web地図の基礎 位置の表し方 ✓ 平面直角座標系 →

    日本全体を19の領域に分割し、 その範囲を平面として変換 → 日本の公共測量で使用 オープンデータにて、位置が 平面直角座標系で記載 されていることも 24 出典: https://www.gsi.go.jp/sokuchikijun/jpc.html
  12. PyCon mini Shizuoka 2026 2. Web地図の基礎 ラスターデータ 格子状に並んだ数値情報を含むピクセルの集合として表現されるデータ → 代表的なものが航空写真などの画像データ

    → 地形や気温のような連続性のあるデータを扱うのに適している メリット 単純な構造のため、計算や比較がしやすい デメリット 解像度がピクセルの大きさで決まるので、拡大や縮小で劣化する 26
  13. PyCon mini Shizuoka 2026 2. Web地図の基礎 ベクターデータ 頂点の集合からなる幾何学的な形状を持つデータのこと → ある地点(お店の場所など)や道路、建物の形状と属性など

    → 細かい形状を表現するのに適している メリット 拡大/縮小による劣化が無く、細かい形状を表現できる デメリット 計算や比較がラスターデータに比べ難しい 28
  14. PyCon mini Shizuoka 2026 2. Web地図の基礎 ベクターデータの種類 ベクターデータには、3つの種類がある 29 ポイント

    ライン ポリゴン 特定の位置を示す形状 2つ以上の点を結んだ線 の形状、長さを持つ 頂点を結ぶ線が閉じた形 状(面)、面積を持つ 店舗やバス停の場所など 道路の中心線や鉄道など 建物や道路、公園など
  15. PyCon mini Shizuoka 2026 2. Web地図の基礎 Web地図を支える仕組み: 地図タイル ✓ 大きな位置情報データを事前にタイル状に分割し、必要な範囲の

    データだけを配信可能とする仕組み → 必要な範囲のみを読み込むことで、高速に表示ができる ✓ 全世界を所定のルールでタイル上に分割し、それぞれのタイルに 横方向の位置(X)と縦方向の位置(Y)、表示倍率(Z)を付与 → Webメルカトル投影法による世界地図を原点に分割していく 30
  16. PyCon mini Shizuoka 2026 2. Web地図の基礎 Web地図を支える仕組み: 地図タイル ✓ (0,

    0)のWebメルカトル投影法による世界地図から 4分割ずつして、世界全体の領域を表現 31 出典: https://maps.gsi.go.jp/development/siyou.html
  17. PyCon mini Shizuoka 2026 4. 静岡のデータを可視化してみよう 地図に表示する際は、「スポット名」、「詳細」、「電話番号」、「URL」 辺りも表示したい → 欠損値の情報もあり、そのままだと「NaN」と地図上に

    表示されてしまう → pandasで当該箇所は「情報なし」に置換しよう 54 静岡市「しずまえおさかな処マップ 掲載飲食店」を改変して使用、CC BY 4.0
  18. PyCon mini Shizuoka 2026 4. 静岡のデータを可視化してみよう カスタムアイコンの追加 地図上に情報を表示することができるようになりましたが、 ✓ 会場と飲食店のマーカーの区別がつかない

    ✓ 何だか味気ない といった課題があります。 そこで、飲食店のマーカーをカスタムしましょう。 以下のお魚のアイコンを表示していきます 60
  19. PyCon mini Shizuoka 2026 5. 宣伝 今回、用いたPythonライブラリであるleafmapのような 地理空間情報を扱う自由かつオープンソースなソフトウェア群を FOSS4G(Free and

    Open Source Software for Geospatial) といいます そして、このFOSS4Gのコミュニティを支援している団体が主催する 年次カンファレンスの名前もFOSS4Gです(ややこしい) 各地の支部が主催する会議の名前も“FOSS4G”を冠することが多い (自己紹介にあったOSGeo.JPは日本の支部) 69
  20. PyCon mini Shizuoka 2026 6. まとめ • 地図を作成するためには、さまざまな知識が必要だが Pythonをはじめ、さまざまなツールのおかげで楽にできるように •

    PythonでもWeb地図作成できるライブラリが近年出てきています • Pythonを用いると、データ処理からWeb地図表示まで 一気通貫で可能!!! 今回の場合だと、欠損値の処理と地図上にデータを表示 75
  21. PyCon mini Shizuoka 2026 本日のトークのゴール ✓ Web地図を作る上での基本事項がざっくり分かる ✓ 指定した場所の地図を表示できるようになる ✓

    緯度、経度の列があるCSV形式のデータを地図上に 表示できるようになる ✓ 生成AIに質問するための地図の知識が身に付いた!? 76