• Stars
    star
    529
  • Rank 83,186 (Top 2 %)
  • Language
  • License
    Creative Commons ...
  • Created over 5 years ago
  • Updated about 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Awesome Open Atmospheric, Ocean, and Climate Science

Awesome Open Atmospheric, Ocean, and Climate Science

Atmospheric, ocean, and climate science are awesome.

Awesome Build Status Contributions Commits License

This is a curated list of open source software packages that make our lives as scientists, hackers and data wranglers easier or just more awesome. This list is intended to be the fluid-earth counterpart of awesome open geoscience, although there is inevitably some overlap. It is not just climate science! We use the word "climate" in the repo name just as shorthand for the fluid part of the earth. Packages from atmospheric science, oceanography, climate science, and hydrology are all welcome.

In accordance with the awesome manifesto, we add awesome repositories. We are wide open to contributions of course! Don't hesitate to add your favorite packages by making a [pull request]

Contents

Software

Awesome software projects sub-categorized by focus.

General Purpose

β–² Top

While packages are not technically specific to AOCH science, they are so essential for scientific workflows that we can't not include them

  • Pandas - Python Data structures and computational tools for working with tabular datasets
  • Xarray - Python Data structures and computational tools for multidimensional arrays, inspired by netCDF data model
  • Numpy - Python NumPy is a library for the Python programming language, adding support for large, multi-dimensional arrays and matrices, along with a large collection of high-level mathematical functions to operate on these arrays.
  • Matplotlib - Python Matplotlib is a comprehensive library for creating static, animated, and interactive visualizations in Python. Several other libraries, including many mentioned in the lists below, use Matplotlib by default under the hood for creating data visualizations.

Frameworks

β–² Top
  • Iris - Python Expressive analysis and visualization of multi-dimensional datasets based on the CF conventions
  • CDMS - Python Object-oriented data management system for multidimensional, gridded data used in climate analysis and simulation

Meteorology

β–² Top
  • MetPy - Python Collection of tools for reading, visualizing, and performing calculations with weather data
  • windspharm - Python Spherical harmonic wind analysis
  • wrf-python - Python A collection of diagnostic and interpolation routines for use with output of the Weather Research and Forecasting (WRF-ARW) Model

Oceanography

β–² Top
  • GSW-Python - Python Thermodynamic equation of state for seawater
  • WAVEWATCH III - Fortran NOAA's Ocean wave model
  • UMWM - Fortran University of Miami's wave model
  • rnoaa - R An R interface to many NOAA data sources
  • pyoos - Python A Python library for collecting Met/Ocean observations
  • PyCO2SYS - Python A Python toolbox for solving the marine carbonate system and calculating related seawater properties

Climate

β–² Top
  • climlab - Python Process-oriented climate modeling
  • aospy - Python Automated analysis and management of gridded climate data
  • Oocgcm - Python Analysis of large gridded geophysical datasets
  • Pangaea - Python xarray extension for gridded land surface & weather model output
  • xgcm - Python Extends the xarray data model to understand finite volume grid cells (common in General Circulation Models) and provides interpolation and difference operations for such grids
  • OpenClimateGIS - Python Geospatial manipulation, subsetting, computation, and translation of spatiotemporal climate data
  • climpred – Python xarray wrapper for analysis of ensemble forecast models for climate prediction
  • pyOWM - Python PyOWM is a client Python wrapper library for OpenWeatherMap (OWM) web APIs

Remote Sensing

β–² Top
  • SatPy - Python Read and manipulate meteorological remote sensing data and write it to various image and data file formats
  • Open Data Cube - Python Analysis toolkit for continental scale Earth Observation data from satellites
  • Earthdata Search - User interface for searching against the CMR (Common Metadata Repository). Supports data download, visualization, and subsetting in some cases.
  • Sentinelsat - Python Search and download data from the European Copernicus Sentinel satellites

Glaciology

