Pivot
Pivot은 오픈 데이터 형식 기반 고성능 실시간 분석 데이터베이스입니다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기日本列島の地形・地質・火山・温泉を一枚の地図に重ね、公開データの範囲で関係を実測する教育・研究用 Web GIS
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
地形・地質・火山・温泉を一枚の地図に重ね、公開データの範囲でその関係を実測する 教育・研究・技術実験用の Web GIS。 • 地図: MapLibre GL JS • 外側: Next.js(静的書き出し)— サーバ側の処理はひとつも無い • データ加工: Python(ETL は手動実行) 等高線は事前に作った線ではなく、表示範囲の標高タイルをその場で読んで marching squares で引いている。README 전문 보기 ↗
地形・地質・火山・温泉を一枚の地図に重ね、公開データの範囲でその関係を実測する 教育・研究・技術実験用の Web GIS。
本番: https://japan-geo-onsen.vercel.app
| 画面 | 中身 |
|---|---|
/ | 地形・陰影・色別標高・地質・等高線・火山・温泉のレイヤー地図。クリックで属性 |
/stats/ | 温泉と対照群を、地質・標高・傾斜・火山距離で比べた集計 |
/onsen-stats/ | 環境省の温泉利用状況(源泉数・温度別源泉数・湧出量)を都道府県別に |
/about/ | 出典・利用条件・加工方法と、探して見つからなかったデータの記録 |
等高線は事前に作った線ではなく、表示範囲の標高タイルをその場で読んで marching squares で引いている。
| 対象 | 件数 | 出典 |
|---|---|---|
| 活火山 | 111 | 気象庁 |
| 温泉(観光資源) | 1,320 | 国土交通省 国土数値情報 P12(2014) |
| 対照点 | 1,320 | 同上(温泉以外の観光地点を県ごとに同数抽出) |
| 地質凡例 | 2,416 | 産総研 シームレス地質図V2 |
120 = 111 + 3(座標を持たない一覧表示用の項目)+ 6(親火山の火口細分)。
この分解が崩れたらデータ生成は止まる。lib/pick.ts)。surroundings/<層>.json に分けた(起動時の取得を増やさない)。/missing/ に出す(518+432 件)。Category:日本の温泉 は存在せず(実体は都道府県別)、
存在しない入口を叩いて 0 件を得ていた。入口が在ることを確かめてから数える。amenity=public_bath 等は全国 5,803 件で被覆は広いが、
源泉ではなく入浴施設であり、ODbL の継承条件が政府標準利用規約のデータと混ざるため採らなかった。python -m venv .venv
./.venv/Scripts/python.exe -m pip install pyshp Pillow pytest
npm install
# 生データの取得(raw/ にキャッシュされ、二度目からは外部を叩かない)
./.venv/Scripts/python.exe etl/build_volcanoes.py
./.venv/Scripts/python.exe etl/build_onsen_base.py
./.venv/Scripts/python.exe etl/enrich_onsen.py
./.venv/Scripts/python.exe etl/build_onsen_wikidata.py # 第二の点レイヤー(CC0)
./.venv/Scripts/python.exe etl/enrich_onsen.py onsen_wikidata.geojson
./.venv/Scripts/python.exe etl/build_control.py
./.venv/Scripts/python.exe etl/enrich_onsen.py control.geojson
./.venv/Scripts/python.exe etl/build_water.py # 河川・湖沼(下記の zip が要る)
./.venv/Scripts/python.exe etl/parse_onsen_stats.py # 環境省 PDF(都道府県別)
./.venv/Scripts/python.exe etl/build_onsen_facility.py # 入浴施設(第三の層・Wikidata)
./.venv/Scripts/python.exe etl/build_onsen_wikipedia.py # 温泉記事(第四の層)と未掲載一覧
./.venv/Scripts/python.exe etl/build_surroundings.py # まわり 5/10/25/50km の数(全 4 層)
./.venv/Scripts/python.exe etl/build_regions.py # 地域比較(5 地域 + 活火山 111 を基準点に)
./.venv/Scripts/python.exe etl/build_ai_dataset.py # AI のデータセット(P12 温泉 × 対照)
./.venv/Scripts/python.exe etl/train_baselines.py # LR・RF・XGBoost の比較(ローカルで学習・合否は docs/ai_preregistration.md)
./.venv/Scripts/python.exe etl/explain_ai.py # 温泉ごとの見立て(分割外の出力 + SHAP の寄与)
./.venv/Scripts/python.exe etl/build_cnn_patches.py # CNN に見せる地形の画像(z14 64×64・raw/ai/ に置き積まない)
./.venv/Scripts/python.exe etl/train_cnn.py # CNN の比較(約 4 時間・途中から再開可・合否は docs/ai_preregistration_cnn.md)
./.venv/Scripts/python.exe etl/build_vegetation.py # 植生(下記の lzh が要る)
./.venv/Scripts/python.exe etl/make_profile_fixture.py # 断面の二実装照合フィクスチャ
./.venv/Scripts/python.exe etl/check_elevation.py # 標高を地理院 標高 API と突き合わせる
./.venv/Scripts/python.exe etl/build_stats.py
./.venv/Scripts/python.exe etl/build_manifest.py
npm run verify # 型検査 → vitest → next build
node harness/smoke.mjs --shot # 実ブラウザ検品(手元)
node harness/smoke.mjs --url https://japan-geo-onsen.vercel.app # 本番に対する検品
curl -L -o raw/biodic/veg_c02.lzh https://www.biodic.go.jp/dload/veg_c02.lzh
curl -L -o raw/biodic/veg05m01.lzh https://www.biodic.go.jp/dload/veg05m01.lzh
"/c/Program Files/7-Zip/7z.exe" x -y -oraw/biodic raw/biodic/veg_c02.lzh
"/c/Program Files/7-Zip/7z.exe" x -y -oraw/biodic raw/biodic/veg05m01.lzh
LZH 形式なので 7-Zip が要る(Python の標準ライブラリでは開けない)。 展開物はリポジトリに入れていない(配布形の lzh だけを残す)。
リポジトリには入れていない(河川は 47 県で 296 MB)。次で raw/ に置く。
# 河川 W05(都道府県別・年版が県ごとに違うので一覧ページから拾う)
# https://nlftp.mlit.go.jp/ksj/gml/datalist/KsjTmplt-W05.html
# 湖沼 W09(全国 1 ファイル・7.7 MB)
curl -L -o raw/ksj/W09/W09-05_GML.zip https://nlftp.mlit.go.jp/ksj/gml/data/W09/W09-05/W09-05_GML.zip
河川データ(W05)の利用条件は非商用限定で、国土数値情報の他のデータとは異なる。
raw/ は 570 MB あり、そのまま送るとアップロードが中断したうえ
Vercel free のファイル枠(5,000)を焼く。.vercelignore で除外する。
vercel deploy --prod --yes
--archive=tgz を使ってはならない。 この経路は .vercelignore を
ローカルで適用せず、raw/ を丸ごと詰めて 530 MB を送ろうとする
(実測 2026-09-08)。archive はファイル数の上限を避ける道具であって、
容量を減らす道具ではない。
デプロイ中に npm run build を走らせない。 送信元の out/ が
書き換わると ENOENT で落ちる。
配ったあと、出た版が意図した版かを実測する。 デプロイの終了コードを読み、
node harness/smoke.mjs --url <本番> を通し、さらに
配られている JS が意図した実装かを確かめること —— デプロイが失敗していても
古い版が動いているので、画面を見ただけでは気づけない。
生成はビルドより前に置くこと。 成果物は public/data/ に直接書いており、
data/ から写す段は作っていない(写す段があると、写した後に元を変えたときに
成果物だけが古く残る — HC-199)。
| 提供元 | 使っているもの | 利用条件 |
|---|---|---|
| 国土地理院 | 地図・陰影起伏・色別標高・標高タイル | 国土地理院コンテンツ利用規約 |
| 産業技術総合研究所 地質調査総合センター | 20万分の1日本シームレス地質図V2 | 政府標準利用規約(第2.0版) |
| 気象庁 | 活火山の一覧と位置 | 気象庁ホームページの利用について |
| 国土交通省 | 国土数値情報 観光資源データ(P12) | 国土数値情報 利用約款 |
この地図と集計は公開データをそのまま重ねたものです。 温泉の存在・泉質・湧出量を保証するものではありません。 「ここを掘れば温泉が出る」という主張はしません。
MIT License © 2026 坂田哲朗(コードについて。データは各提供元の条件に従う)