EMD-API - Climate Data Access: Difference between revisions

From Wiki-WindPRO
Jump to navigation Jump to search
Line 29: Line 29:
</pre>
</pre>


Download the [http://api.emd.dk/static/python-client-generated.zip zipped-file] holding the OpenAPI python client.  
Download the [http://api.emd.dk/static/python-client-generated.zip zipped-file] holding the OpenAPI python client. <br>
Unpack the file and install it within your virtual environment:
Unpack the file and install it within your virtual environment:
<pre>
<pre>

Revision as of 16:17, 7 September 2020

Origin and Purpose

EMDAPI is a software library from EMD International. It delivers a unified interface to a wide range of climate data. EMDAPI helps consultants, analysts and scientists working with high-resolution climate data in achieving their goals in an efficient way. It has the following key-features:

  • Instant data delivery: All datasets within the EMDAPI are ready processed and requests are served within seconds or minutes
  • 40+ climate datasets: EMDAPI provides access more than 40 of the best climate datasets and allows access to more than 1Pb of data.
  • Unified interface: The unified interface which allows for integration to internal processes and tools - and also very efficient uncertainty analysis with gigabytes of data easily accessed.
  • Trusted datasets: EMDAPI builds upon the trusted data-bases and data-sources that have been used through the online-data services in windPRO for more than a decade.
  • Built on open standards: EMDAPI is a REST based service that implements the OpenAPI standard].
  • Available from any development tool: Access to the climate databases is available from your preferred development platform - C#, R, python, html, java, php, scala and swift. Just use the OpenAPI tools to generate the client software for your preferred platform.

Access

The API is currently (August 2020) in beta-release. To see more documentation and to access the data-services, please visit the API through the following URL:

Python - Installation and Test

Data nodes near the Egmond Aan Zee Offhore

The simplest way to use the EMDAPI with python is to install the client software in a virtual environment. If you are using CONDA or MINICONDA, we recommend that you create a new virtual environment and use a recent 3.x version of python. When the virtual environment is created, then activate the environment.

conda create -n emdapi python=3.8.5
conda activate emdapi

Install the required packages needed in order to do data-science and use the examples provided within the jupyter notebooks. We have have validated this setup using specific package versions, which we have added in the commands below:

conda install pandas=1.1.0 numpy=1.19.1
conda install matplotlib=3.3.1 basemap=1.2.2 basemap-data-hires=1.2.2 
conda install jupyter=1.0.0 ipykernel=7.17.0 

Download the zipped-file holding the OpenAPI python client.
Unpack the file and install it within your virtual environment:

python setup.py install

Ensure that the python-kernel is available from the jupyter-notebook:

python -m ipykernel install --user --name=emdapi

Download and unpack a few jupyter notebook examples here and then give the installation a test-drive using the jupyter notebooks provided

jupyter notebook

Client Software Other Languages and Tools

A list of client software generated from the swagger editor is found below.

  1. Python
  2. CSharp
  3. HTML2
  4. Dynamic HTML
  5. R
  6. Java
  7. Scala
  8. PHP
  9. Swift5

If you want to generate the client libries yourself - or use other tool than mentioned above - one possible process is to:

  1. Download the OpenAPI (openapi.yaml) description file - here
  2. Load it into the swagger editor - here
  3. Choose to "Generate Client" from the drop-down menu within the swagger editor.