Skip to main content

Radarx

Radarx Logo

DOI Python Versions PyPI Version PyPI Downloads

Conda Version Conda Downloads

CI Build distribution RTD Version License pre-commit enabled

Black Ruff CodeQL CodeFactor codebeat badge codecov Codacy Badge

Radarx is a Python library built for radar data processing and visualization. The library integrates tightly with xradar and leverages xarray and DataTree structures to enable easy and efficient manipulation of radar sweeps and volume data.

Project Status: Beta

Key Features

  • Xradar Integration: Uses xradar for reading radar data in different formats, providing a consistent interface for various radar types.
  • Interactive Plotting: Optional hvplot-based PPI, RHI, CAPPI and Max-CAPPI views via ds.radarx.plot.
  • Volume Scanning: Utilities to process radar sweeps and group them into complete volume scans.
  • Data Gridding: Provides tools for converting radar data to regular Cartesian grids, supporting complex radar geometries.
  • Xarray and DataTree Structured Data: Radar data is returned as xarray datasets, organized into DataTree structures for easy navigation and analysis.

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

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 .

Usage

Here's a simple example of how to use Radarx with xradar to load radar data, grid it and plot it interactively:

import xradar as xd
import radarx  # noqa: registers the ``.radarx`` accessors

# IMD radar data is read by xradar (releases after 0.12.0)
dtree = xd.io.open_imd_datatree(["radar_file.nc", "radar_file.nc.1", "radar_file.nc.2"])

# Grid the volume and plot an interactive Max-CAPPI (requires hvplot)
grid = dtree.radarx.to_grid(data_vars=["DBZH"])
grid.radarx.plot.max_cappi("DBZH")

Radarx leverages xradar to handle radar file formats and integrates smoothly with xarray and DataTree for organizing and analyzing radar data.

Xradar Integration

Radarx makes use of the powerful xradar library for radar data ingestion and format handling. This ensures that the package is flexible and can handle a variety of radar data formats, including ODIM_H5, Sigmet, and others. For more advanced users, xradar functionality can be directly accessed to extend Radarx's capabilities.

Documentation

For full documentation, please visit the Radarx Documentation.

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

Syed, H. A. (2025). Radarx: An Xarray-based Python package for radar data processing (v0.2). Zenodo. https://doi.org/10.5281/zenodo.14699312

@software{syed_2025_14699312,
  author       = {Syed, Hamid Ali},
  title        = {Radarx: An Xarray-based Python package for radar
                   data processing
                  },
  month        = jan,
  year         = 2025,
  publisher    = {Zenodo},
  version      = {v0.2},
  doi          = {10.5281/zenodo.14699312},
  url          = {https://doi.org/10.5281/zenodo.14699312},
  swhid        = {swh:1:dir:eb4e11846680cf6416be5940f36b363f74e1a3ec
                   ;origin=https://doi.org/10.5281/zenodo.14699306;vi
                   sit=swh:1:snp:f6755852f0e71678ed579651ec997ac4496f
                   3b30;anchor=swh:1:rel:ebd79cd3cf49a7e8a5e9b9576fb7
                   7f7c8bd0227e;path=syedhamidali-radarx-ec92870
                  },
}

Metadata

Release files for radarx 0.3.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.3.0
File Size Uploaded
radarx-0.3.0.tar.gz 314.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for radarx 0.3.0
File Interpreter ABI Platform
radarx-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 386.3 kB

Release files / radarx-0.3.0.tar.gz

Download URL radarx-0.3.0.tar.gz
Size 314.2 kB
Tags Source
SHA-256 checksum
How to use checksums
f6298153c365eac12ec5beeacd55dc4c07c9ccdd3a56f117ee64404a15c7bd62
BLAKE2b-256 checksum
How to use checksums
c07458c92e9b0a3e9fd7fb98f028e95ec52f5edad61ca3ad53efbe637d09df67
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release files / radarx-0.3.0-py3-none-any.whl

Download URL radarx-0.3.0-py3-none-any.whl
Size 72.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
928f50cab5fcfeab87794093bb438fbe54c27ccc793bb3e93c0488a28c356759
BLAKE2b-256 checksum
How to use checksums
bf40391c1bd565e0bd738516d893c729d4a861aba886dce53577666f2e227fe8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14
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