MHL buoys track swell conditions off the coast of NSW Australia. This will parse their GIF graphs so the data can be used in other ways
MHL buoys track swell conditions off the coast of NSW Australia. This will parse their GIF graphs so the data can be used in other ways.
Learn more about these graphs here: http://new.mhl.nsw.gov.au/data/realtime/wave/
direction: 138.46hsig: 0.97hmax: 1.75tsig: 5.94tp1: 5.1
I'm only interested in the latest readings, that's what this object outlines.
npm install mhl-buoy-data
mhl-buoy-data exports a function that takes 2 parameters: a path to the gif and a callback. The callback will be called once the gif has been parsed. The callback will receive an argument that is an object representing the current conditions for the buoy.
Here's a little bit from the tests showing how it's used.
var parseMHLGraph = require'mhl-buoy-data'var assert = require'assert'// You can pass a path to a local gif, or a URLparseMHLGraph'./test/fixtures/syddir-1.gif'assertequalconditionsdirection 138.46 // Degrees true northassertequalconditionshmax 1.75 // Metresassertequalconditionshsig 0.97 // Metresassertequalconditionstp1 5.1 // Secondsassertequalconditionstsig 5.94 // Seconds
From the MHL's glossary:
Maximum wave height in a recorded burst of raw data.
Significant wave height = average height of the waves which comprise the highest 33% of waves in a given sample period (typically 20 to 30 minutes).
The direction from which ocean waves approach a location. Generally, the principal wave direction is represented by the direction which corresponds to the peak period of the energy spectrum (TP1).
Significant period = average period of the waves used to define Hsig
Period of the peak of the energy spectrum.
MHL Buoy Data is released under the MIT license.