Skip to main content

Radarx

Radarx Logo

DOI Python Versions PyPI Version PyPI Downloads

Conda Version Conda Downloads

CI Build distribution Docs License pre-commit enabled

Black Ruff CodeFactor codecov Codacy Badge

Radarx is a Python library for weather radar data processing and visualization. It builds on xradar, which reads radar data from many formats into xarray DataTree structures, and adds gridding, retrievals and plotting through the .radarx accessor.

Project Status: Beta

Key Features

  • Fast, accurate gridding: Cone gridding interpolates within each sweep and then between sweeps, using the radar's own geometry. A compiled C++ kernel grids tens of millions of cells in a fraction of a second, with no smoothing radius to tune (dtree.radarx.to_grid()). Barnes interpolation is also available.
  • CAPPI retrieval: Constant-altitude PPIs with several methods (dtree.radarx.create_cappi()).
  • Interactive plotting: hvplot-based range-azimuth, PPI, RHI, CAPPI and Max-CAPPI views on DataArrays, Datasets and DataTrees (.radarx.plot), plus matplotlib plots.
  • Unstructured grids: Convert a sweep into a uxarray dataset with one cell per gate, for true gate footprints, area-weighted statistics and remapping (.radarx.to_uxarray()).
  • Radar fundamentals: Functions for radar equations, beam geometry, Doppler, attenuation and more (radarx.fundamentals).
  • Cloud data access: List and download NEXRAD and MRMS data from AWS (radarx.io).

Installation

You can install radarx using conda from the conda-forge channel (recommended):

conda install -c conda-forge radarx

You can also install radarx via pip from PyPI:

python -m pip install radarx

Optional features need extra packages:

python -m pip install "radarx[plot]"     # interactive hvplot plots
python -m pip install "radarx[uxarray]"  # unstructured grids with uxarray

With conda, install them directly, e.g. conda install -c conda-forge hvplot datashader or conda install -c conda-forge uxarray spatialpandas geopandas.

Barnes gridding (method="barnes") needs fast-barnes-py, which supports Python < 3.13 only: python -m pip install fast-barnes-py. The default cone gridding needs no extra packages.

Alternatively, you can install it from source by cloning the repository and running:

git clone https://github.com/syedhamidali/radarx.git
cd radarx
python -m pip install .

Building from source compiles the C++ gridding kernel if a C++ compiler is available; otherwise radarx falls back to an equivalent NumPy implementation.

Usage

Read a radar volume with xradar, then grid, retrieve and plot it with radarx:

import xradar as xd
from open_radar_data import DATASETS

import radarx  # noqa: F401  registers the .radarx accessors

filename = DATASETS.fetch("KLBB20160601_150025_V06")
dtree = xd.io.open_nexradlevel2_datatree(filename)

# 3D grid with cone gridding (500 m spacing, 0.5 to 15 km height)
grid = dtree.radarx.to_grid(
    data_vars=["DBZH"],
    x_lim=(-150e3, 150e3), y_lim=(-150e3, 150e3), z_lim=(500, 15e3),
    x_step=500, y_step=500, z_step=500,
)

# interactive plots (requires radarx[plot])
dtree.radarx.plot.ppi("DBZH", sweeps=0)
grid.radarx.plot.max_cappi("DBZH")

See the documentation for more examples, including CAPPIs, IMD data and unstructured grids.

Documentation

For full documentation, see radarx.readthedocs.io.

Contributing

Contributions are welcome! If you'd like to contribute, please follow the steps below:

  1. Fork the repository.
  2. Create a new branch for your feature or bugfix.
  3. Write tests for your changes.
  4. Submit a pull request.

Please ensure that your code passes the pre-commit hooks and test suite before submitting your PR.

License

Radarx is licensed under the MIT License. See the LICENSE file for more details.

Authors

  • Syed Hamid Ali

Citation

If you use radarx, please cite it with its Zenodo DOI, 10.5281/zenodo.14699306. The DOI covers all versions and always resolves to the latest release, so citations of every version are counted together; add the version you used to the citation.

GitHub's "Cite this repository" button (top right of the repository page) gives the citation in APA and BibTeX. Both, and the text below in the rendered documentation, are generated from CITATION.cff, so they always match the latest release.

Cite radarx as:

{{ apa_citation }}

Metadata

