Skip to content

Recolor desert farm Stommel with colorblind-safe earth tones#28

Merged
MDunitz merged 1 commit intomainfrom
feat/desert-farm-earth-tones
Apr 29, 2026
Merged

Recolor desert farm Stommel with colorblind-safe earth tones#28
MDunitz merged 1 commit intomainfrom
feat/desert-farm-earth-tones

Conversation

@madsCodeBuddy
Copy link
Copy Markdown
Collaborator

Summary

Replace ENERGY_COLORS palette in docs/build_desert_farm.py with a colorblind-safe earth-tone palette and regenerate the rendered HTML.

Palette change

Energy type Before After Luminance
Chemical #0F793D forest green #7A8C5C olive 129
Radiative #FFCC33 gold #E5C16E warm sand 194
Thermal #CC3333 red #7B3F3F deep rust 81
Mechanical #336699 steel blue #4F6B82 slate 101

All six pairwise luminance gaps are ≥20, so the four colors remain distinguishable in grayscale and under all three CVD types (protanopia, deuteranopia, tritanopia) — verified by Machado et al. (2009) CVD simulation.

The CSS footer link color (docs/build_desert_farm.py L332) was also updated to the new Chemical/olive value to keep the page accent consistent.

Files changed

  • docs/build_desert_farm.py — palette dict + footer CSS
  • docs/desert_farm_stommel.html — regenerated output (size unchanged: 216,861 B)

Out of scope

  • The leverage-points CSV (data/datasets/desert_farm_leverage_points.csv) — its Color column (#013333/#006666/#FF9900) is already colorblind-safe (verified pairwise luminance gaps 35.5/94.6/130.0). No change.
  • The Boyd-orientation demo and add_legend placement — separate PR.

ENERGY_COLORS palette swapped for a muted earth-tone palette tuned for
deuteranopia/protanopia separation by luminance:

  Chemical   #0F793D (forest green)  -> #7A8C5C (olive,        L≈129)
  Radiative  #FFCC33 (gold)          -> #E5C16E (warm sand,    L≈194)
  Thermal    #CC3333 (red)           -> #7B3F3F (deep rust,    L≈81)
  Mechanical #336699 (steel blue)    -> #4F6B82 (slate,        L≈101)

All pairwise luminance gaps >=20 -> distinguishable in grayscale and
under all three CVD types. Footer link color updated to match.

Regenerated docs/desert_farm_stommel.html.
@MDunitz MDunitz merged commit 8b84149 into main Apr 29, 2026
4 checks passed
madsCodeBuddy added a commit that referenced this pull request Apr 29, 2026
The merge of PR #30 (refactor) resolved its conflict with PR #28 (earth
tones) by taking the refactor branch's old ENERGY_COLORS values
(#0F793D / #FFCC33 / #CC3333 / #336699), reverting #28's earth-tone
palette in the dict. The CSS footer link color was preserved as
#7A8C5C, leaving the file in an inconsistent state where the legend
swatches and ellipse fills used the old palette while the page accent
used the new one.

Restoring the earth-tone palette and regenerating the HTML:

  Chemical   #0F793D -> #7A8C5C  (olive)
  Radiative  #FFCC33 -> #E5C16E  (warm sand)
  Thermal    #CC3333 -> #7B3F3F  (deep rust)
  Mechanical #336699 -> #4F6B82  (slate)

Same palette and same colorblind-safety reasoning as PR #28.
madsCodeBuddy added a commit that referenced this pull request Apr 29, 2026
* fix: restore earth-tone palette in ENERGY_COLORS after PR #30 merge

The merge of PR #30 (refactor) resolved its conflict with PR #28 (earth
tones) by taking the refactor branch's old ENERGY_COLORS values
(#0F793D / #FFCC33 / #CC3333 / #336699), reverting #28's earth-tone
palette in the dict. The CSS footer link color was preserved as
#7A8C5C, leaving the file in an inconsistent state where the legend
swatches and ellipse fills used the old palette while the page accent
used the new one.

Restoring the earth-tone palette and regenerating the HTML:

  Chemical   #0F793D -> #7A8C5C  (olive)
  Radiative  #FFCC33 -> #E5C16E  (warm sand)
  Thermal    #CC3333 -> #7B3F3F  (deep rust)
  Mechanical #336699 -> #4F6B82  (slate)

Same palette and same colorblind-safety reasoning as PR #28.

* Update header description to match earth-tone palette

The page header had 'chemical (green), radiative (gold), thermal
(red), mechanical (blue)' baked into the prose. After the palette
change to olive/sand/rust/slate, that text would describe colors
that no longer match the rendered ellipses.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants