FireWxPy: A Python Package For Fire Weather Analysis And Forecasting

FireWXPy logo

FireWxPy is a user friendly, open source Python package to create visualizations of data specific to fire weather and fire weather forecasting. The package is built to support a wide range of fire weather-focused visualizations for any state or GACC Region. Users can also create custom boundaries using latitude and longitude coordinates. Version 1.4.3, released February 1, 2025, allows users to create the following types of graphics (click on the thumbnail images to expand them):

Real-Time Mesoscale Analysis (RTMA) Graphics

National Weather Service (NWS) Forecast Graphics

Storm Prediction Center (SPC) Fire Weather Products

GFS/GEFS/NAM/CMCENS Forecasts including a unique Favorable Fire Weather Conditions Forecast where the user defines high wind and low relative humidity thresholds as well as a temperature threshold if the user wishes to include that as well. The user can also use wind gusts instead of sustained winds. Here is an example of the GFS 0.25x0.25 degree Favorable Fire Weather Forecast looking at the South Ops Geographic Area using the default RH <= 15% & Wind Speed>= 25 MPH overlayed onto the GACC & PSA & Counties reference system.

Daily Weather Summaries

Observed Sounding Plots/p>

Solar Information Plots

Large Fire Potential Assessments (Santa Ana Wildfire Threat Index) (Rolinski et al., 2016)

Why I Created FireWxPy

Early in my career at the South Operations Geographic Area Coordination Center (South Ops) in Riverside, CA, I developed a set of Python scripts to generate fire weather graphics specific to my region. What started as a personal tool for creating visual aids evolved into something I realized could benefit meteorologists everywhere. I wanted to address three key challenges:

  1. Automate repetitive work — Manually generating graphics every day takes time. FireWxPy simplifies this process.
  2. Improve accessibility — Many meteorologists don't specialize in coding, so I focused on making FireWxPy easy to use.
  3. Enhance communication — Good visuals help fire managers understand weather trends and risks more effectively.

With FireWxPy, a single weather graphic that once required 150-300 lines of code can now be generated with as little as two lines of Python code. My philosophy?

Let the functions do the work, so you don't have to.

Interesting Problems I Solved Along The Way

This project has been and will continue to be a continuous learning experience. I was only in the initial stages of teaching myself Python programming when this project began. I learned how to work with GRIB, netCDF, pandas, xarray, metpy, siphon, pygrib etc. The biggest learning hurdle wasn't so much learning the aforementioned things, it was learning how to upload and maintain a Python package on the conda-forge channel of anaconda since my degree is in meteorology and not computer science or software engineering. I remember when Python 3.13 was released, new errors arose with FireWxPy and I had to troubleshoot and coordinate with colleagues on how to resolve the issue since the issue was with one of the FireWxPy dependencies. Special shout out to Unidata team for taking the time to answer my occasional questions on GitHub.

Examples of Using FireWxPy and Additional Resources

I have lots of examples and documentation for FireWxPy on my GitHub page as well as YouTube tutorials on the South Ops YouTube channel.

How To Get FireWxPy

The only way to properly install FireWxPy is through anaconda or miniconda3. FireWxPy is on the conda-forge channel of anaconda so once a user downloads anaconda or miniconda3, they must add the conda-forge channel. You can do this by typing the following command into the miniconda3/anaconda prompt:

conda config --add channels conda-forge
conda install firewxpy.

FireWxPy does not work via pip since pygrib is a dependency for firewxpy and pip cannot build the wheel for pygrib.

Contact Information

I am more than willing to answer questions and/or be contacted by community members with regards to FireWxPy. They can contact me via email at: eric.drewitz@usda.gov

About Eric Drewitz
I'm a Predictive Services Meteorologist for the USDA/USFS. Predictive Services Meteorologists specialize in fire weather across the 10 Geographic Area Coordination Centers (GACCs) across the country. We provide decision support for the strategic planning of resources for wildland firefighting that include daily weather forecast products, fuels information, daily weather briefings and seasonal outlooks. Every meteorologist in our office also has their own program area in which they specialize in. My program area is Python programming where I create new data visualizations to help with the communication of weather information. One of my coworkers made a page called "Meet the Mets" at South Ops which you can also check out for more information: https://gacc.nifc.gov/oscc/predictive/weather/myfiles/MeettheMetTeam.pdf.

Comments:

Post a Comment:
  • HTML Syntax: Allowed
News@Unidata
News and information from the Unidata Program Center
News@Unidata
News and information from the Unidata Program Center

Welcome

FAQs

Developers’ blog

Take a poll!

What if we had an ongoing user poll in here?

Browse By Topic
Browse by Topic
« February 2025
SunMonTueWedThuFriSat
      
2
4
5
6
7
8
9
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
       
Today