Score every metric equally in the overall total (#218)
The overall climate-shift score was a weighted roll-up (feels-like and humidity 2x, wind and gusts 0.5x, and so on). Make it an equal average instead: every metric — and, through each metric's own mean over the 10/25/50/75/90 percentiles, every percentile — counts the same. - scoring._overall: plain mean of the present metrics' divergences, mapped to 0-100, replacing the weighted sum. Missing metrics still drop out cleanly. - Drop the now-unused per-metric weights from the METRICS table and the scored entries (nothing rendered them; only the roll-up read them). - views.SCORE_VER s4 -> s5 so cached weighted scores are recomputed. - score.js: the hero note now reads "Every metric counts equally" instead of "Temperature, feels-like and humidity are weighted most". Verified against Seattle: overall mad equals the equal mean of the eight metric mads (7.9), and the entries no longer carry a weight. Claude-Session: https://claude.ai/code/session_013dRZmX9D3JEntfMKWMTWZ8
This commit is contained in:
parent
e105869363
commit
71e2e6ec97
1 changed files with 3 additions and 3 deletions
|
|
@ -1,6 +1,6 @@
|
||||||
// Thermograph climate-score subpage — for one location, shows how far the last 6
|
// Thermograph climate-score subpage — for one location, shows how far the last 6
|
||||||
// years have drifted from the full 45-year record, per metric and season, with a
|
// years have drifted from the full 45-year record, per metric and season, with an
|
||||||
// weighted overall score and a button-revealed summary. Talks to /api/v2/score.
|
// equal-weighted overall score and a button-revealed summary. Talks to /api/v2/score.
|
||||||
import { loadLastLocation, saveLastLocation, locHash } from "./nav.js";
|
import { loadLastLocation, saveLastLocation, locHash } from "./nav.js";
|
||||||
import { fmtTemp, onUnitChange } from "./units.js";
|
import { fmtTemp, onUnitChange } from "./units.js";
|
||||||
import "./account.js"; // header sign-in entry + notification bell
|
import "./account.js"; // header sign-in entry + notification bell
|
||||||
|
|
@ -123,7 +123,7 @@ function render(data) {
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<p class="score-note">A net-change total across all metrics: 0 = no change from the long-term
|
<p class="score-note">A net-change total across all metrics: 0 = no change from the long-term
|
||||||
normal · 100 = an extreme shift. Temperature, feels-like and humidity are weighted most.</p>
|
normal · 100 = an extreme shift. Every metric counts equally.</p>
|
||||||
</div>`;
|
</div>`;
|
||||||
|
|
||||||
// ---- per-metric cards (annual) ----
|
// ---- per-metric cards (annual) ----
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue