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 (read with xradar's IMD backend) 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.6.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.6.0
File Size Uploaded Provenance
radarx-0.6.0.tar.gz 3.8 MB Without provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for radarx 0.6.0
File
radarx-0.6.0-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
radarx-0.6.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.6.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.6.0-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
radarx-0.6.0-cp314-cp314-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.15+ x86-64 Details
radarx-0.6.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
radarx-0.6.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.6.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.6.0-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
radarx-0.6.0-cp313-cp313-macosx_10_13_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.13+ x86-64 Details
radarx-0.6.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
radarx-0.6.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
radarx-0.6.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.6.0-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
radarx-0.6.0-cp312-cp312-macosx_10_13_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.13+ x86-64 Details

Total release size: 121.7 MB

Release files / radarx-0.6.0.tar.gz

Download URL radarx-0.6.0.tar.gz
Size 3.8 MB
Tags Source
SHA-256 checksum
How to use checksums
01feb676540d316e11ed3ffc1c71ec10f430c2e655f4963f2984b57c7cd1e471
BLAKE2b-256 checksum
How to use checksums
e0586a6c273ed8a02dac8d80d2934549cd04c37d4031a1404388591bf7271720
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.6.0-cp314-cp314-win_amd64.whl

Download URL radarx-0.6.0-cp314-cp314-win_amd64.whl
Size 8.1 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
374093a55852b8a49dd711d1134f1b2a547915ff10dc5b3339301a7bb6e4987d
BLAKE2b-256 checksum
How to use checksums
0f8d805a00f31f9264794f359ef3b78d76816d859b185026ad08ed6699c98eb8
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.6.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL radarx-0.6.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 8.5 MB
Tags CPython 3.14 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
21478ec8dbcaf68884cf5c687a3f6a8d0410c69f50dbd8f5fdc8299ad83f484c
BLAKE2b-256 checksum
How to use checksums
123e66054d4290aeb09ba0e448dd126bd9f0b3fc2030681d3c46160ec4ffef34
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.6.0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL radarx-0.6.0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 8.1 MB
Tags CPython 3.14 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
b36164470c2f1d5415d038d2af570d3edd0d47676cd8a0064e9994af9ea9c4c2
BLAKE2b-256 checksum
How to use checksums
75e8816c9702a9b281d38bea9d9e82d6dc2f3c17509a59e3a21fecb7fc83b06a
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.6.0-cp314-cp314-macosx_11_0_arm64.whl

Download URL radarx-0.6.0-cp314-cp314-macosx_11_0_arm64.whl
Size 7.2 MB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
d9188429c0ed069eafee99fc45e5efad6e0726cb0db6c542f336fedfa30bfb03
BLAKE2b-256 checksum
How to use checksums
51667d9cd0b0fe133c7ca7ea8931ff5a263752ca071e1871d08a97b9bfbf1751
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.6.0-cp314-cp314-macosx_10_15_x86_64.whl

Download URL radarx-0.6.0-cp314-cp314-macosx_10_15_x86_64.whl
Size 7.5 MB
Tags CPython 3.14 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
f2f3c8ee1570e53e812e51886b678eab0cd21e6200fe85dacc80ea9c055bca9f
BLAKE2b-256 checksum
How to use checksums
29d975fefe974d5b1be844e9bc5e7ed085abde418b56dc37752366c99cbed141
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.6.0-cp313-cp313-win_amd64.whl

Download URL radarx-0.6.0-cp313-cp313-win_amd64.whl
Size 7.9 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
08fb08607659ebf9b082ab0c571f4f89012ea731125098f8c8f8e2bc83f0cc32
BLAKE2b-256 checksum
How to use checksums
39f5cca3ec6e8364742d78c3e1d5daf0d5c395532e3df1ba2fa4f6988af71a9b
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.6.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL radarx-0.6.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 8.5 MB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
40d4cc11a53896686936b09c137bc5db514d495eaf6b4c96f56648c4fd10c625
BLAKE2b-256 checksum
How to use checksums
a7d34c1ec5f23b4e04cf831b76a020b17002199fbf6d0ff21e46477bd5233e7d
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.6.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL radarx-0.6.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 8.1 MB
Tags CPython 3.13 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
c07623a9cf57bb6d63cc0e95792ce0b08cbe46fe9ed5ab2daa881e617e4368ec
BLAKE2b-256 checksum
How to use checksums
2925ff5c761699ed942ad769bdfac5b8919d1caa858d5bec0e7d0be582c0d4f0
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.6.0-cp313-cp313-macosx_11_0_arm64.whl

Download URL radarx-0.6.0-cp313-cp313-macosx_11_0_arm64.whl
Size 7.2 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
8a57a42d018a6a5fe97c04a62b17b35a538976002f566a4afce9ed4556c75547
BLAKE2b-256 checksum
How to use checksums
ca90b5fc9d05db232038e383c8628238370a7d56724a2037987baa8334f0b402
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.6.0-cp313-cp313-macosx_10_13_x86_64.whl

Download URL radarx-0.6.0-cp313-cp313-macosx_10_13_x86_64.whl
Size 7.5 MB
Tags CPython 3.13 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
84a6cc4585c82b4ec3e5121e368fc70fd96ec44084157b0033fe49986f82800a
BLAKE2b-256 checksum
How to use checksums
d830de323e14578128ca47c719b16d724c67468a2152d2dad9d6f53951c57e87
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.6.0-cp312-cp312-win_amd64.whl

Download URL radarx-0.6.0-cp312-cp312-win_amd64.whl
Size 7.9 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
b36925b97a646755e791bc19bcb40248a41c091bb67aa74043185f9e3010b2d3
BLAKE2b-256 checksum
How to use checksums
4827f6c28d2563ace875b659b15b5b1acaea87de52c309b67232457312a2021e
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.6.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL radarx-0.6.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 8.5 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
f62919f8fb0bfff089141f1693ca114444c8f4e2a7413c74b9085f7d15605204
BLAKE2b-256 checksum
How to use checksums
c94581bdcad712dfca78e05c00734bfb432b0b8856a70a651cd251f4b4ce1d4c
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.6.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL radarx-0.6.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 8.1 MB
Tags CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
0cdd995674de520e0b767288641ac6392cbc130d088c697fb4fa15b89b84cfcc
BLAKE2b-256 checksum
How to use checksums
050568a101d296991de36b215e3b1976571b38655922fa2a2783c11f1cccbd17
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.6.0-cp312-cp312-macosx_11_0_arm64.whl

Download URL radarx-0.6.0-cp312-cp312-macosx_11_0_arm64.whl
Size 7.2 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5843ab6326cd496f3d59b209b047e995274d3605cd4265eddc27a05dbe2c82b3
BLAKE2b-256 checksum
How to use checksums
26183713f552908c5e22737e8d3c9c6e8c21bb3725ef78789b99dc922a425745
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.6.0-cp312-cp312-macosx_10_13_x86_64.whl

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

Security for radarx 0.6.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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