IMOS User Code Library

The majority of IMOS datasets are stored as netCDF files. This format was chosen because it allows data files to be self-describing (i.e. the file includes ‘metadata’, or information about the data it contains), machine-independent, and suited to the sharing of array-oriented scientific data. The IMOS THREDDS catalogue describes the inventory of available netCDF datasets.

IMOS netCDF datasets can be viewed or manipulated in various environments. They can be imported into environments such as MATLAB, Python and R, and viewed using various software packages designed for netCDF viewing. The sections below offer help in getting started with some of these options.

The IMOS user code library helps new users get started with IMOS data, offering examples of IMOS data use within some popular environments (including Python, R and MATLAB). It provides ready to go code solutions for importing and visualising the data as well as demonstrating how to access useful metadata information.

Python

The IMOS User Code Library contains detailed examples showing how to make use of IMOS data using Python Jupyter Notebooks; this is the best place to get an overview of what can be done using Python. The User Code Library makes use of the netCDF4 Python library for parsing netCDF (.nc) files as well as several other data processing libraries. 

Contained within are various datasets, including Wind, Sea Surface Temperature, Waves, Argo visualisation and more. A guide is provided to demonstrate how to use the Python User Code Library. 

R

The IMOS User Code Library contains examples how to make use of IMOS data using R. 

The library contains several Jupyter Notebooks demonstrating IMOS data access using R. It also contains a NetCDF parser function that us used to open and read NetCDF (.nc) files. A guide is provided to demonstrate how to use the R User Code Library. 

IMOS climatology data products tutorial

This is an IMOS partner product that is hosted in the IMOS S3 bucket. The notebook is to provide a basic understanding of one of many products available through an IMOS partner using IMOS data. This particular notebook focuses on the mooring climatology products produced by UNSW.

GitHub

Interactive

IMOS mooring gridded via THREDDS

This notebook is intended to show basic access to IMOS data using THREDDS. In this example we access a gridded product from the National Mooring Network.

GitHub

Interactive

IMOS moorings long time series products 

This notebook is intended to show basic access to IMOS data using THREDDS. In contrast to the gridded product in the previous example, in this example we access a long time series product from the National Mooring Network showcasing multiple datasets from the same Facility.

GitHub

Interactive

IMOS ocean colour data from Amazon Web Services S3

In this notebook we are accessing IMOS data from the S4 bucket. We are focusing on the Ocean Colour data that IMOS hosts being a derived product from international raw products.

GitHub

Interactive

IMOS ocean radar delayed mode files

In this notebook we aim to provide basic access to an alternate dataset using THREDDS. We focus on the High Frequency Radar Delayed Mode and provide basic processing and visualisation of this data.

GitHub

Interactive

IMOS satellite waves

This notebook serves to show another derived IMOS product, accessing the data via THREDDS. We focus on the Synthetic Aperture Radar (SAR) Waves product, we visualise the product locations, as well as the visualisation of the data. This notebook also requires an additional python file which is also available in the user code library here.

GitHub

Interactive

IMOS satellite wind

This notebook serves to show another derived IMOS product, accessing the data via THREDDS. We focus on the Synthetic Aperture Radar (SAR) Wind product, we visualise the product locations, as well as the visualisation of the data.

GitHub

Interactive

IMOS Sea Surface Temperature Atlas of the Australian Regional Seas (SSTAARS)

This is another partner product that is hosted at IMOS. The Sea Surface Temperature Atlas of Australian Reginal Seas climatology produced by the CSIRO.

GitHub

Interactive

IMOS ships of opportunity XBT data from geoserver

Access of XBT Near Realtime data using WMS/WFS capabilities from Geoserver.

GitHub

Interactive

IMOS User Code Library Template

This is the template if you would like to contribute to the IMOS user code library with a particular dataset or topic of interest.

GitHub

MATLAB

The IMOS User Code Library contains examples showing how to process IMOS data using MATLAB. A guide is provided to demonstrate how to use the R User Code Library. 

The core of the library is a parser for netCDF files in MATLAB: that is, a function that takes a URL or local netCDF file and parses them into the environment in a useable data structure. 

MATLAB itself provides a library of functions for both high and low level access to netCDF files. If you wish to make use of these, see the MATLAB help documentation on netCDF functions.

Viewer applications

There is a large array of software applications that can be used to view netCDF files (see the extensive list on Unidata’s site).

Six applications that we recommend are: