cohere(x, y, NFFT=256, Fs=2, detrend=<function detrend_none at 0x0000000>, window=<function window_hanning at 0x0000000>, noverlap=0, pad_to=None, sides='default', scale_by_freq=None)
$$C_{xy} = \frac{|P_{xy}|^2}{P_{xx}P_{yy}}$$
Array or sequence containing the data
The sampling frequency (samples per time unit). It is used to calculate the Fourier frequencies, freqs, in cycles per time unit.
A function or a vector of length NFFT. To create window vectors see .window_hanning
, .window_none
, numpy.blackman
, numpy.hamming
, numpy.bartlett
, scipy.signal
, scipy.signal.get_window
, etc. If a function is passed as the argument, it must take a data segment as an argument and return the windowed version of the segment.
Which sides of the spectrum to return. 'default' is one-sided for real data and two-sided for complex data. 'onesided' forces the return of a one-sided spectrum, while 'twosided' forces two-sided.
The number of points to which the data segment is padded when performing the FFT. This can be different from NFFT, which specifies the number of data points used. While not increasing the actual resolution of the spectrum (the minimum distance between resolvable peaks), this can give more points in the plot, allowing for more detail. This corresponds to the n parameter in the call to fft(). The default is None, which sets pad_to equal to NFFT
The number of data points used in each block for the FFT. A power 2 is most efficient. This should NOT be used to get zero padding, or the scaling of the result will be incorrect; use pad_to for this instead.
The function applied to each segment before fft-ing, designed to remove the mean or linear trend. Unlike in MATLAB, where the detrend parameter is a vector, in Matplotlib it is a function. The ~matplotlib.mlab
module defines .detrend_none
, .detrend_mean
, and .detrend_linear
, but you can use a custom function as well. You can also use a string to choose one of the functions: 'none' calls .detrend_none
. 'mean' calls .detrend_mean
. 'linear' calls .detrend_linear
.
Whether the resulting density values should be scaled by the scaling frequency, which gives density in units of Hz^-1. This allows for integration over the returned frequency values. The default is True for MATLAB compatibility.
The number of points of overlap between segments.
The coherence between x and y. Coherence is the normalized cross spectral density:
csd
For information about the methods used to compute :None:math:`P_{xy}`
, :None:math:`P_{xx}`
and :None:math:`P_{yy}`
.
psd
For information about the methods used to compute :None:math:`P_{xy}`
, :None:math:`P_{xx}`
and :None:math:`P_{yy}`
.
Hover to see nodes names; edges to Self not shown, Caped at 50 nodes.
Using a canvas is more power efficient and can get hundred of nodes ; but does not allow hyperlinks; , arrows or text (beyond on hover)
SVG is more flexible but power hungry; and does not scale well to 50 + nodes.
All aboves nodes referred to, (or are referred from) current nodes; Edges from Self to other have been omitted (or all nodes would be connected to the central node "self" which is not useful). Nodes are colored by the library they belong to, and scaled with the number of references pointing them