The Spectral Diagram (SD) is a new tool for the comparison of time series in the frequency domain

Overview

Spectral-Diagram (SD)

This repo refers to this article:

Calim et al., 2021: The Spectral Diagram as a new tool for model assessment in the frequency domain: Application to a global ocean general circulation model with tides, Computers and Geosciences, 2021,104977,ISSN 0098-3004,

CAGEO ScienceDirect

The Spectral Diagram (SD) is a new tool for the comparison of time series in the frequency domain. The SD provides a novel way to display the coherence function, power, amplitude, phase, and skill score of discrete frequencies of two time series. Each SD summarises these quantities in a single plot for multiple targeted frequencies.

Although the SD has been designed for tidal analysis, it is a powerful tool for detecting co-oscillating patterns in multi-scale analyses, and this approach might provide guidance in devising skill scores for inter-comparing model results.

Amplitude features in SDs: ScreenShot

Phase features in SDs: ScreenShot

The following is a summary of appropriate and inappropriate uses of SDs:

  • Careful interpretation is required when a non-stationary time series is subjected to SD analysis. In such cases, localized transforms, e.g., wavelets, are preferable.
  • Ensures that the Nyquist frequency is not violated before using SD diagram. Such a violation can result in poor approximation of the chosen frequency (or band of frequencies) via SD analysis if the time series is too short or the sampling rate is not small enough.
  • The SD enables a multiple band of frequencies analysis without using filtering techniques, which implies convolution costs.
  • It is possible to track different time slots and multi-region comparisons using a normalized standard deviation of power strategy, with the drawback that time series amplitude have to be scaled
  • It is a powerful tool to detect co-oscillating patterns in a multi scale analysis and anomalous patterns in a phenomena analysis.
  • SDs clearly display changes in amplitude and phase, thereby highlighting the co-oscillating frequencies to overcome the limited information contained in power spectrum analyses.
  • The need for better representing the degree of correspondence between simulated and observed fields for a given frequency (or frequency bands) is fulfilled by this novel tool inspired by relevant tide features.

Manual installation

First steps:

cd  PATH_TO_SAVE_SD_IN_YOUR_HOME
git clone https://github.com/mabelcalim/Spectral-Diagram.git
cd Spectral-Diagram/

A local install can be done using the provided setup.py file:

    python3 setup.py install

Pypi download
    python3 -m pip install SpecDiag==0.1.0

Support Group

users support group

Funding

This work was supported by National Counsel of Technological and Scientific Development (CNPQ), Grants No. 2012/02675-21, Coordination for the Improvement of Higher Education Personnel (CAPES) Grant No. 99999.005769/2014-00 (Migrado - BEX) (Doutorado-Sanduiche Australia), Bolsa Projeto CAPES/ANA BESM Grant No. 88887.115872/2015-01, and the National Institute for Science and Technology for Climate Change – INCT-MC Grant No. 465501/2014-1.

Owner
Mabel
Mabel
Create 3d loss surface visualizations, with optimizer path. Issues welcome!

MLVTK A loss surface visualization tool Simple feed-forward network trained on chess data, using elu activation and Adam optimizer Simple feed-forward

7 Dec 21, 2022
A tool to plot and execute Rossmos's Formula, that helps to catch serial criminals using mathematics

Rossmo Plotter A tool to plot and execute Rossmos's Formula using python, that helps to catch serial criminals using mathematics Author: Amlan Saha Ku

Amlan Saha Kundu 3 Aug 29, 2022
Getting started with Python, Dash and Plot.ly for the Data Dashboards team

data_dashboards Getting started with Python, Dash and Plot.ly for the Data Dashboards team Getting started MacOS users: # Install the pyenv version ma

Department for Levelling Up, Housing and Communities 1 Nov 08, 2021
Simple python implementation with matplotlib to manually fit MIST isochrones to Gaia DR2 color-magnitude diagrams

Simple python implementation with matplotlib to manually fit MIST isochrones to Gaia DR2 color-magnitude diagrams

