← 天気の良い山をさがす に戻る

スコアの計算方法

「天気の良い山をさがす」に表示される 0〜100 のスコアの算定方法

「天気の良い山をさがす」ページでは、各山名の隣に、その日のコンディションを 0〜100 の数値で表した スコアを表示しています。数値が大きいほど登山に適した条件であることを示します。このページでは、 この数値がどのような気象要素を、どのように組み合わせて算出されているのかを、数式と計算例で解説します。

🕘 スコアは登山コアタイム 7:00〜15:59 (9 時間) の気象値のみで算定しています。 夜間のみ降雨がある日が実際以上に低く評価されたり、日没後の風が評価に影響したりすることを 避けるための時間帯限定です。以下のすべての要素はこの時間帯を対象としています。
📅 対象は今日〜6日先の7日間です。天気・降水量・稜線風・積雪は、日本域に最適化された 気象庁モデル (前半は MSM・約5km / 後半は GSM へ自動切替) から取得しています。 切り替わる日はモデルの更新時刻によって前後するため「何日目から」とは決まっていません (実際の境目は詳細予報の見通し表に、区切り行 「▼ ここから全球モデル(GSM)の予報です」と、日付に付く「全球」印で出しています)。 ただしスコアの主要素である日照 (sunshine_duration) だけは、このモデルが MSM の期間ぶんしか配信していません。そこで日照が届かない日 (おおむね4日目以降) は、 別の予報モデル (ベストマッチ合成) の日照で補完し、一覧の日照欄に * 印を付けています (「3.」で詳しく説明します)。 以前は 3 日間に絞っていましたが、この補完によって 7 日間まで広げました。 なお後半の日ほど予報の精度は落ちます。3 日先までを実用域とし、それ以降は 「傾向を見る」用途としてお使いください。 日付の選択肢では、性質が変わる 4 日目以降に「参考」と付けています (日照が別モデル由来になるほか、稜線風もやや粗くなります。「6.」参照)。
📖 この解説の対象: 「天気の良い山をさがす」のスコア列と、 表に出る天気マーク(「4.」で説明) です。 個別の山の詳細ページに出る正式な登山指数 A/B/C は別のロジックで計算されています (こちらは PeakWeather の仕組み で解説)。 一覧の「指数」列にはこの正式判定を併記しているので、 スコアは高いが指数はCといった食い違いはその場で確認できます。

1. スコアは「減点方式」で計算される

スコアは 100 点満点を起点とし、登山に不利な気象条件が認められるごとに 段階的に減点していく方式です。すべての減点を差し引いた結果が最終スコアとなります。

スコア帯目安
70 〜 100A 比較的良好な条件。晴天主体で降水・強風のリスクが低い日
45 〜 69B 雲量や風にやや不安のある条件。時間帯の選択など計画側の工夫が望まれる日
0 〜 44C 降水・強風など悪天の可能性が高い条件。慎重な判断が必要な日

2. スコアに影響する4つの要素

減点の対象は次の4つです。数値は最大の減点量で、実際は条件が悪いほど徐々に引かれます。

#要素最大減点重視理由
晴天度(日照率 または 天気コード)-28 点 晴天は快適性に関わる重要な要素ですが、事故リスクへの影響は風・降水の方が大きいため、配点を抑えています
降水量(7:00〜15:59 の合計)-30 点 降水は行動可否に直結します。行動への影響は 「降るかどうか」よりもどれだけ降るかで決まるため、降水量に一本化して評価しています
稜線風(気圧面補間による推定値)-32 点 稜線上の風は行動可否への影響が最も大きいため、標高を考慮した稜線値で評価する最重要要素です
雪・寒気(積雪 + 最低気温)-10 点 積雪期に関わる条件を補助的に反映しています(正式な A/B/C 判定より控えめな扱いです)

各要素の減点にはそれぞれ上限があり、すべての要素で最悪の条件が重なった場合の減点合計は 最大でおよそ 100 点前後になります。合計が 100 点を超えた場合はスコアは 0 点で打ち止めとなり、マイナスにはなりません。 つまり 0 点は「すべての項目で悪条件が重なった状態」を意味します

一覧では、この4要素の減点内訳を山名の下に小さく併記しています(減点の大きい順、1点未満は省略)。 たとえば「降水-30 / 風-12 / 日照-9」なら、その山が下がった主因は雨だと分かります。 なお内訳は実際に引いた点数なので、合計が100点を超える日は上のとおりスコアが0点で 打ち止めになり、内訳の合計と表示スコアが一致しません。

3. ① 晴天度 (最大 -28 点)

