Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


These plots are based on the same information/configuration as the original State of Ocean/Environment plots, except that they use daily min/max + average data. These plots are available in Data Preview alongside the originals. Here are some examples from our testing environment (data quality in the test environment is suspect, do not use these examples for any analysis):

State of Ocean Anomaly Plot from Saanich InletState of Ocean Climatology Plot for Saanich Inlet

The anomaly plot (left) shows a time series of daily averages coloured on whether the value for that date is above the 66 percentile (red) or is below the 33 percentile (blue), where the percentiles are calculated from daily average values for that day of the year. The climatology plot (right) shows the day of year data for each sensor, showing the seasonality of the data. The grey lines in this plot are daily averages, while the black lines are the overall daily averages computed from the daily averages. The red and blue lines are the 66 and 33 percentiles calculated from the daily average for each day of the year (this data is also used in the anomaly plot). Green lines are this years' daily averages. Leap days are excluded from the climate plot and the day of year averages. The percentiles aren't showed if there is less than 3 years of data on each date, so the anomaly plot maybe empty for new deployments and the climate plot may omit the red and blue lines.


dailyTime, dailyAverage, dailyCount are copies of time, average, count in the normal 'data' structure, but are added in case the data is calculated with data gaps filled. The code is capable of calculating these variables from hourly or other averaged data (currently we use daily data, so this step is essentially a pass-through). The dailyAverageByYear, dailyCountByYear are a reshape of the dailyAverage and dailyCount data into a matrix that is year by date, where the year is specified by iYear and the date is 1 to 365 (leap days excluded), so the matrix is n years by 365 days. dayOfYearAverage, dayOfYearCount, dayOfYear33Percentile, dayOfYear66Percentile are the day of year statistics for each of the 365 years of the year. The dayOfYearCount is the count of the raw readings on that day of the year, whereas dayOfYearCountDays is the number of days that have data. So for the 15 years of Saanich Inlet, if only 5 years have data on a specific day, that dayOfYearCountDays value is 5, but dayOfYearCount will be ~400000 readings. dayOfYearCountDays is used to determine if there is enough data (minimum 3) for a valid percentile calculation. dailyAverageAbove66PercentiledailyAverageBelow33Percentile are the values used the anomaly plot, so that they are daily time series of the same size as the daily average data, and their values are either the dailyAverage or NaN if they are not above/below the percentile. The anomaly plot is then simply: