Matplotlib是Python中的一个库,它是数字的-NumPy库的数学扩展。 Pyplot是Matplotlib模块的基于状态的接口,该模块提供了MATLAB-like接口。
matplotlib.pyplot.csd()函数
matplotlib库的pyplot模块中的csd()函数用于绘制cross-spectral密度。
用法: matplotlib.pyplot.csd(x, y, NFFT=None, Fs=None, Fc=None, detrend=None, window=None, noverlap=None, pad_to=None, sides=None, scale_by_freq=None, return_line=None, \*, data=None, \*\*kwargs)
参数:此方法接受以下描述的参数:
- x:此参数是数据序列。
- Fs:此参数是标量。默认值为2。
- window:此参数将数据段作为参数,并返回该段的窗口版本。其默认值为window_hanning()
- sides:此参数指定要返回光谱的哪一侧。它可以具有以下值:‘default’,‘onesided’和‘twosided’。
- pad_to:此参数包含填充数据段的整数值。
- NFFT:此参数包含每个块中用于FFT的数据点数。
- detrend:此参数包含应用于fft-ing之前的每个段的函数,旨在删除均值或线性趋势{‘none’,‘mean’,‘linear’}。
- scale_by_freq:该参数允许对返回的频率值进行积分。
- noverlap:此参数是块之间的重叠点数。
- Fc:此参数是x的中心频率。
- return_line:此参数包括在返回值中绘制的线对象。
返回值:这将返回以下内容:
- Pxx:这将返回缩放之前的功率谱P_ {xx}的值。
- freqs:这将返回Pxx中元素的频率。
- line:这将返回此函数创建的行。
结果是(Pxx ,freqs, line)
以下示例说明了matplotlib.pyplot中的matplotlib.pyplot.psd()函数:
范例1:
# Implementation of matplotlib function
import numpy as np
import matplotlib.pyplot as plt
dt = 0.01
t = np.arange(0, 30, dt)
nse1 = np.random.randn(len(t))
s1 = 1.5 * np.sin(2 * np.pi * 10 * t) + nse1 + np.cos(np.pi * t)
plt.psd(s1**2, 512, 1./dt, color ="green")
plt.xlabel('Frequency')
plt.ylabel('PSD(db)')
plt.suptitle('matplotlib.pyplot.psd() function \
Example', fontweight ="bold")
plt.show()
输出:
范例2:
# Implementation of matplotlib function
import numpy as np
import matplotlib.pyplot as plt
dt = 0.01
t = np.arange(0, 30, dt)
nse1 = np.random.randn(len(t))
r = np.exp(-t / 0.05)
cnse1 = np.convolve(nse1, r, mode ='same')*dt
s1 = np.cos(np.pi * t) + cnse1 + np.sin(2 * np.pi * 10 * t)
plt.psd(s1, 2**14, dt)
plt.ylabel('PSD(db)')
plt.xlabel('Frequency')
plt.title('matplotlib.pyplot.psd() Example\n',
fontsize = 14, fontweight ='bold')
plt.show()
输出:
相关用法
注:本文由纯净天空筛选整理自SHUBHAMSINGH10大神的英文原创作品 Matplotlib.pyplot.psd() in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。