Wednesday, June 12, 2013

Tornado Travel Map

Here's a breakout of the direction in which tornadoes have traveled over the last 63 years. A tornado's coloration depends on it's bearing on the compass.  The compass provides an overall reference of tornado travel.

The relative proportion of historic tornadoes by their direction of travel.

Large 1024 x 709
Larger 1600 x 1108
Even Larger 2048 x 1418
Bonkers 4986 x 3453

The data comes from archived tornado data via the NOAA/NWS Storm Prediction Center.  Not surprisingly, the lion's share of storms travel in a northeastern direction along with the prevailing winds (and carry F5 storms at double the rate as the other quadrants).  I was interested in seeing just how great a proportion actually do.  Beyond that, I was interested in seeing regional trends where historic storms have bucked that NE trend and traveled some other direction.
Some other things I noticed:
Tornadoes moving towards the Northwest tend to occur in the western great plains and along the Atlantic Coast (I'm told the coastal tornadoes are likely associated with storms spawned by landfall hurricanes). Southeast-travelling tornadoes cluster more heavily in the northern plains states than in the south (an exception to the overall trend of all tornadoes).
By the way, the idea of looking at tornado travel angle came to me from Robert Staskowski, a meteorologist in New York, who wrote with the idea of considering the average tornado bearing as an input to carve up the country into tornado warning zones.  It is a good idea and this is a tangent of that process.

Nerd Terrain from here on out...

I downloaded a fresh set of yearly tornado data (1950 - 2012) from the Storm Prediction Center's website. They make it available as 12 separate CSV files along various year spans.  I aggregated them into a single set that you can download as a CSV (5.6 mb) or Excel (8.2 mb) file -saving you no less than two minutes of copying and pasting.
The basemap satellite imagery comes from NASA's totally great Visible Earth.

After combining the historic archive into a single CSV file (each record having a starting and ending coodinate), I converted it into a geographic great circle line layer.
In QGIS, (a sweet open mapping software package that actually has an interface for stooges like me) I plugged in this formula, provided by Simbamangu, to calculate a 0° - 360° bearing for each tornado track. I then removed any tornado record that were incomplete (missing start or end data for any of the storms) or impossible  (0 by 0 lat longs -which is off the coast of Africa in the crowded waters of junk coordinates).
In Excel, I made a pivot table that aggregated the weighted (I weighted storms by their travel distance and F-scale) count of all the storms at each degree of the compass.  Then I made a column chart of the 360 aggregated storm counts (I trimmed data for 0° because there was an anomalous artifact of data collection whereby the aggregated storms at that bearing dwarf any other bearing by an order of magnitude).

An Excel chart of 360 columns, each aggregating the storms that traveled at that bearing.

In the GIMP image processing tool, I added a color gradient transitioning from due North to East to South to West and back to North.  And since I don't know how to actually make a radial chart, I used a filter to bend it into a circle (Filters > Distort > Polar Coordinates).

Excel chart warped in the GIMP.

I sourced the satellite imagery from NASA and projected it into Albers Equal Area.  I used satellite imagery as a basemap because topography is an important factor in tornado formation, and also provides useful locational context (if it doesn't add, don't add it). Then I did my typical desaturation so overlay data is not visually eclipsed. Here is a how-to and why-to in that regard.

Then I isolated the tornado tracks by their general orientation (0 - 89, 90 - 179, yada yada), creating four separate sets of tornado tracks -one set per quadrant.  I scaled the line width by severity and assigned a color according to the direction that it traveled (see the chart section above).
I arranged the four maps with the compass chart in the center, marking out their bearing quadrants.

False Start
I'd started out by kriging a single interpolation layer (then faded by relative density) but came to the realization that a linear interpolation of radial data is geometric heresy.  It looked pretty cool (reminded me of crinkled cellophane), but was nonsense. Interpolating between 1° and 359°, which are essentially identical, swings you the long way around through 180° -which is the opposite of the truth. Geometry can get weird.

Abandoned result of kriging for local average tornado travel direction.

Abandoned frequency layer of historic tornadoes (made in a browser by trusty ol' Visual Fusion).

Abandoned result of masking the kriging layer with the frequency layer.

Geography side-note: Kriging was invented by Danie Krig as a way of more efficiently deciding where to dig for gold with only sample pits to go on.  It was his master's thesis and he died this year (on the same day as my Mom, it turns out) after a long and illustrious life.

If you are interested in tornadoes, you might find the maps and animations available here useful.


  1. Awesome work, I read about this in the Yahoo article. Is the hurricane map in the article on your blog also?

    1. Never mind, I found it on your Flickr page!

  2. Awesome work. Any chance you broke this data out by month? It would be interesting to see of seasonal weather patterns influence track.

    1. Thanks. I've not broken out direction by month, but I have broken out all storms by month (or season) to see the density migrate north. Here's what that looks like:

      Also an animation through each month:

  3. Good post I think it’s a very best stay for their visitors. I like your blog site. I am a tourist and I just come back from multi day bus toursIt’s a really best time period for me, and your site is also good. Thanks for your nice sharing.