This data is licensed under a Creative Commons Attribution 4.0 International License.
Attribution and citation is stored in metadata.
Thredds Server
The EBAS Thredds Data Server (TDS) is a web server that provides metadata and data access for the data in EBAS either through data streaming using the OPeNDAP protocol or direct download of data through HTTP. The EBAS Thredds Server provides data in the netCDF format following the NetCDF Climate and Forecast (CF) Metadata Conventions. EBAS netCDF file format documentation can be found here.
The Thredds catalog for quality controlled EBAS data can be accessed here: https://thredds.nilu.no/thredds/catalog/ebas/catalog.html
The EBAS catalog on the Thredds server is a flat directory of files, and therefore crawling the directory is the most appropriate way to access data.
There are multiple clients that could be used for accessing and crawling a Thredds catalog.
Python
- EBAS specific
- https://git.nilu.no/ebas/ebas-thredds-harvest
- External tools:
- https://github.com/ioos/thredds_crawler
- https://pypi.org/project/threddsclient/
R
- https://github.com/BigelowLab/thredds
It is also possible to access ACTRIS NRT using the EBAS Thredds Server (https://thredds.nilu.no/thredds/catalog/actris_nrt/catalog.html), but this catalog is restricted, and you will have to contact the EBAS Team in order to request access to this catalog.
Below is a simple example of how you can access the data in Thredds using a python client for Thredds.
import netCDF4 from netCDF4 import num2date import plotly.graph_objects as go from plotly.subplots import make_subplots import threddsclient # get all OPeNDAP urls at EBAS Thredds server all_opendap_urls = threddsclient.opendap_urls( 'https://thredds.nilu.no/thredds/catalog/ebas/catalog.xml') # get all data urls for one station, e.g., Zeppelin NO0042G zep_opendap_urls = [x for x in all_opendap_urls if 'NO0042G' in x] # get all scattering data urls neph_opendap_urls = [x for x in all_opendap_urls if 'nephelometer' in x] # plot scattering data for one arctic station (eg. Alert 2004-2019, pm10) dataset = netCDF4.Dataset( 'https://thredds.nilu.no/thredds/dodsC/ebas/CA0420G.20040101000000.20201112154612.nephelometer..pm10.16y.1h.CA01L_TSI_3563_ALT_pm10.CA01L_scat_coef.lev2.nc') y1 = dataset.variables['aerosol_light_scattering_coefficient_amean'][0][:] y2 = dataset.variables['aerosol_light_backscattering_coefficient_amean'][0][:] x = num2date( dataset.variables['time'][:], units='days since 1900-01-01 00:00:00', calendar='gregorian') fig = make_subplots(specs=[[{"secondary_y": True}]]) fig.add_trace( go.Scatter( x=x, y=y1, name='Sca. coeff. amean'), secondary_y=False, ) fig.add_trace( go.Scatter( x=x, y=y2, name='Bsc. coeff. amean'), secondary_y=True, ) fig.update_layout(title_text=dataset.title) fig.show()