Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://dankelley.github.io/oce/

R package for oceanographic processing
https://dankelley.github.io/oce/

oceanography r

Last synced: 29 days ago
JSON representation

R package for oceanographic processing

Awesome Lists containing this project

README

        

# oce oce logo

[![CRAN\_Status\_Badge](https://www.r-pkg.org/badges/version/oce)](https://cran.r-project.org/package=oce)
[![status](https://joss.theoj.org/papers/10.21105/joss.03594/status.svg)](https://joss.theoj.org/papers/10.21105/joss.03594)
[![Project Status: Active – The project has reached a stable, usable state and is being actively developed.](http://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/)
[![GitHub last commit](https://img.shields.io/github/last-commit/dankelley/oce)](https://img.shields.io/github/last-commit/dankelley/oce)
[![R-CMD-check](https://github.com/dankelley/oce/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/dankelley/oce/actions/workflows/R-CMD-check.yaml)
[![R-hub](https://github.com/dankelley/oce/actions/workflows/rhub.yaml/badge.svg)](https://github.com/dankelley/oce/actions/workflows/rhub.yaml)
![RStudio CRAN mirror downloads](https://cranlogs.r-pkg.org/badges/last-month/oce)
![RStudio CRAN mirror downloads](https://cranlogs.r-pkg.org/badges/last-week/oce)
![RStudio CRAN mirror downloads](https://cranlogs.r-pkg.org/badges/last-day/oce)
![RStudio CRAN mirror downloads](https://cranlogs.r-pkg.org/badges/grand-total/oce)

## Why use R for oceanographic analysis?

The R language is popular in many branches of science, and Oceanography is no
exception. With its broad statistical support, R is a natural choice for
oceanographers in the biological, chemical and geological sub-disciplines.
However, some physical oceanographers have remained attached to Matlab, which
was widely adopted during the 1990s. Lately, this has been changing, as
oceanographers turn to open-source systems such as Python and R. A particular
strength of R is its provision of many powerful and well-vetted packages for
handling specialized calculations. The oce package is a prime example.

## What the oce package provides

The oce package handles a wide variety of tasks that come up in the analysis of
Oceanographic data. In addition to the present README file, a brief sketch of
the package has been written by the core developers (Kelley Dan E., Clark
Richards and Chantelle Layton, 2022. [oce: an R package for Oceanographic
Analysis](https://doi.org/10.21105/joss.03594). Journal of Open Source
Software, 7(71), 3594), and the primary developer uses the package extensively
in his book about the place of R in oceanographic analysis (Kelley, Dan E.,
2018. [Oceanographic Analysis with
R](https://link.springer.com/book/10.1007/978-1-4939-8844-0). New York.
Springer-Verlag ISBN 978-1-4939-8844-0). Details of oce functions are provided
within the R help system, and in the package
[webpage](https://dankelley.github.io/oce/).

## Installing oce

Stable versions of oce are available from CRAN, and may be installed from
within R, in the same way as other packages. However, the CRAN version is only
updated a few times a year (pursuant to policy), so many users install the
`"develop"` branch instead. This branch may be updated several times per day,
as the authors fix bugs or add features that are motivated by day-to-day usage.
This is the branch favoured by users who need new features or who would wish to
contribute to Oce development.

The easy way to install the `"develop"` branch is to execute the following
commands in R.

remotes::install_github("dankelley/oce", ref="develop")

and most readers should also install Ocedata, with

remotes::install_github("dankelley/ocedata", ref="main")

## Evolution of oce

Oce is emphatically an open-source system, and so the participation of users is
very important. This is why Git is used for version control of the Oce source
code, and why GitHub is the host for that code. Users are invited to take part
in the development process, by suggesting features, by reporting bugs, or just
by watching as others do such things. Oceanography is a collaborative
discipline, so it makes sense that the evolution of Oce be similarly
collaborative.

## Examples using built-in datasets

### CTD

library(oce)
data(ctd)
plot(ctd, which=c(1,2,3,5), type="l", span=150)

![Sample CTD plot.](https://raw.githubusercontent.com/dankelley/oce/develop/oce-demo-1.png)

### Acoustic Doppler profiler

library(oce)
data(adp)
plot(adp)

![Sample adp plot.](https://raw.githubusercontent.com/dankelley/oce/develop/oce-demo-2.png)

### Sealevel and tides

library(oce)
data(sealevel)
m <- tidem(sealevel)
par(mfrow=c(2, 1))
plot(sealevel, which=1)
plot(m)

![Sample sealevel plot.](https://raw.githubusercontent.com/dankelley/oce/develop/oce-demo-3.png)

### Echosounder

library(oce)
data(echosounder)
plot(echosounder, which=2, drawTimeRange=TRUE, drawBottom=TRUE)

![Sample echosounder plot.](https://raw.githubusercontent.com/dankelley/oce/develop/oce-demo-4.png)

### Map

library(oce)
par(mar=rep(0.5, 4))
data(endeavour, package="ocedata")
data(coastlineWorld, package="oce")
mapPlot(coastlineWorld, col="gray")
mapPoints(endeavour$longitude, endeavour$latitude, pch=20, col="red")

![Sample map plot.](https://raw.githubusercontent.com/dankelley/oce/develop/oce-demo-5.png)

### Landsat image

library(ocedata)
library(oce)
data(landsat)
plot(landsat)

![Sample landsat image plot.](https://raw.githubusercontent.com/dankelley/oce/develop/oce-demo-6.png)