https://github.com/dankelley/oceananalysis.jl

Julia code for oceanographic analysis

https://github.com/dankelley/oceananalysis.jl

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.9%) to scientific vocabulary

Keywords

julia oceanography
Last synced: 5 months ago · JSON representation

Repository

Julia code for oceanographic analysis

Basic Info
  • Host: GitHub
  • Owner: dankelley
  • License: other
  • Language: Julia
  • Default Branch: main
  • Homepage:
  • Size: 1.1 MB
Statistics
  • Stars: 5
  • Watchers: 2
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Topics
julia oceanography
Created almost 4 years ago · Last pushed 6 months ago
Metadata Files
Readme License

README.md

OceanAnalysis.jl

OceanAnalysis.jl is a Julia package designed to facilitate the analysis of oceanographic data. It is at a very early stage of development by someone who is in the early steps of exploring Julia as a supplement to R.

Installation

Official version

Once (if) the package is accepted by the Julia archive system, you may install it by typing the following in a Julia console.

julia using Pkg ; Pkg.add("OceanAnalysis")

Development version

Somewhat stable (for early users)

Type the following in a Julia console to use the "main" branch from the development website. This is updated after significant changes to the "develop" branch (that have passed the built-in test suite).

julia using Pkg ; Pkg.add(url="https://github.com/dankelley/OceanAnalysis.jl")

Unstable (for developers)

Type the following in a Julia console to use the "develop" branch from the development website. This is updated very frequently, because the author tests changes using this method.

julia using Pkg ; Pkg.add(url="https://github.com/dankelley/OceanAnalysis.jl", rev="develop")

Brittle (for the core developer)

In the commandline, navigate to the local source for the library. Then start a Julia console and type the following.

julia ] develop .

This sets Julia to look for changes in the files in that directory. Thereafter, issuing using OceanAnalysis in a Julia session will rebuild from that local source. Note that using the Pkg.add(url=...) method after using the develop method will reset things so that Julia rebuilds from the github page instead of the local files.

Usage Examples

CTD file

```julia

Read a built-in CTD file, and plot some hydrographic diagrams

using OceanAnalysis, Plots, Measures filename = joinpath(dirname(dirname(pathof(OceanAnalysis))), "data", "ctd.cnv") ctd = readctdcnv(filename) p1 = plotprofile(ctd, "SA") p2 = plotprofile(ctd, "CT") p3 = plot_TS(ctd) plot(p1, p2, p3, layout=(1, 3), size=(800, 400), margin=0.25cm) ```

Sample plot of CTD data in a .cnv file

Argo file

```julia

Read a built-in Argo file, and plot some hydrographic diagrams

using OceanAnalysis, Plots, Measures filename = joinpath(dirname(dirname(pathof(OceanAnalysis))), "data", "D4902911095.nc") ctd = readargo(filename) p1 = plotprofile(ctd, "SA") p2 = plotprofile(ctd, "CT") p3 = plot_TS(ctd) plot(p1, p2, p3, layout=(1, 3), size=(800, 400), margin=0.25cm) ```

Sample plot of Argo data

History of changes

0.1.0

This version is in use by the author, and may also be suitable for other users who are comfortable with the possibility of changes to function names and arguments.

Breaking changes

  • Switch to snake-case for function names and argument names. For example, the name of plotTS() was changed to plot_TS(), and its argument drawFreezing was changed to draw_freezing. The point of this is to fit what seems to be the Julia convention, which has the benefit of reinforcing to the user that this is distinct from the oce R package, which uses the camel-case notation.

Non-breaking changes

  • Add pretty(), for use in contouring (especially for plot_TS()).
  • Add depth_from_pressure(), z_from_pressure(), pressure_from_depth(), and pressure_from_z().
  • Change the second digit of version string to indicate that the package is becoming suitable for at least exploratory testing on real data.

0.0.3

Breaking changes

There are no breaking changes; all change are additions or bug fixes.

Non-breaking changes

  • Add built-in data file ctd.cnv.nc, and use it in an example in the Ctd() documentation.
  • Add built-in data file D4902911_095.nc, and use it in an example in the plot_profile() documentation.
  • get_element() can now return "N2".
  • plot_profile() can now plot N2".

0.0.2

Breaking changes

There are no breaking changes; all change are additions or bug fixes.

Non-breaking changes

  • Add N2() to compute the square of the buoyancy frequency.

Developer notes

Adding a package dependency

For example, to add Downloads as a dependency to the present package, navigate to the present-package source directory, start a Julia session, and type the following.

julia ] activate . add Downloads

Running tests

There is a small test suite built into the package. To run it, type the following in a Julia console:

julia ] activate . test OceanAnalysis

Building and viewing documentation on development machine

To build, type the following in a shell terminal. (Change the /Users/kelley part, as appropriate.)

sh cd /Users/kelley/git/OceanAnalysis.jl julia --project=. docs/make.jl

To view, do the following in a Julia console. (Change the /Users/kelley part, as appropriate.)

julia cd("/Users/kelley/git/OceanAnalysis.jl/") using LiveServer serve(; dir="docs/build", launch_browser=true)

Owner

  • Name: Dan Kelley
  • Login: dankelley
  • Kind: user
  • Location: Halifax, NS, Canada
  • Company: Dalhousie University

Oceanographer, University Professor and former Senator (ORCID https://orcid.org/0000-0001-7808-5911)

GitHub Events

Total
  • Create event: 2
  • Commit comment event: 3
  • Issues event: 28
  • Watch event: 1
  • Issue comment event: 29
  • Push event: 379
Last Year
  • Create event: 2
  • Commit comment event: 3
  • Issues event: 28
  • Watch event: 1
  • Issue comment event: 29
  • Push event: 379

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 45
  • Total Committers: 1
  • Avg Commits per committer: 45.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 24
  • Committers: 1
  • Avg Commits per committer: 24.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
dankelley k****n@g****m 45

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 18
  • Total pull requests: 0
  • Average time to close issues: about 5 hours
  • Average time to close pull requests: N/A
  • Total issue authors: 2
  • Total pull request authors: 0
  • Average comments per issue: 1.06
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 18
  • Pull requests: 0
  • Average time to close issues: about 5 hours
  • Average time to close pull requests: N/A
  • Issue authors: 2
  • Pull request authors: 0
  • Average comments per issue: 1.06
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • dankelley (17)
  • JuliaTagBot (1)
Pull Request Authors
Top Labels
Issue Labels
enhancement (12) bug (4) CTD (4)
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads: unknown
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 1
juliahub.com: OceanAnalysis

Julia code for oceanographic analysis

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 8.2%
Average: 21.9%
Dependent packages count: 35.5%
Last synced: 6 months ago