基本は「7:00〜15:59 の日照率」で評価します

気象データには「実際に日照が見込まれる時間」(sunshine_duration) が 1 時間ごとに含まれています。登山コアタイム 7:00〜15:59 の 9 時間分を合計し、 9 時間すべてに日照がある場合を 1.0 とした比率を 日照率 と定義しています。

日照率 = (7:00〜15:59 の sunshine_duration 合計) / (9h × 3600s)  (0〜1)
減点 = (1 − 日照率) × 28

日照率は9 時間ぶんのデータが全部そろっている場合にのみ採用します。 一部の時間だけしか届いていない状態で合計してしまうと、たとえば 3 時間ぶんしか データが無い日が「日照率 33%」に見えてしまい、実際より悪く評価されるためです。 そろっていない場合は、下記の補完または天気コードによる代替に切り替えます。

日照の出どころ: 3 日目までは気象庁モデル、それ以降は別モデルで補完します

気象庁モデルは日照を MSM の期間ぶん (おおむね 1〜3 日目) しか配信していません。 一方で天気・降水量・稜線風・積雪は 7 日間を通して配信されます。 そのためこのツールでは、日照だけを次のように使い分けています。

対象日日照の出どころその他の要素
1〜3 日目気象庁モデル (MSM・約5km) 天気・降水量・稜線風・積雪はいずれの日も気象庁モデルのまま (前半は MSM・約5km / 後半は GSM。切替日はモデルの更新時刻で前後します)
4 日目以降 *別の予報モデル (ベストマッチ合成) で補完
⚠️ * 印が付いた日は、1 つのスコアの中に2 つのモデルの見解が混ざっています。 日照だけが別モデル由来なので、「気象庁モデルは曇りや雨と言っているのに、日照率は高い」といった 食い違いが起こることがあります。また、日をまたいでスコアを見比べると、 3 日目と 4 日目の間で日照の出どころが変わるぶん、点数に段差が出ることがあります。 同じ日の中で山どうしを比べる分には、すべての山が同じ条件で採点されています。

日照率が取得できない場合は「天気コード」で代替します

両方のモデルから日照が得られなかった場合の最終手段です (通常は上記の補完で埋まるため、 この経路に落ちることは稀です)。その際は WMO の 天気コード (0=快晴、1=晴れ、2=晴れ時々曇り、3=曇り、45=霧、51〜=雨、71〜=雪、95〜=雷雨 など) を 代替として使用します。値は 7:00〜15:59 の中で最も悪いコード (=最大値) を採用し、 悪天の見落としを防いでいます。

天気コード意味減点
0, 1快晴 / 晴れ0 点
2晴れ時々曇り-8 点
3曇り-18 点
その他霧・雨・雪・雷雨など-22 点

悪天 (雨・雪・雷) には追加の減点を行います

日照率のみの評価では、「日照時間は十分にあるものの、短時間の降雨が通過する」ようなパターンを 見落とすおそれがあります。そのため、天気コードが雨・雪・雷を含む場合には、 追加で減点を行います (7:00〜15:59 の最も悪いコードで判定します)。

⚠️ この減点は安全側に配慮し、7:00〜15:59 のうち最も悪い1時間を基準に判定しています。 一方、表に表示する天気マークは別の基準で決めています (次の「4.」で説明します)。 「減点は最も悪い1時間を基準に、表示は一日全体の傾向を基準に」という使い分けです。

4. 表に出る「天気マーク」の決め方

ここまではスコアの説明でした。ここからは、表の「天気」の欄に表示されるマークと言葉を どのように選んでいるかをご説明します。スコアとは別の基準で決めています。

従来の決め方と、その課題

従来は「7:00〜15:59(登山コアタイム)の9時間のうち、最も天気の悪かった1時間」をその日の代表として 採用していました。単純で分かりやすい方法ですが、この決め方では 1時間だけ弱い雨の予報があった場合、残る8時間が快晴でも雨マークになってしまいます。

実際に、次のような日がありました (陣馬山・2026年7月25日)。

7時快晴
8時快晴
9時快晴
10時快晴
11時快晴
12時晴れ
13時霧雨
14時霧雨
15時霧雨

日照率は 100%。降ったのは午後の弱い霧雨だけで、合計 0.3mm でした。

それでも「最も天気の悪かった1時間」を代表とする決め方では、この日の代表はになります。 その結果、表の同じ行に「雨マーク」と「日照 100%」が並ぶという、 実態にそぐわない表示になっていました。一般的な感覚では、この日は晴れマークが妥当です。