Karl Jaehnig 7 Oct 22, 2022
Here are my graphs for hw_02

Let's Have A Look At Some Graphs! Graph 1: State Mentions in Congressperson's Tweets on 10/01/2017 The graph below uses this data set to demonstrate h

7 Sep 02, 2022
nvitop, an interactive NVIDIA-GPU process viewer, the one-stop solution for GPU process management

An interactive NVIDIA-GPU process viewer, the one-stop solution for GPU process management.

Xuehai Pan 1.3k Jan 02, 2023
Automatically generate GitHub activity!

Commit Bot Automatically generate GitHub activity! We've all wanted to be the developer that commits every day, but that requires a lot of work. Let's

Ricky 4 Jun 07, 2022
GitHub Stats Visualizations : Transparent

GitHub Stats Visualizations : Transparent Generate visualizations of GitHub user and repository statistics using GitHub Actions. ⚠️ Disclaimer The pro

YuanYap 7 Apr 05, 2022
Cryptocurrency Centralized Exchange Visualization

This is a simple one that uses Grafina to visualize cryptocurrency from the Bitkub exchange. This service will make a request to the Bitkub API from your wallet and save the response to Postgresql. G

Popboon Mahachanawong 1 Nov 24, 2021
EPViz is a tool to aid researchers in developing, validating, and reporting their predictive modeling outputs.

EPViz (EEG Prediction Visualizer) EPViz is a tool to aid researchers in developing, validating, and reporting their predictive modeling outputs. A lig

Jeff 2 Oct 19, 2022
Pydrawer: The Python package for visualizing curves and linear transformations in a super simple way

pydrawer 📐 The Python package for visualizing curves and linear transformations in a super simple way. ✏️ Installation Install pydrawer package with

Dylan Tintenfich 56 Dec 30, 2022
A Python library created to assist programmers with complex mathematical functions

libmaths was created not only as a learning experience for me, but as a way to make mathematical models in seconds for Python users using mat

Simple 73 Oct 02, 2022
2D maze path solver visualizer implemented with python

2D maze path solver visualizer implemented with python

SS 14 Dec 21, 2022
在原神中使用围栏绘图

yuanshen_draw 在原神中使用围栏绘图 文件说明 toLines.py 将一张图片转换为对应的线条集合,视频可以按帧转换。 draw.py 在原神家园里绘制一张线条图。 draw_video.py 在原神家园里绘制视频(自动按帧摆放,截图(win)并回收) cat_to_video.py

14 Oct 08, 2022
Visualize the training curve from the *.csv file (tensorboard format).

Training-Curve-Vis Visualize the training curve from the *.csv file (tensorboard format). Feature Custom labels Curve smoothing Support for multiple c

Luckky 7 Feb 23, 2022
Displaying plot of death rates from past years in Poland. Data source from these years is in readme

Average-Death-Rate Displaying plot of death rates from past years in Poland The goal collect the data from a CSV file count the ADR (Average Death Rat

Oliwier Szymański 0 Sep 12, 2021
BrowZen correlates your emotional states with the web sites you visit to give you actionable insights about how you spend your time browsing the web.

BrowZen BrowZen correlates your emotional states with the web sites you visit to give you actionable insights about how you spend your time browsing t

Nick Bild 36 Sep 28, 2022
D-Analyst : High Performance Visualization Tool

D-Analyst : High Performance Visualization Tool D-Analyst is a high performance data visualization built with python and based on OpenGL. It allows to

4 Apr 14, 2022
Leyna's Visualizing Data With Python

Leyna's Visualizing Data Below is information on the number of bilingual students in three school districts in Massachusetts. You will also find infor

11 Oct 28, 2021
basemap - Plot on map projections (with coastlines and political boundaries) using matplotlib.

Basemap Plot on map projections (with coastlines and political boundaries) using matplotlib. ⚠️ Warning: this package is being deprecated in favour of

Matplotlib Developers 706 Dec 28, 2022