β–² Top
  • OGGM - Python Open Global Glacier Model

Spatiotemporal Statistics

β–² Top
  • EOFs - Python EOF analysis
  • rasterstats - Python summarizing geospatial raster datasets based on vector geometries

Regridding

β–² Top
  • xESMF - Python Regridding for numpy and Xarray datasets based on the Earth Systems Modeling Framework (ESMF) library
  • Pyresample - Python Resample/reproject earth observing satellite data

GIS

β–² Top
  • geopandas - Python Spatial GIS operations on geometric types.
  • salem - Python Adds geolocalised subsetting, masking, and plotting operations to xarray's data structures via accessors
  • Regionmask - Python plotting and creation of masks of spatial regions
  • xshape - Python Tools for working with shapefiles, topographies, and polygons in xarray
  • Collocate - Python Collocate xarray trajectories in arbitrary physical dimensions
  • QGIS - C++ GIS platform to visualize, manage, edit, analyse data, and compose printable maps
  • GeoPHP - PHP The world's most popular geospatial library for PHP that works with WKT (including EWKT), WKB (including EWKB), GeoJSON, KML, GPX, GeoRSS and more

Data Storage

β–² Top
  • netCDF - Python C++ C Java Fortran NetCDF (Network Common Data Form) is a set of interfaces for array-oriented data access and a freely distributed collection of data access libraries for C, Fortran, C++, Java, Python, and other languages
  • HDF5 - Python C++ C Java Fortran HDF5 is a high-performance data management data storage format. HDF interfaces are available in C, Fortran, C++, Java, Python, and other languages
  • Zarr - Pyton chunked, compressed, N-dimensional arrays.
  • xmitgcm - Python Read MITgcm binary MDS files into xarray data structures.
  • xbpch - Python Xarray interface for bpch files
  • PyGDX - Python Access data stored in GAMS Data eXchange (GDX) files
  • rasterio - Python Reads and writes GeoTIFF and provides a Python API based on Numpy N-dimensional arrays and GeoJSON
  • netcdf4-python - Python Python/numpy interface to the netCDF C library

Simulation

β–² Top
  • Do we list all the open source climate model codes? Are they awesome enough?
  • xarray-simlab - Python xarray extension for computer model simulations

Visualization

  • PyViz - Python A coordinated effort to make data visualization in Python easier to use, easier to learn, and more powerful. Sub-components include:

    • HoloViews - Python Library designed to make data analysis and visualization seamless and simple
    • GeoViews - Python Library that makes it easy to explore and visualize geographical, meteorological, and oceanographic datasets, such as those used in weather, climate, and remote sensing research
    • Datashader - Python graphics pipeline system for creating meaningful representations of large datasets quickly and flexibly
    • Panel - Python Create custom interactive web apps and dashboards by connecting user-defined widgets to plots, images, tables, or text
    • hvPlot - Python A high-level plotting API for the PyData ecosystem built on HoloViews
  • EarthSim -Python Tools for working with and visualizing environmental simulations

  • Cartopy - Python Easy cartographic (maps) data visualization.

  • Geoviews - Python Explore and visualize geographic data using HoloViews.

Data Repositories

  • Quantarctica - user-configurable QGIS basemap for Antarctica with high-quality, peer-reviewed, free and open Antarctic scientific data
  • Common Metadata Repository - Search API for NASA's remote-sensed earth science metadata
  • UCI Machine Learning Repository – Popular hub for machine learning datasets, featuring "physical sciences" data on air quality, ozone level detection, greenhouse gas concentrations, aquatic toxicity, and more
  • National Data Buoy Center - The premier source of meteorological and oceanographic measurements for the marine environment.
β–² Top

Tutorials

Cheat Sheets

Miscellaneous

β–² Top

How to Contribute

Contributions welcome! Read the contribution guidelines first

β–² Top

License

CC0

To the extent possible under law, all contributors have waived all copyright and related or neighboring rights to this work