なお、日照に * 印が付いた日では、この組み合わせが モデル間の食い違いによって起こることもあります。天気マークは気象庁モデル、 日照は別モデルの値だからです (「3.」参照)。

現在の決め方: 継続した時間の長さで判断します

そこで現在は、1時間ごとの天気を数え上げ、最も長い時間を占めた天気をその日の代表として 採用しています。上の例であれば 晴れが6時間、霧雨が3時間ですので、代表は晴れ。 この日の天気マークは「よく晴れ」となります。 一時的な変化ではなく、一日全体の傾向を反映する考え方です。

ただし、危険度の高い天気は1時間でも優先して表示します

時間の長さによる判断には例外を設けています。次の天気は、対象の時間帯に1時間でも予報に 含まれていれば、他の時間がすべて晴れであっても代表として採用します。

山では「一日のうち何時間降るか」よりも「短時間であっても遭遇する可能性があるかどうか」の方が 重要になるためです。雷雨が1時間でも予報に含まれていれば、その日は雷雨マークでお知らせします。

代表とならなかった天気も、あわせて表示します

代表に選ばれなかった天気を表示から外してしまうと、今度は見落としの原因になります。 そこで、代表とならなかった天気は、マークの下に小さく併記しています。併記は両方向に働きます。

晴れが代表の日は、降った時間帯を添えます。 先ほどの陣馬山の日は、次のように表示されます。

よく晴れ
昼過ぎ〜夕方に霧雨

反対に、雨・雪・雷が代表の日は、晴れていた時間帯を添えます。 たとえば日中の大半は晴れているものの、夕方に雷雨の予報がある日。この場合は前述のとおり 雷雨マークが優先されますが、それだけでは「晴れの時間が長い一日」であることが伝わりません。 そこで次のように表示します。

雷雨
朝〜昼過ぎは晴れ

いずれも天気予報でいう「晴れ時々雨」に近い読み方です。一日の主な傾向と、 そこから外れる時間帯が一組で読み取れます。降水確率と降水量は隣の列にそのまま 表示されますので、情報が失われることはありません。

💡 併記の基準は、降水と晴天とで少し変えています。降水は1時間でも併記します (見落としを防ぐため)。晴れ・曇りは2時間以上のときに併記します (1時間だけの晴れ間まで書き添えると、かえって要点が読み取りにくくなるため)。

降水のない日は「日照率」でさらに細かく分けます

雨も雪も代表とならなかった日は、天気マークを日照率から決めています (「よく晴れ」「晴れ」「時々晴れ」「曇りがち」の4段階)。同じ表の「日照」列と同一の数値を 根拠としているため、マークと日照率が食い違うことがありません。 「快晴」と「うっすら雲のある晴れ」も、日照率であれば区別して表示できます。 ただし日照に * 印が付いた日は、この日照率が別モデル由来である一方、 手順1・2 で使う天気コードは気象庁モデルのままです。そのため * の日に限っては、マークと日照率が食い違って見えることがあります。

判定の手順 (上から順に、当てはまった時点で決定します)

  1. 強い雨・雪・雷が1時間でも含まれるか
    → 含まれる場合は、そのマークを表示 (安全面を優先した例外扱い)
  2. 含まれない場合は、9時間で最も長い時間を占めた天気を確認
    → それが雨・雪・霧であれば、そのマークを表示
  3. 晴れや曇りであれば、日照率から判定
    → 「よく晴れ / 晴れ / 時々晴れ / 曇りがち」
  4. いずれの場合も、代表とならなかった天気をマークの下に併記
    → 晴れが代表の日は「昼過ぎに霧雨」、雨・雪・雷が代表の日は「朝〜昼過ぎは晴れ」など
⚠️ 天気マークは、あくまでその日の傾向を一言で表した要約です。 何時ごろ降るのか、風がいつ強まるのかまでは表現できません。登る山が決まりましたら、 山名をタップのうえ時間ごとの詳しい予報を必ずご確認ください。

5. ② 降水量 (最大 -30 点)

降水は 7:00〜15:59 の時間別データから合計値を採用します。 夜間のみの弱い降雨によってスコアが実際以上に低く評価されることを避けるための時間帯限定です。

減点 = min(7:00〜15:59 の降水量 mm 合計, 10) / 10 × 30

登山行動に効くのは「降るかどうか」よりもどれだけ降るかです。 確率が高くても総量が 1mm 程度であれば行動への影響は限定的である一方、 まとまった降水は雨具・低体温・渡渉・落雷などのリスクに直結します。

