Understanding the Data Behind the Display

Alicia Skiver-Palmer

Summer Intern 2026

July 20, 2026

Goal

My goal this week was to add a professional upper-air sounding analysis to the Storm Pointer: Chase Command Center. I wanted users to be able to click anywhere on the map and instantly view a Skew-T, hodograph, and atmospheric parameters for that exact location while continuing to improve the dashboard and overall user experience. 

Workflow

  • Researched different approaches for integrating sounding data into the Storm Pointer dashboard.
  • Initially planned to use observed Skew-Ts from the National Weather Service and University of Wyoming, but determined they would not accurately represent user-selected chase locations because weather balloon launches are limited in location and frequency.
  • Installed Anaconda and created a dedicated Python environment for the sounding service.
  • Built a backend that retrieves HRRR forecast model data for a user-selected location.
  • Used MetPy to generate a Skew-T, hodograph, and atmospheric parameter report from the HRRR data.
  • Integrated the sounding products into the dashboard with full-screen viewing and automatic updates when a new target is selected.
  • Tested and validated the sounding output while troubleshooting issues with model data retrieval, chase score updates, and dashboard integration.
  • Completed UI improvements, including the new Storm Pointer branding and better chase score.

Prompts Used

ChatGPT

  • Helped research upper-air sounding data sources and determine the best implementation.
  • Explained how professional sounding software generates Skew-Ts.
  • Verified that the generated soundings were meteorologically realistic.
  • Assisted with troubleshooting sounding calculations and dashboard improvements.
  • Work through errors (provided screenshots)

Cursor

  • Built the HRRR sounding service.
  • Implemented Skew-T, hodograph, and parameter generation using MetPy.
  • Connected map selections to sounding generation.
  • Added full-screen viewing for sounding products.
  • Updated the dashboard logo and interface.
  • Fixed bugs throughout development.

    What Worked

    • Successfully integrated HRRR model soundings into the Storm Pointer dashboard. It does take between 1 and 2 minutes for the sounding information to be generated.
    • Users can now click anywhere on the map and generate a forecast sounding for that exact location.
    • The sounding service extracts atmospheric temperature, dew point, pressure, wind speed, and wind direction throughout the atmosphere directly from the HRRR model.
    • Meteorological parameters such as CAPE, CIN, LCL, LFC, EL, PWAT, lapse rates, storm-relative helicity, bulk shear, and storm motion are calculated automatically using MetPy.
    • Added fullscreen views for the Skew-T, hodograph, and parameter tables.
    • Connected target selection so the chase score, target information, routing, and sounding all update together.
    • Completed the new Storm Pointer branding and logo integration.

    What Didn’t Work

    The sounding feature was by far the most challenging part of the project.

    Some of the issues encountered included:

    • The first Skew-T generated was inaccurate because the atmospheric profile was not being sampled correctly.
    • Multiple debugging sessions were required before the sounding matched (or closely matched) what the University of Wyoming or NWS had for the nearest location to the selected location
    • Connection errors occasionally interrupted upper-air sounding generation and made it difficult to get all the parts to work together.
    • HRRR forecast availability occasionally caused errors when a complete model run was not yet available.
    • During development, the chase score unexpectedly returned 0 for every category after updating the target selection logic, and required additional debugging before scoring worked correctly again.

    Lessons Learned

    This project taught me how much work goes into creating professional meteorological tools. Taking weather forecasting and meteorology courses, you learn to read skew Ts, but not an in-depth explanation of how they are generated. I learned how to draw hodographs in a mesoscale forecasting class, so it is cool to see the platform do it for me.

    I initially assumed using existing weather balloon soundings would be the best solution, and the quickest and least complicated, but after researching how limited those observations are, I realized they would not provide accurate information for a storm chaser selecting any location on the map at any given time.

    Building a sounding service from HRRR model data required learning a new Python environment with Anaconda, understanding how forecast models store atmospheric profiles, and validating the generated soundings to ensure they accurately represented the forecast atmosphere.

    Images/Video

    Video demo of Storm Pointer