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
A small tool to test and visualize protein embeddings and amino acid proportions.

polyprotein_stats A small tool to test and visualize protein embeddings and amino acid proportions. Currently deployed on streamlit.io. Given a set of

2 Jan 07, 2023
This component provides a wrapper to display SHAP plots in Streamlit.

streamlit-shap This component provides a wrapper to display SHAP plots in Streamlit.

Snehan Kekre 30 Dec 10, 2022
Sparkling Pandas

SparklingPandas SparklingPandas aims to make it easy to use the distributed computing power of PySpark to scale your data analysis with Pandas. Sparkl

366 Oct 27, 2022
VDLdraw - Batch plot the log files exported from VisualDL using Matplotlib

VDLdraw Batch plot the log files exported from VisualDL using Matplotlib. At pre

Yizhou Chen 5 Sep 26, 2022
A custom qq-plot for two sample data comparision

QQ-Plot 2 Sample Just a gist to include the custom code to draw a qq-plot in python when dealing with a "two sample problem". This means when u try to

1 Dec 20, 2021
Create SVG drawings from vector geodata files (SHP, geojson, etc).

SVGIS Create SVG drawings from vector geodata files (SHP, geojson, etc). SVGIS is great for: creating small multiples, combining lots of datasets in a

Neil Freeman 78 Dec 09, 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
Standardized plots and visualizations in Python

Standardized plots and visualizations in Python pltviz is a Python package for standardized visualization. Routine and novel plotting approaches are f

Andrew Tavis McAllister 0 Jul 09, 2022
Visualize your pandas data with one-line code

PandasEcharts 简介 基于pandas和pyecharts的可视化工具 安装 pip 安装 $ pip install pandasecharts 源码安装 $ git clone https://github.com/gamersover/pandasecharts $ cd pand

陈华杰 2 Apr 13, 2022
Yata is a fast, simple and easy Data Visulaization tool, running on python dash

Yata is a fast, simple and easy Data Visulaization tool, running on python dash. The main goal of Yata is to provide a easy way for persons with little programming knowledge to visualize their data e

Cybercreek 3 Jun 28, 2021
An automatic prover for tautologies in Metamath

completeness An automatic prover for tautologies in Metamath This program implements the constructive proof of the Completeness Theorem for propositio

Scott Fenton 2 Dec 15, 2021
An interactive dashboard for visualisation, integration and classification of data using Active Learning.

AstronomicAL An interactive dashboard for visualisation, integration and classification of data using Active Learning. AstronomicAL is a human-in-the-

45 Nov 28, 2022
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
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
Plotly Dash Command Line Tools - Easily create and deploy Plotly Dash projects from templates

🛠️ dash-tools - Create and Deploy Plotly Dash Apps from Command Line | | | | | Create a templated multi-page Plotly Dash app with CLI in less than 7

Andrew Hossack 50 Dec 30, 2022
Browse Dash docsets inside emacs

Helm Dash What's it This package uses Dash docsets inside emacs to browse documentation. Here's an article explaining the basic usage of it. It doesn'

504 Dec 15, 2022
A tool for creating SVG timelines from simple JSON input.

A tool for creating SVG timelines from simple JSON input.

Jason Reisman 432 Dec 30, 2022
Python & Julia port of codes in excellent R books

X4DS This repo is a collection of Python & Julia port of codes in the following excellent R books: An Introduction to Statistical Learning (ISLR) Stat

Gitony 5 Jun 21, 2022
Simple Python interface for Graphviz

Simple Python interface for Graphviz

Sebastian Bank 1.3k Dec 26, 2022
Extensible, parallel implementations of t-SNE

openTSNE openTSNE is a modular Python implementation of t-Distributed Stochasitc Neighbor Embedding (t-SNE) [1], a popular dimensionality-reduction al

Pavlin Poličar 1.1k Jan 03, 2023