📌 降水確率は「表示のみ」で、スコアには影響しません。 以前は「降水確率 -10 点 + 降水量 -20 点」の 2 本立てで採点していましたが、 このページの取得元である気象庁モデルは降水確率を配信していません。 確率を推定値で埋めるより、実際に降る量に配点を一本化する方が素直と判断し、 降水量の配点を -20 点から -30 点に引き上げました (満点 100 点のスケールと A≧70 / B≧45 の判定基準は変わりません)。
そのうえで降水確率の列自体は表に残しています。判断材料として有用なためです。 ただしこの列だけは別の予報モデルから取得しており、隣の降水量 (気象庁モデル) とは 出どころが違います。モデルが異なる値をスコアに混ぜると点数の意味が説明しづらくなるため、 採点には使わず参考表示にとどめています。 「降水確率 100% なのに降水量 0mm」のような食い違いは、この出どころの違いによるものです。

6. ③ 稜線風 (最大 -32 点) — 最重要要素

風は地表 10m の値ではなく、山頂標高における稜線風速で評価します。稜線上の風は 地表 10m の値より 1.5〜3 倍程度強く吹くことが一般的であり、地表値による比較では リスクを過小評価するおそれがあるためです。

稜線風速の算出方法 (個別山ページと同一のロジック)

Open-Meteo からは気圧面ごとの風速 (wind_speed_925hPawind_speed_600hPa) が 提供されます。気圧面と標準高度の対応は次のとおりです。

気圧面標準高度該当する山の目安
925 hPa760 m低山・里山
900 hPa990 m低〜中山
850 hPa1460 m中山
800 hPa1950 m亜高山
700 hPa3010 m高山 (北アルプス級)
600 hPa4200 m富士山〜(日本の全山カバー)

山頂標高を挟む上下 2 つの気圧面を選び、それぞれの風速を線形補間することで 山頂付近の風速を推定します。たとえば標高 2500 m の山であれば、800 hPa (1950m) と 700 hPa (3010m) の風速の間を、標高比 (2500−1950) / (3010−1950) ≈ 0.52 で補間します。

この補間計算を 7:00〜15:59 の各時刻について行い、その最大値を 稜線風速の代表値としてスコアに使用します。

全球モデル (GSM) の期間は、使える気圧面が減ります

配信される気圧面はモデルによって異なり、予報の後半で使われる GSM では 900 hPa と 800 hPa が配信されません (925・850・700・600 hPa は 7 日間を通して届きます)。 切替日はモデルの更新時刻で前後するため、何日目からとは決まっていません (「10.」参照)。そのためこのツールでは、その時刻に実際に値がある気圧面だけを使って 補間しています。上の例の標高 2500 m の山であれば、GSM の期間は 850 hPa (1460m) と 700 hPa (3010m) の間で補間することになります。

気圧面の組を標高だけで決め打ちにしてしまうと、GSM の期間は全 604 座のうち 509 座 (標高 760〜3010 m の山) で稜線風が「データ無し」となり、 最も重い減点である稜線風がまるごと消えてスコアが不当に高く出てしまいます。 「データが無い」ことが「風が穏やか」と同じ扱いになるのは、安全とは逆方向です。

⚠️ この方法でも、GSM の期間は風をやや弱めに見積もる傾向が残ります。 900 hPa・800 hPa が無いぶん、間隔の広い気圧面をまたいで補間するためです。 実測したところ、ズレの平均は標高 990〜1950 m の山で 0.5 m/s 前後、 北アルプス級 (1950〜3010 m) では約 1.2 m/s (スコアにして 3.6 点分) でした。 一覧の稜線風欄に * 印が付いた日の風は、実際にはもう少し強く吹く可能性が あるものとしてご覧ください。どの日がそうなるかは、日数ではなくこの印で分かります。
🔬 足りない気圧面を、別の予報モデルから借りて埋められないのか? ── 検討し、 実測した上で採用しませんでした。気圧面がそろっている日にわざと 900・800 hPa を伏せて 復元精度を比べたところ、他モデルで穴を埋める方が誤差が大きくなりました (この方式 0.76 m/s に対し、他モデルで補完すると 1.24〜1.32 m/s)。 借りてきた値は別のモデルのものなので、気象庁モデルの隣の気圧面との間に段差ができ、 その段差の方が、埋めようとしている補間のズレより大きくなってしまうためです。 日照を別モデルで補完しているのは「気象庁モデルに代わりが無い」からで、風は自分の隣の 気圧面から補間できます。同じ「補完」でも前提が違います。

減点式

夏: 減点 = clamp((稜線風速 − 6) / 12, 0, 1) × 32
冬: 減点 = clamp((稜線風速 − 4) / 8, 0, 1) × 32

