Skip to content

Repository files navigation

温泉分析帳

私設・温泉分析書データベース。訪れた温泉の分析書(成分表)を記録し、比較・散布図・地図・化学種分布図で眺めるための PWA。

公開URL: https://yongdukim.github.io/OnsenDB/

特徴

2つのモードを切り替えて使う。

マイ分析帳(編集可)

  • 温泉分析書の成分(陽イオン・陰イオン・遊離成分・溶存ガス)を1件ずつ登録
  • 初回起動時は既定の分析書22件が登録済み(通常のレコードとして編集・削除できる)
  • データはブラウザの localStorage に保存(端末内のみ)。JSONでバックアップ/復元・端末間の手動移行が可能

産総研データ(閲覧専用)

  • 産総研地質調査総合センター「地熱情報データベース」の温泉分析値データ 全国7,203地点 を収録
  • 都道府県・泉質(簡易分類)・キーワードで絞り込み、一覧・比較・散布図・地図で閲覧できる
  • 掲載値は1910〜2005年の過去の分析値であり、現在の泉質・成分を示すものではない
  • 出典・加工内容の詳細はアプリ内「データについて」タブに記載

共通

  • 海水(標準)を比較基準として常時表示
  • 泉温・pH・成分濃度での横並び比較、2軸散布図、日本地図での分布表示
  • 2軸散布図では成分をモル濃度(mmol/kg)に換算して比較(重量濃度のままだと原子量の差で大小の見え方が変わるため。換算できないラドン・溶存物質総量は分析書の単位のまま)
  • 散布図は見たい範囲をドラッグで囲むと拡大表示できる(「全画面に戻す」で解除。指で操作するときは「指で範囲を選ぶ」を押してからなぞる。近似直線と相関係数は拡大しても全データの値のまま)
  • 酸解離定数(pKa)表と pH−化学種分布図
  • PWA対応:ホーム画面に追加でき、オフラインでも起動・閲覧・入力できる(産総研データセットも一度読み込めばキャッシュされる)

産総研データの出典と加工

産総研データモードのデータセット(public/gsj/gsj-onsen-2020.json)は、 産総研地質調査総合センター 地熱情報データベース(https://gbank.gsj.jp/gres-db/)の 温泉分析値データ(GSJ_DB_GRES-DB_ONSEN_2020)を使用し、本アプリ作成者(YongDuKim)が加工したものです。 加工後の内容は産総研地質調査総合センターが作成したものではありません。 元データの利用条件は産総研地質調査総合センターウェブサイト利用規約 (政府標準利用規約(第2.0版)準拠・CC BY 4.0 互換)に従います。

主な加工内容(詳細は scripts/convert-gsj.tssrc/lib/gsjConvert.ts):

  • 文字コード変換(Shift_JIS → UTF-8)・JSON化・収録項目の取捨選択
  • 位置ポリゴン(約200m四方にぼかし)の重心点化(精度±100m程度)
  • 採水年月日の表記統一、ラドンの Bq/kg 換算、SiO₂ のメタケイ酸(H₂SiO₃)換算
  • 欠測(N/A)・痕跡(TR)・検出限界未満の値の除外、泉質の簡易分類の付与

データセットを再生成するには、元CSVをダウンロードして次を実行する (CSV はリポジトリに含めない):

npm run convert:gsj -- path/to/GSJ_DB_GRES-DB_ONSEN_2020.csv

開発

npm install
npm run dev          # 開発サーバー
npm run test         # Vitest(単体 + コンポーネントテスト)
npm run lint         # ESLint
npm run format       # Prettier
npm run build        # 型チェック + 本番ビルド
npm run preview      # ビルド結果のプレビュー

構成

  • src/schema.ts — 成分・酸解離定数・都道府県などのスキーマ定義。ここに項目を追加すれば入力欄・グラフに自動反映
  • src/defaultRecords.ts — 初回起動時に登録済みとなる既定の分析書
  • src/lib/ — 計算・保存などの純粋ロジック(テスト対象)
    • gsjConvert.ts — 産総研CSVの変換ロジック、gsjData.ts — データセットの取得と展開
  • src/components/ — React コンポーネント(タブごとのビュー)。GsjMode.tsx が産総研データモード
  • scripts/convert-gsj.ts — 産総研CSV → public/gsj/*.json の変換スクリプト
  • public/gsj/ — 変換済みデータセット(生成物。直接編集しない)

デプロイ

main ブランチへの push で GitHub Actions が lint → format check → test → build を実行し、 すべて通れば GitHub Pages に自動デプロイされる(.github/workflows/deploy.yml)。

Releases

Packages

Contributors

Languages