Radarx
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.
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:
- Fork the repository.
- Create a new branch for your feature or bugfix.
- Write tests for your changes.
- 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)
| File | Size | Uploaded | |
|---|---|---|---|
| radarx-0.5.0.tar.gz | 3.1 MB | Details |
Built distributions (wheels)
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
|