Giter Site home page Giter Site logo

voyager's Introduction

Voyager

This library analyses GBIF marine occurrence records against historical ships log data from International Comprehensive Ocean-Atmosphere Data Set (ICOADS) and OldWeather, to correct missing geospatial data (collection event date, latitude and longitude).

A CLI interface performs these analyses and outputs a DarwinCore archive file for each identified voyage and occurrences collected on the expedition. Detailed instructions for the CLI is provided below.

A React & DeckGL app is included with the CLI, to visualise the voyages and explore occurrences collected on each trip. This visualisation is available online.

Data Visualisation

Data Visualisation - .\app

yarn start

Runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.

The page will reload if you make edits.
You will also see any lint errors in the console.

yarn test

Launches the test runner in the interactive watch mode.

yarn build

Builds the app for production to the build folder.

Data Analysis CLI

Installation

1. Clone the repository

git clone https://github.com/benscott/voyager.git

2. Create conda anvironment

conda env create -f environment.yml

3. Activate conda anvironment

conda activate voyager

4. Run setup.py

python setup.py install

Data Sources

1.GBIF

Download occurrences from GBIF as a Darwin Core Acrhive (NOTE: this will not work with the 'Simple' data export.)

To save time running these scripts, it is recommended a subset of GBIF data is downloaded, with dates matching those of the voyages to be analysed. For example, the visualisation uses records collected from 1750 to 1901.

2. ICOADS

ICOADS data is available to download from https://www.ncei.noaa.gov/data/marine/icoads3.0/ in International Maritime Meteorological Archive (IMMA) Format.

These are organised by month and year, and it is recommended only including the years matching the time period to be analysed. Each monthly .imma file should be placed in a directory together.

3. Old Weather

Some Old Weather .imma files are included in this repsository, and many others can be found on their Github repository. Additional .imma files should be placed in directory input/imma.

The records from Old Weather is included in the ICOADS dataset but inclusion of the vessel name is patchy, so using these is recommended.

Configuration

The location of these data sources can be configured in voyager/config.py.

CLI Interface

Voyager provides three CLI interfaces

1. analyse

Analyse GBIF occurrences, against IMMA Marine Observations. Outputs DwC-A.

voyager-cli analyse --limit 5

2. icoads-search

Search ICOADS data for vessels.

voyager-cli icoads-search --vessel-name Triton --years 1880-1882

3. icoads-to-imma

Export ICOADS log data as an IMMA file for an indivual vessel.

voyager-cli icoads-to-imma --vessel-name Triton --years 1880-1882

4. app

Convert DwC-A into javascript source files, for the data visulisation react app.

voyager-cli app --vessel-name challenger

voyager's People

Contributors

benscott avatar dependabot[bot] avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.