Release files for radarx 0.5.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for radarx 0.5.0
File Size Uploaded
radarx-0.5.0.tar.gz 3.1 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for radarx 0.5.0
File
radarx-0.5.0-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
radarx-0.5.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
radarx-0.5.0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details
radarx-0.5.0-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
radarx-0.5.0-cp314-cp314-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.15+ x86-64 Details
radarx-0.5.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
radarx-0.5.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
radarx-0.5.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details
radarx-0.5.0-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
radarx-0.5.0-cp313-cp313-macosx_10_13_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.13+ x86-64 Details
radarx-0.5.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
radarx-0.5.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
radarx-0.5.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details
radarx-0.5.0-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
radarx-0.5.0-cp312-cp312-macosx_10_13_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.13+ x86-64 Details
radarx-0.5.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
radarx-0.5.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
radarx-0.5.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details
radarx-0.5.0-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
radarx-0.5.0-cp311-cp311-macosx_10_9_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.9+ x86-64 Details

Total release size: 106.5 MB

Release files / radarx-0.5.0.tar.gz

Download URL radarx-0.5.0.tar.gz
Size 3.1 MB
Tags Source
SHA-256 checksum
How to use checksums
ef89d4a61f76ea518d2fefedc403da1abc0bee597b2a3005400525e21954fcfa
BLAKE2b-256 checksum
How to use checksums
dff6fc6914b53e20c5f4bc82e0069a40c9a5bd8ae26ce611a016d489a55d89a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp314-cp314-win_amd64.whl

Download URL radarx-0.5.0-cp314-cp314-win_amd64.whl
Size 5.2 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
dbb497d17c3525e3e970b5bf4e7998c049fb9111d437ccc59a3cb5f36ac27aa2
BLAKE2b-256 checksum
How to use checksums
4ee6a63fc286fa33a77dd9569873e3692d6fc8abcbb8531a3a9e0e558eea1636
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL radarx-0.5.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 5.6 MB
Tags CPython 3.14 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
88213bdd1cebef092032367a61ca831c361f00225ff94de758cc39010c3e41c4
BLAKE2b-256 checksum
How to use checksums
fc5ae41aeac3065ebc999832eee0e0acb3bd2e4e3c83fbbca2ea6debc91a38f4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL radarx-0.5.0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 5.4 MB
Tags CPython 3.14 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
66d0f085dd11211c428899a6ae67b6d13450938a00d4da8379eea59cb0d0339f
BLAKE2b-256 checksum
How to use checksums
ed9070b23e2c18ade5f9d73c17eb5921174ba0cd0525c4eb62b3aaf9adc56356
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp314-cp314-macosx_11_0_arm64.whl

Download URL radarx-0.5.0-cp314-cp314-macosx_11_0_arm64.whl
Size 4.8 MB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
d61e8c841e4564bf8ac68c0d5aec688eeec1c741ed0f6822d122507d33dc19a3
BLAKE2b-256 checksum
How to use checksums
06d2eb999b3c45d7cb3eaf745bd8b14eaa44005eb1da2510b6f4653cb3bedef8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp314-cp314-macosx_10_15_x86_64.whl

Download URL radarx-0.5.0-cp314-cp314-macosx_10_15_x86_64.whl
Size 5.0 MB
Tags CPython 3.14 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
24517deaaa58bd24808b02e3dd8ea24e56362af5f07112b7b6646a01ab93f0d2
BLAKE2b-256 checksum
How to use checksums
cd127cdfcab2771bc4de692baafa64778ee1cf53b231143a52ac3bec89d19b6e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp313-cp313-win_amd64.whl

Download URL radarx-0.5.0-cp313-cp313-win_amd64.whl
Size 5.1 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
80e1106575f7c32ed2850a60df40ddd5ae2b09bf5dd7bd49693d9c5290baddbc
BLAKE2b-256 checksum
How to use checksums
6b58870a9b847294d75bfe90232fa19f30812a0805ab1b2ef1c6cd31240fb53d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL radarx-0.5.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 5.6 MB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
facc44a5ccd831c9f46184d8bee385e90111ac706edac3f593abed6340777d4b
BLAKE2b-256 checksum
How to use checksums
302a9e1024d5b984ab454b64fb3e4bec6ab3c815c1d1ac5d9ef71a0452447cd8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL radarx-0.5.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 5.4 MB
Tags CPython 3.13 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
de7b88f10f0ff0701fb95aac48da19840f5123e7626cf5e87bbfba4cf274ae7c
BLAKE2b-256 checksum
How to use checksums
4e21c9d117e38f2a699757ef5123df240704db6da968060272c0591fd869a493
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp313-cp313-macosx_11_0_arm64.whl

Download URL radarx-0.5.0-cp313-cp313-macosx_11_0_arm64.whl
Size 4.8 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
48bc6d8780ee5d0937e3a66386c942bc533862e549c5983907fdbcdcc3a884f4
BLAKE2b-256 checksum
How to use checksums
d57b3e27a132114770bf874cab41aa8d51d708ee0fecbc1d333699d49f0dacce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp313-cp313-macosx_10_13_x86_64.whl

