Metadata-Version: 2.1
Name: NEXRAD-quickplot
Version: 0.6.2
Summary: easily download and plot NEXRAD weather radar reflectivity data
Home-page: https://github.com/scivision/nexrad-quick-plot
Author: Michael Hirsch, Ph.D.
License: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Science/Research
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Topic :: Scientific/Engineering :: Atmospheric Science
Requires-Python: >=3.6
Description-Content-Type: text/markdown
Provides-Extra: tests
Provides-Extra: plots
Requires-Dist: python-dateutil
Requires-Dist: numpy
Requires-Dist: imageio
Requires-Dist: scikit-image
Requires-Dist: xarray
Provides-Extra: plots
Requires-Dist: cartopy; extra == 'plots'
Requires-Dist: matplotlib; extra == 'plots'
Requires-Dist: seaborn; extra == 'plots'
Provides-Extra: tests
Requires-Dist: pytest; extra == 'tests'
Requires-Dist: nose; extra == 'tests'
Requires-Dist: coveralls; extra == 'tests'
Requires-Dist: flake8; extra == 'tests'
Requires-Dist: mypy; extra == 'tests'

[![Travis-CI](https://travis-ci.org/scivision/nexrad-quick-plot.svg?branch=master)](https://travis-ci.org/scivision/nexrad-quick-plot)
[![Coveralls.io](https://coveralls.io/repos/github/scivision/nexrad-quick-plot/badge.svg?branch=master)](https://coveralls.io/github/scivision/nexrad-quick-plot?branch=master)
[![AppVeyor Build Station](https://ci.appveyor.com/api/projects/status/jmiiyri2xqdvu5wm?svg=true)](https://ci.appveyor.com/project/scivision/nexrad-quick-plot)
[![image](https://img.shields.io/pypi/pyversions/NEXRAD-quickplot.svg)](https://pypi.python.org/pypi/NEXRAD-quickplot)
[![image](https://img.shields.io/pypi/format/NEXRAD-quickplot.svg)](https://pypi.python.org/pypi/NEXRAD-quickplot)
[![Maintainability](https://api.codeclimate.com/v1/badges/d2df020d3c1e6522412a/maintainability)](https://codeclimate.com/github/scivision/nexrad-quick-plot/maintainability)
[![PyPi Download stats](http://pepy.tech/badge/NEXRAD-quickplot)](http://pepy.tech/project/NEXRAD-quickplot)

# Nexrad Quick-plot

Easy Python download and plot NEXRAD compositive reflectivity. Uses the
RGB high resolution North American PNG images.

tested with `pytest`, `flake8` and `mypy` type checking.

## Install

    python -m pip install -e .

## Usage


### Download NEXRAD data

Get 
[NEXRAD reflectivity data](https://mesonet.agron.iastate.edu/docs/nexrad_composites/) 
with parallel download:

    python download-nexrad.py start stop outdir

example: download from 2018-01-01 to 2018-01-02 to `~/data/nexrad`:

    python download-nexrad.py 2018-01-01T00 2018-01-03T00 ~/data/nexrad

### Plot NEXRAD reflectivity data

(georegistered via Cartopy)

Plot all data in directory:

    python plot-nexrad.py ~/data/nexrad/

Plot a specific file (subplots if multiple files specified):

    python plot-nexrad.py ~/data/nexrad/2018-01-01T12:35:00.png

Plot via file glob match:

    python plot-nexrad.py ~/data/nexrad/ -pat 2018-01-01T12*.png

Keogram (specify lat or lon and value):

    python plot-nexrad.py ~/data/2017-08-21/nexrad/ -keo lat 40 

## Coordinates

EPSG:4326 coordinates (WGS84) are in .wld files, which are generally the
same for wide time spans of data. The [.wld
format](https://mesonet.agron.iastate.edu/docs/radmapserver/howto.html#toc3.3)
is like:

    0.005 (size of pixel in x direction)
    0.0 (rotation of row) (Typically zero)
    0.0 (rotation of column) (Typically zero)
    -0.005 (size of pixel in y direction)
    -126.0 (x coordinate of centre of upper left pixel in map units--here it's WGS84 longitude)
    50.0 (y coordinate of centre of upper left pixel in map units--here it's WGS84 latitude)

## Notes


### Mass image downscaling

For initial analysis, the original Nexrad image size of 12200 x 5400
pixels may be too high to complete in a reasonable time. I choose to
downsize by a factor of 10, which takes a long time, but is a one-time
process.

```bash
mkdir orig
cp *.png orig

nice mogrify -scale 10% "*.png"
```

If you have trouble with this being very slow, try:

```bash
MAGICK_TEMPORARY_PATH=/run/shm nice mogrify -scale 10% "*.png"
```