More Repositories

1

pangeo

Pangeo website + discussion of general issues related to the project.
Jupyter Notebook
698
star
2

WeatherBench

A benchmark dataset for data-driven weather forecasting
Jupyter Notebook
684
star
3

climpred

🌎 Verification of weather and climate forecasts 🌍
Python
227
star
4

xESMF

Universal Regridder for Geospatial Data
Python
188
star
5

scikit-downscale

Statistical climate downscaling in Python
Python
182
star
6

rechunker

Disk-to-disk chunk transformation for chunked arrays.
Jupyter Notebook
162
star
7

pangeo-docker-images

Docker Images For Pangeo Jupyter Environment
Dockerfile
121
star
8

pangeo-example-notebooks

Pangeo Example Notebooks
Jupyter Notebook
104
star
9

pangeo-tutorial

Interactive jupyter notebooks for pangeo tutorial events
Jupyter Notebook
89
star
10

cog-best-practices

Best practices with cloud-optimized-geotiffs (COGs)
Jupyter Notebook
77
star
11

pangeo-cloud-federation

Deployment automation for Pangeo JupyterHubs on AWS, Google, and Azure
JavaScript
58
star
12

pangeo-cmip6-examples

Examples of analysis of CMIP6 data using xarray and dask
Jupyter Notebook
55
star
13

mldata

ML Datasets Catalog
Python
54
star
14

pangeo-datastore

Pangeo Cloud Datastore
Python
48
star
15

education-material

An organizational meta-repo with pointers to all of the myriad educational materials available today (in any form)
32
star
16

pangeo-tutorial-sea-2018

Pangeo Tutorial for 2018 NCAR SEA Conference
Jupyter Notebook
31
star
17

jupyter-earth

Jupyter meets the Earth: combining research use cases in geosciences with technical developments within the Jupyter and Pangeo ecosystems.
Dockerfile
28
star
18

xcmocean

xarray accessor for automating choosing colormaps, aimed at geosciences
Python
22
star
19

ml-workflow-examples

Simple examples of data pipelines from xarray to ML training
Jupyter Notebook
22
star
20

pangeo-data.github.io

JavaScript
22
star
21

helm-chart

Pangeo helm charts
Shell
21
star
22

pangeo-ocean-examples

Examples of analysis of ocean data and simulation outputs using xarray, xgcm, and pangeo.
Jupyter Notebook
21
star
23

terraform-deploy

deployment of pangeo jupyterhub infrastructure with terraform
HCL
19
star
24

pangeo-binder

Pangeo + Binder (dev repo for a binder/pangeo fusion concept)
Python
18
star
25

pangeo-stacks

Curated Docker images for use with Jupyter and Pangeo
Python
17
star
26

pangeo-cmip6-cloud

Documentation for Pangeo CMIP6 data stored in GCP/AWS cloud
Python
17
star
27

pangeo-julia-examples

Working with pangeo cloud-based data with Julia
Jupyter Notebook
16
star
28

landsat-8-tutorial-gallery

Gallery repo for the pangeo-tutorial landsat-8 notebook on Pangeo Gallery http://gallery.pangeo.io/index.html
Jupyter Notebook
13
star
29

escience-2022

eScience 2022 course on Tools in Climate Science: Linking Observations with Modelling
Jupyter Notebook
13
star
30

llc4320_pangeo

Python codes reading and processing LLC4320 model
Jupyter Notebook
13
star
31

storage-benchmarks

testing performance of different storage layers
Jupyter Notebook
12
star
32

benchmarking

Benchmarking & Scaling Studies of the Pangeo Platform
Jupyter Notebook
12
star
33

distributed-array-examples

12
star
34

pangeo-era5

scripts and tools for ingesting ERA5 into cloud storage
Jupyter Notebook
11
star
35

pangeo-openeo-BiDS-2023