Download URL radarx-0.5.0-cp313-cp313-macosx_10_13_x86_64.whl
Size 5.0 MB
Tags CPython 3.13 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
ceccc67d58b3cbb309451c729717e11e45b352704647c39e4c78dea62d4c2b96
BLAKE2b-256 checksum
How to use checksums
c68572b99111e10b40f12d62444a14c20046a1cf559ee620116a3c97eedf6b2e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp312-cp312-win_amd64.whl

Download URL radarx-0.5.0-cp312-cp312-win_amd64.whl
Size 5.1 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
60e87c24975a5ee57deecce05623d17b72c34aab7535a10df3e24d40b979f0ea
BLAKE2b-256 checksum
How to use checksums
ff6a24bca9ecd78bcfedff9565a42a0d3a1f5b447f8f162ba8e722846718759c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL radarx-0.5.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 5.6 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
5b44a6bc8eb2134a9f9a6f42a7b744a18aa49d7e020c2d8e27319a3b29f6e45a
BLAKE2b-256 checksum
How to use checksums
55f5511a98b2a1f0cdbb9847a3edb90c72395ce8a6ab040b95de41146c29a694
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL radarx-0.5.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 5.4 MB
Tags CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
edc85e7515c8a04195bb9ba0457d87a1d0c78691e166dab53175af0fa4783242
BLAKE2b-256 checksum
How to use checksums
eba9fe96c1c1e60b7c015257d0e951da0f3f5b9e207780ee0b20108935da33e0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp312-cp312-macosx_11_0_arm64.whl

Download URL radarx-0.5.0-cp312-cp312-macosx_11_0_arm64.whl
Size 4.8 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
faee7ccdc871a9420fc57f3b64425a06e8bd6b389f454f2816ba2842b6097201
BLAKE2b-256 checksum
How to use checksums
33524aa44ca1df6954832d79d2c70b864d2f5fc147064f2a170f5e5f353df89f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp312-cp312-macosx_10_13_x86_64.whl

Download URL radarx-0.5.0-cp312-cp312-macosx_10_13_x86_64.whl
Size 5.0 MB
Tags CPython 3.12 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
eba986b4cee445824ed366294e654a696c09c85b55d7cea2dc466efe8218b733
BLAKE2b-256 checksum
How to use checksums
ac6524d9fdb61d6ea0055adb7acf9e820f66e66f9532f4bee20f231bd7d82164
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp311-cp311-win_amd64.whl

Download URL radarx-0.5.0-cp311-cp311-win_amd64.whl
Size 5.0 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
97a00b959b6da360ab02d64b69725aaf885ffdde7af0cca00cd998fe36988f62
BLAKE2b-256 checksum
How to use checksums
b6b1967a4c6b41e72d626b8506be5874a15f32d9afe35b3f6b12bace9247712b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL radarx-0.5.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 5.5 MB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
18f7b9a1de0d9a01ec727d1105cf932331fc0d70631e82178f5c5aca6cdc3442
BLAKE2b-256 checksum
How to use checksums
906382214950dad60c1a82e201cdec9743f3289390752da42f15e07e25de6175
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL radarx-0.5.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 5.3 MB
Tags CPython 3.11 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
bacd07ca7216fd2def57a3b0d7d031b2e64c40e282f7ba31b9137604f5723ea7
BLAKE2b-256 checksum
How to use checksums
6203272c000cbd64fafcbc1e3214b8286d9ae49bcb09d8516b80f0e57e53b1ef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp311-cp311-macosx_11_0_arm64.whl

Download URL radarx-0.5.0-cp311-cp311-macosx_11_0_arm64.whl
Size 4.7 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
6216ffb30851f4166b1123bc8ce090e487da736819ca6ae08d95d8bd70ab84c1
BLAKE2b-256 checksum
How to use checksums
ba5d9a4d7ada72e0045bc9d8f2f211c3bab9683e2fc5bc6185b195e266525322
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / radarx-0.5.0-cp311-cp311-macosx_10_9_x86_64.whl

Download URL radarx-0.5.0-cp311-cp311-macosx_10_9_x86_64.whl
Size 4.9 MB
Tags CPython 3.11 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
fb14284789e4480ea70c2e289a396fcd26772bfb765948225c7bae56b390ed7f
BLAKE2b-256 checksum
How to use checksums
fc27a7b9bb886a2abd86885a7e51e77f22ca9816de5869b1e976e00b1b0e0997
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page