matplotlib.pyplot.cohere#
- matplotlib.pyplot.cohere(x,y,*,NFFT=256,Fs=2,Fc=0,detrend=<functiondetrend_none>,window=<functionwindow_hanning>,noverlap=0,pad_to=None,sides='default',scale_by_freq=None,data=None,**kwargs)[source]#
Plot the coherence betweenx andy.
Coherence is the normalized cross spectral density:
\[C_{xy} = \frac{|P_{xy}|^2}{P_{xx}P_{yy}}\]- Parameters:
- Fsfloat, default: 2
The sampling frequency (samples per time unit). It is used to calculatethe Fourier frequencies,freqs, in cycles per time unit.
- windowcallable or ndarray, default:
window_hanning
A function or a vector of lengthNFFT. To create window vectors see
window_hanning
,window_none
,numpy.blackman
,numpy.hamming
,numpy.bartlett
,scipy.signal
,scipy.signal.get_window
, etc. If afunction is passed as the argument, it must take a data segment as anargument and return the windowed version of the segment.- sides{'default', 'onesided', 'twosided'}, optional
Which sides of the spectrum to return. 'default' is one-sided for realdata and two-sided for complex data. 'onesided' forces the return of aone-sided spectrum, while 'twosided' forces two-sided.
- pad_toint, optional
The number of points to which the data segment is padded when performingthe FFT. This can be different fromNFFT, which specifies the numberof data points used. While not increasing the actual resolution of thespectrum (the minimum distance between resolvable peaks), this can givemore points in the plot, allowing for more detail. This corresponds tothen parameter in the call to
fft
. The default is None,which setspad_to equal toNFFT- NFFTint, default: 256
The number of data points used in each block for the FFT. A power 2 ismost efficient. This shouldNOT be used to get zero padding, or thescaling of the result will be incorrect; usepad_to for this instead.
- detrend{'none', 'mean', 'linear'} or callable, default: 'none'
The function applied to each segment before fft-ing, designed to removethe mean or linear trend. Unlike in MATLAB, where thedetrend parameteris a vector, in Matplotlib it is a function. The
mlab
module definesdetrend_none
,detrend_mean
, anddetrend_linear
,but you can use a custom function as well. You can also use a string tochoose one of the functions: 'none' callsdetrend_none
. 'mean' callsdetrend_mean
. 'linear' callsdetrend_linear
.- scale_by_freqbool, default: True
Whether the resulting density values should be scaled by the scalingfrequency, which gives density in units of 1/Hz. This allows forintegration over the returned frequency values. The default is True forMATLAB compatibility.
- noverlapint, default: 0 (no overlap)
The number of points of overlap between blocks.
- Fcint, default: 0
The center frequency ofx, which offsets the x extents of theplot to reflect the frequency range used when a signal is acquiredand then filtered and downsampled to baseband.
- Returns:
- Cxy1-D array
The coherence vector.
- freqs1-D array
The frequencies for the elements inCxy.
- Other Parameters:
- dataindexable object, optional
If given, the following parameters also accept a string
s
, which isinterpreted asdata[s]
ifs
is a key indata
:x,y
- **kwargs
Keyword arguments control the
Line2D
properties:Property
Description
a filter function, which takes a (m, n, 3) float array and a dpi value, and returns a (m, n, 3) array and two offsets from the bottom left corner of the image
float or None
bool
bool
BboxBase
or Nonebool
Patch or (Path, Transform) or None
CapStyle
or {'butt', 'projecting', 'round'}JoinStyle
or {'miter', 'round', 'bevel'}sequence of floats (on/off ink in points) or (None, None)
(2, N) array or two 1D arrays
{'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}, default: 'default'
{'full', 'left', 'right', 'bottom', 'top', 'none'}
color or None
str
bool
object
{'-', '--', '-.', ':', '', (offset, on-off-seq), ...}
float
marker style string,
Path
orMarkerStyle
float
markersize
orms
float
None or int or (int, int) or slice or list[int] or float or (float, float) or list[bool]
bool
list of
AbstractPathEffect
float or callable[[Artist, Event], tuple[bool, dict]]
float
bool
(scale: float, length: float, randomness: float)
bool or None
CapStyle
or {'butt', 'projecting', 'round'}JoinStyle
or {'miter', 'round', 'bevel'}unknown
str
bool
1D array
1D array
float
Notes
Note
This is thepyplot wrapper for
axes.Axes.cohere
.References
Bendat & Piersol -- Random Data: Analysis and Measurement Procedures,John Wiley & Sons (1986)