Pangeo & OpenEO Joint tutorial for BiDS23 - "Scaling Big Data Analysis with Pangeo and OpenEO: Unlocking the Power of Space Data"
Jupyter Notebook
10
star
36

pangeo-tutorial-gallery

Repo to house pangeo-tutorial notebooks for pangeo-gallery
Jupyter Notebook
10
star
37

zarr-proxy

A proxy for Zarr stores that allows for chunking overrides.
Python
9
star
38

swot_adac_ogcms

Documentation and notebooks for the SWOT Adopt-a-Crossover Model Intercomparison
Jupyter Notebook
9
star
39

pangeo-tools

Pangeo Tools RISE Slideshow
Jupyter Notebook
7
star
40

cmr

convergence pangeo + NASA CMR + NASA data on the cloud
Jupyter Notebook
6
star
41

pangeo-datastore-flask

Dynamic implementation of pangeo-datastore using Flask
CSS
5
star
42

foss4g-2021

Pangeo tutorial at FOSS4G 2021
Jupyter Notebook
5
star
43

openoceancloud

Website for openocean.cloud
HTML
5
star
44

atmos.pangeo.io-deploy

Deployment automation for atmos.pangeo.io
Jupyter Notebook
5
star
45

testcase_on_cnn

Experiment on CNN to climate data
Jupyter Notebook
5
star
46

astro.pangeo.io-deploy

Deployment automation for astro.pangeo.io
Jupyter Notebook
4
star
47

clivar-2022

Arctic Processes in CMIP6 Bootcamp 2022
Jupyter Notebook
4
star
48

cookiecutter-pangeo-binder

Pangeo-Binder Cookiecutter Template
Jupyter Notebook
4
star
49

esgf2xarray

utilities for loading esgf archives as xarray datasets
Python
4
star
50

governance

Governance Documents for Pangeo
3
star
51

pangeo-eosc

Pangeo for the European Open Science cloud
Jupyter Notebook
3
star
52

pangeo-datastore-stac

STAC implementation of Pangeo Catalog
Jupyter Notebook
3
star
53

multicloud-demo

Notebooks and infrastructure for Earthcube2020: Multi-Cloud workflows with Pangeo and Dask Gateway
Jupyter Notebook
3
star
54

geo-open-hack-2024

Event for geo-coders to explore open tools and approaches for enhancing geospatial analysis
3
star
55

bids2023_codesprint

Repository for the joint OSGEO and Pangeo code sprint at ESA BIDS in November 2023
Jupyter Notebook
3
star
56

pangeo-astro-examples

Binder for astronomy stuff on pangeo
Jupyter Notebook
2
star
57

notebook-binder

image configurations for pangeo-binder
2
star
58

storage-intern-projects

Command line utility for migrating netcdf datasets to cloud storage
2
star
59

example.pangeo.io-deploy

Deployment automation for example.pangeo.io
Jupyter Notebook
2
star
60

pangeo-ecco-llc

Demos of the ECCO LLC Reader
Jupyter Notebook
2
star
61

foss4g-2022

Pangeo tutorial at FOSS4G 2022
Jupyter Notebook
2
star
62

open-source-geoscience

A Binder-ready repo highlighting popular open-source goescience software tools
Jupyter Notebook
1
star
63

jupyterhub-monitoring

Grafana data and analysis products for the monitoring data on the research hubs
Jupyter Notebook
1
star
64

pangeo-geospatial-examples

Pangeo Geospatial Imagery Examples
Jupyter Notebook
1
star
65

pangeo-integration-tests

Integration testing for the Pangeo cloud ecosystem
Python
1
star
66

climpred-data

Data repository for climpred examples
Python
1
star
67

pangeo-for-hpc

Instructions and boilerplate for running Pangeo on HPC platforms
1
star
68

pangeo-igarss2024

Earthly marvels revealed: Pangeo, AI, and Copernicus in action
1
star
69

pangeo-binder-template

template repository for pangeo binder configuration
Jupyter Notebook
1
star