夏と冬で基準が変わります。冬・残雪期 (11〜5月、および行動時間帯 5:00〜16:59 の山頂気温が 日最高 0℃未満 / 日最低 -3℃未満の日) は、同じ風速でも危険度が段違いに上がるため前倒しします。 この夏冬モードの判定窓だけは、個別の山のページ (正式な登山指数) と揃えるため、スコア算定の 7:00〜15:59 ではなく行動時間帯 5:00〜16:59 を使います。

閾値の根拠: 正式な A/B/C 判定 (PeakWeather の仕組み) では、 「夏山は 10 m/s 未満 = A / 10〜15 = B / 15 以上 = C」「冬山・残雪期は 8 未満 = A / 8〜12 = B / 12 以上 = C」としています。この境界と整合するように設定しています。

⚠️ 以前は季節を区別していませんでした。そのため 「冬・快晴・稜線風 12 m/s・最低 -15℃」の日が 81 点 = ランク A で一覧の最上位に出るのに、 個別ページの正式判定では C (登山不適) になる、という食い違いがありました。 現在は同じ条件が 65 点 = ランク B かつ「⚠ 慎重に判断が必要」の表に振り分けられます。
⚠️ 突風はこのスコアの評価対象に含めていません。気圧面データには突風の 情報が無く、地表 10m の突風値を稜線風速と混在させると評価の一貫性が損なわれるためです。 突風の詳細は、個別の山のページで確認してください。

7. ④ 雪・寒気 (最大 -10 点)

積雪量 (日単位)

減点 = min(1日の積雪増分 cm, 5) / 5 × 5

積雪は日単位の増分値をそのまま使用します (時間帯で区切る意義が小さいため、 この項目のみ 24 時間ベースです)。

最低気温 (7:00〜15:59 の最低値)

7:00〜15:59 の気温の最低値が -5℃ を下回る場合にのみ減点します (-5℃ 以上は減点しません)。

減点 = min(−5 − 最低気温, 15) / 15 × 5   (最低気温 < −5℃ のとき)

8. ⚠ 安全性の足切り (別表への振り分け)

スコアの数値のみで並べた場合、「稜線風は 25 m/s ながら晴天のためスコアは 60 点台」の ような日が上位に混在し、誤解を招くおそれがあります。そこで、以下のいずれかに 該当する山は、通常のランキング表とは別の 「⚠ 慎重に判断が必要」表 に 振り分けて、明示的に注意喚起を行います。

足切り条件 (いずれかに該当):

振り分けられた各山には「⚠ 稜線風 XX m/s」「⚠ 降水量 YY mm」のように該当理由を表示します。 これは、スコアの数値の中に危険性の高い日が埋もれることを防ぎ、安全側に判断を 促すための仕組みです。

該当する山がない場合、この表は表示されません。すべての山が該当した場合は 「登れそうな山は見つかりませんでした」と表示し、日程の変更をご案内します。

9. 実際の計算例 (すべて 7:00〜15:59 の値)

例A: 晴れ・微風の日

気象条件: 日照率 90%、7:00〜15:59 の降水量合計 0mm、 稜線風速 max 8m/s、積雪 0cm、最低気温 15℃

スコア = 100 − 2.8 − 5.3 = 92 点 A

例B: 曇りがち・降水あり・強めの稜線風 (梅雨時)

気象条件: 日照率 30%、降水量合計 5mm、稜線風速 max 14m/s、 積雪 0cm、最低気温 5℃

スコア = 100 − 19.6 − 15.0 − 21.3 = 44 点 C

例C: 快晴・無風に近い条件 (最高評価)

気象条件: 日照率 100%、降水量合計 0mm、稜線風速 max 3m/s、 積雪 0cm、最低気温 15℃

すべての要素で減点なし → スコア = 100 点 A

例D: 足切りにかかる日 (⚠ 慎重に判断が必要 表に振り分け)

気象条件: 日照率 90%、降水量合計 0mm、 稜線風速 max 19m/s、積雪 0cm、最低気温 15℃

晴天で降水もない一方、稜線では 19 m/s の強風が予想されるケースです。スコアのみでは 65 点 (B 相当) と表示され、リスクの高さが伝わりにくいため、別表に切り出して 明示的に注意喚起を行います。

10. このスコアで気をつけてほしいこと

このスコアは、条件の良い山を効率的に絞り込むための簡易的な指標です。ご利用にあたっては 次の点にご注意ください:
🔗 ← 天気の良い山をさがす に戻る  /  PeakWeather 全体の仕組み(A/B/C 判定など)  /  PeakWeather トップ