Skip to main content

Satellite data visualisation toolkit for EUMETSAT and Copernicus Marine datasets.

Project description

๐Ÿ›ฐ๏ธ VisuSat project :

Documentation Status Python Versions License: MIT PyPI version

VisuSat is a Python toolkit for visualising, handling and processing satellite and oceanographic data, with dedicated pipelines for :

  • EUMETSAT Data Store & Data Tailor
  • Copernicus Marine Service (CMEMS)

It provides high-level wrappers around eumdac, copernicusmarine, xarray,
and advanced visualisation utilities using cartopy and matplotlib.

๐Ÿ“˜ Full documentation: https://visusat.readthedocs.io/en/latest/


๐ŸŒ Examples of Visualisations :

๐ŸŒฆ๏ธ EUMETSAT Data Store - AMVs (Atmospheric Motion Vectors)

Derived from MTG-FCI Level 2 wind products :

๐Ÿ“ฝ๏ธ Animation from MTG-FCI L1c products

Effective radiance from Visible 0.6ยตm channel, over Western Europe, between 12UTC and 16UTC the 22/10/2025. Product : FCI L1c High Resolution Image Data - MTG

The 0.6 ยตm visible channel of MTG FCI is a solar-reflectance channel that is sensitive to surface albedo, clouds (primarily their upper layers), and aerosols. Oceanic and continental surfaces tend to absorb most of the incoming solar radiation, leading to low radiances (dark tones), whereas clouds and aerosols reflect sunlight efficiently, resulting in high radiances (bright tones). In this image, the Benjamin depression is visible over the Atlantic Ocean and is characterized by a vortex-shaped pattern of enhanced radiances associated with thick cloud structures.

๐ŸŒŠ Copernicus Marine Service

Allows to download and visualize available datasets from Copernicus Marine datastore (https://data.marine.copernicus.eu/products).

Example of the the Sea Level Anomaly (in meter) from an aggregate of all available satellites data into Global Ocean Gridded Level4 product (link) :

๐ŸŒ Global Ocean Gridded Sea Level Anomaly (L4)

Product: SEALEVEL_GLO_PHY_L4_NRT_008_046

๐ŸŒ€ Global Ocean Physics (Mercator Ocean)

Hourly Sea Water Potential Temperature โ€”
Product: GLOBAL_ANALYSISFORECAST_PHY_001_024


๐Ÿš€ Installation :

VisuSat is available on PyPI:

pip install visusat

For devellopment :

git clone https://github.com/nsasso56-cell/VisuSat
cd VisuSat
pip install -e .

๐Ÿ”ง Upgrade VisuSat

pip install --upgrade visusat

๐Ÿ’ก Quick Start Examples

Here is a minimal example showing how to download and plot a Copernicus Marine dataset:

from visusat import copernicus

request = copernicus.CopernicusRequest(
    dataset_id="cmems_obs-sl_glo_phy-ssh_nrt_allsat-l4-duacs-0.125deg_P1D",
    variables=["sla", "err_sla"],
    minimum_longitude=1,
    maximum_longitude=359,
    minimum_latitude=-70,
    maximum_latitude=80,
    start_datetime="2025-10-22T00:00:00",
    end_datetime="2025-10-22T00:00:00",
    output_filename="duacs_sla.nc",
)

ds = copernicus.load_dataset(request, force=False)

# Plot all fields
copernicus.plot_fields(request, ds)

# Plot surface currents
copernicus.plot_currents(request, ds, vectors = False)

More examples are available in the examples/ folder.


๐Ÿ› ๏ธ Features

  • High-level wrappers for Copernicus Marine API
  • Automation of EUMETSAT Data Tailor workflows
  • Built-in plotting functions (AMVs, radiances, currentsโ€ฆ)
  • Utilities for generating animated visualizations of satellite data.
  • Dataset registry and metadata helpers
  • Strong logging system
  • Full Sphinx documentation (ReadTheDocs)

๐Ÿ“ Project Structure

VisuSat/
โ”œโ”€โ”€ pyproject.toml
โ”œโ”€โ”€ README.md
โ”œโ”€โ”€ src/
โ”‚   โ””โ”€โ”€ visusat/
โ”‚       โ”œโ”€โ”€ copernicus.py
โ”‚       โ”œโ”€โ”€ eumetsat.py
โ”‚       โ”œโ”€โ”€ utils.py
โ”‚       โ”œโ”€โ”€ plotting.py
โ”‚       โ””โ”€โ”€ eumetsat_products_registry.py
โ”œโ”€โ”€ docs/
โ”‚   โ””โ”€โ”€ source/
โ”œโ”€โ”€ examples/
โ”‚   โ”œโ”€โ”€ demo_copernicus_globmodel.py
โ”‚   โ”œโ”€โ”€ demo_eumetsat_datatailor.py
โ”‚   โ”œโ”€โ”€ demo_eumetsat_animation.py
โ”‚   โ””โ”€โ”€ images/
โ””โ”€โ”€ data/
    โ”œโ”€โ”€ copernicus/
    โ””โ”€โ”€ eumetsat/

๐Ÿ“ฌ Contact

Author : Nicolas SASSO.


๐Ÿ“„ License

Distributed under the MIT License.

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

visusat-0.4.2.tar.gz (1.5 MB view details)

Uploaded Source

Built Distribution

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

visusat-0.4.2-py3-none-any.whl (27.4 kB view details)

Uploaded Python 3

File details

Details for the file visusat-0.4.2.tar.gz.

File metadata

  • Download URL: visusat-0.4.2.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.24

File hashes

Hashes for visusat-0.4.2.tar.gz
Algorithm Hash digest
SHA256 06f4a3b4f6203e9c36c1030d9ab15f158275df4510220bf7d41a5ecc9e5782b7
MD5 868157823c3ebcb01eb2d5540f6b0a58
BLAKE2b-256 0d191fa7228ea2c7528663845efb0c6501d139311ebfad8ebdadf6fb934ada06

See more details on using hashes here.

File details

Details for the file visusat-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: visusat-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 27.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.24

File hashes

Hashes for visusat-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 39bf995e5782079ca6ab9636672da0a42cfe62394324819e99ae8db9ecd9ae6e
MD5 986f4021952800c72f8c593cb6be6123
BLAKE2b-256 b175b4d8205dd0846b860fd130ed4b35280fd2c25565b040addd9cbfbdb0da13

See more details on using hashes here.

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