Skip to main content

Jupyter notebooks and helper library for HF propagation research using IONIS datasets

Project description

ionis-jupyter

Binder PyPI License: MIT

Jupyter notebooks and helper library for HF propagation research using IONIS datasets.

What's Inside

175+ million propagation signatures spanning 18 years (2008-2026), ready for analysis:

Dataset Signatures Source SNR Type
WSPR 93.6M 10.8B WSPR spots Measured (-30 to +20 dB)
RBN 67.3M 2.2B CW/RTTY spots Real measured (8-29 dB)
Contest 5.7M 234M SSB/RTTY QSOs Anchored (+10/0 dB)
PSKR Growing PSK Reporter MQTT Measured (-34 to +38 dB)
DXpedition 260K 3.9M rare-grid paths Real measured

Plus solar indices (1932-2026), DSCOVR solar wind, and IRI-2020 ionospheric atlas.

Quick Start

Option 1: Binder (No Install)

Click the Binder badge above to launch notebooks in the cloud — nothing to install.

Option 2: Local Install

# Install packages
pip install ionis-jupyter ionis-mcp

# Download datasets (choose your bundle)
ionis-download --bundle minimal      # ~430 MB: contest + grids + solar
ionis-download --bundle recommended  # ~1.1 GB: + pskr + dscovr
ionis-download --bundle full         # ~15 GB: all 9 datasets

# Launch Jupyter
jupyter lab

Notebooks

Notebook Description Audience
01-getting-started Load data, basic queries Everyone
02-band-openings Hour×month heatmaps per band Contesters, DXers
03-solar-correlation SFI effect on propagation Researchers
04-path-analysis TX→RX specific path deep dive Path planners
05-greyline-terminator Day/night boundary propagation Low-band DXers
06-tid-detection SNR variance for TID research HamSCI, ionospheric science
07-cross-source-comparison WSPR vs RBN vs Contest vs PSKR Data scientists
08-distance-vs-snr Signal decay with distance Antenna analysts
09-seasonal-patterns Summer vs winter, solar cycle Long-term researchers
10-ionis-model-api Query live IONIS predictions API users

Helper Library

The ionis_jupyter package provides utilities for common tasks:

from ionis_jupyter import (
    # Data loading
    load_dataset, list_datasets,

    # Grid calculations
    grid_to_latlon, grid_distance, grid_bearing,

    # Solar geometry
    solar_elevation, is_dark, classify_path,

    # Plotting
    plot_band_heatmap, plot_solar_correlation,
    plot_path_profile, plot_distance_snr,
)

# Load WSPR signatures
wspr = load_dataset("wspr")
print(f"Loaded {len(wspr):,} signatures")

# Filter to 20m band
wspr_20m = wspr[wspr["band"] == 107]

# Plot hour×month heatmap
plot_band_heatmap(wspr_20m, band=107)

Data Directory

By default, datasets are stored in ~/.ionis-mcp/data/. Override with:

export IONIS_DATA_DIR=/path/to/your/data

Or download directly:

# Specific datasets
ionis-download --datasets wspr,rbn,solar

# To custom directory
ionis-download --bundle minimal --data-dir /my/data/path

For Researchers

This repository is designed for:

  • PhD students studying ionospheric propagation
  • HamSCI researchers analyzing TIDs, eclipse effects, greyline
  • Data scientists needing labeled propagation data for ML
  • Contesters analyzing historical band conditions
  • Amateur radio operators exploring propagation patterns

Citation

If you use these datasets in research, please cite:

IONIS-AI Propagation Datasets.
Greg Beam, KI7MT. IONIS-AI Project.
https://ionis-ai.com

Data sources: WSPRNet, Reverse Beacon Network, PSK Reporter, CQ Contests.

Links

License

MIT — see LICENSE.

Datasets are CC BY 4.0 (see per-directory LICENSE.md files on SourceForge).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ionis_jupyter-0.2.1.tar.gz (277.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ionis_jupyter-0.2.1-py3-none-any.whl (24.8 kB view details)

Uploaded Python 3

File details

Details for the file ionis_jupyter-0.2.1.tar.gz.

File metadata

  • Download URL: ionis_jupyter-0.2.1.tar.gz
  • Upload date:
  • Size: 277.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ionis_jupyter-0.2.1.tar.gz
Algorithm Hash digest
SHA256 9510ccb5caf81e76286e90ad003f24d808938c8a1c64d008b8ba7cd3c9c6cefd
MD5 af622ebada5cae7c7765e24e00fb6087
BLAKE2b-256 db9171d1262bd8ae922582f7ddc507dddb05f8875876d828f872a9d2cb6460aa

See more details on using hashes here.

Provenance

The following attestation bundles were made for ionis_jupyter-0.2.1.tar.gz:

Publisher: publish.yml on IONIS-AI/ionis-jupyter

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ionis_jupyter-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: ionis_jupyter-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 24.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ionis_jupyter-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 888bd4a775ef765890638631e0c861888e1d47ccd20f86e65388d56acc9109e6
MD5 a3af4b109e407c50119422654e61018a
BLAKE2b-256 d31e535cc4df2cfed42c0a971034bd4dbda49bfc875a29d9063d34e9d0d59d3a

See more details on using hashes here.

Provenance

The following attestation bundles were made for ionis_jupyter-0.2.1-py3-none-any.whl:

Publisher: publish.yml on IONIS-AI/ionis-jupyter

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page