In current view
loading 75 years of records…
deaths
injuries
longest track
strongest

Enhanced Fujita scale

EF2111–135 mph
EF3136–165 mph
EF4166–200 mph
EF5>200 mph
75 years of significant U.S. tornadoes — 13,182 records, one declarative HTML file, zero build.
All 13,182 dots come from one om-layer element — the EF bands are a declarative threshold scale, filtered on the GPU.
<om-layer id="tornadoes" type="ScatterplotLayer"
  data="tornadoes-ef2plus.csv"
  get-fill-color="scale($mag, threshold, …)"
  filter-field="mag" filter-range="[2, 5]">
</om-layer>
One attribute drives everything. The slider, the preset buttons, and the story you're watching all emit the same action — layer, stats, histogram, and undo history follow.
<om-widget type="filter" layer="tornadoes" field="mag">

ctx.emit("filter-layer",
  { field: "mag", range: [4, 5] });
Now watch it climb the Enhanced Fujita scale —
EF5 — Joplin, Missouri · May 22, 2011
158 killed, 1,150 injured along a 21.6-mile track — the deadliest U.S. tornado since modern records began, one of only 59 EF5s in 75 years.
Try it today: OnlyMapJS on npm at @nika-js/onlymap
npm install @nika-js/onlymap

This map needs JavaScript.
Open this file from a web server in a browser such as Chrome, Safari, or Firefox.