I need to generate a wave scatter plot(Hs,Tp) showing the probability of occurrence of sea states using a wave climate record sampled every 3 hours a day for a whole year. Does anyone know how to do this? or maybe suggest to me some references?

enter image description here


1 Answer 1


Judging by the question, I assume this task is with regards to a homework assignment or a similar project. I will therefore not provide an explicit solution, but rather some guiding assistance.

As you've stated, 3-hour sea states are usually defined by their peak wave period $T_p$ and significant wave height $H_s$. If one is to describe the environmental conditions (here waves, but same applies for e.g. wind) for a given location, it is therefore of interest to know the frequency of each $[H_s$, $T_p]$ pair, or in other words, $H_s | T_p$ (i.e. $H_s$ given $T_p$). The date and time the pair occured is actually of no interest, since we're only looking to extract the statistical properties anyway.

The industry standard for displaying such data is in terms of a scatter diagram as shown in Figure 1. Although a scatter plot or a contour plot might be more visually pleasing, a table greatly surpasses them in terms of accurately describing the measured hindcast data. It is then left to the user of the data to extract the data as needed. I will not go into detail on how the data may be further used.

enter image description here Figure 1: Omni-directional scatter diagram of the Haltenbaken area (Laverton, 2015). Each number represents the amount of occurences of that specific $[H_s$, $T_p]$ pair during the entire measured interval. Sums are displayed on each side for simplicity.

When it comes to creating a scatter diagram directly from hindcast data, I would recommend you to script it in a programming language of your choosing. The psudo-code goes something along the lines of:

for all sea states
    extract Hs and Tp
    add 1 (occurence) to the corresponding cell in your 2d array 
        # ..representing the scatter diagram
print 2d array to screen or extract to excel

For simplicity, start out with a small sample size of 10-20 to ensure your routine behaves as intended. Then move on to the full dataset.

I have not fully read through the below source, but it will contain more details on the topic as well as references to several other sources as desired. Good luck!

  • $\begingroup$ Thank you for your response. Yes, it is for an undergraduate project. Incorporating MATLAB's histcounts2 function I wrote a program that simply puts particular sea states into relevant bins specified by intervals. However, initially I had some concerns regarding the accuracy of this representation since we do not take into consideration the specific date and time a pair occurred and wondered if there is some complex way of doing this. $\endgroup$ Aug 22, 2022 at 16:19
  • $\begingroup$ In the scatter diagram above, one assumes that the true probability distribution of sea states is constant, and that the collected measurements is an estimate of the true unknown distribution. For many approaches, this assumption is sufficient for performing an analysis. However, there are indeed methods of using/displaying hindcast data which are more dependent on the date and time of each sea state. A simple scenario is if you're only considering weather statistics during a specific month or over a certain period. Another example is by performing an analysis using the "Random storm approach" $\endgroup$
    – ToxicOwl
    Aug 24, 2022 at 10:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.