matplotlib.pyplot.csd¶
-
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)[源代码]¶ 绘制交叉光谱密度。
交叉光谱密度 \(P_{{xy}}\) 采用韦尔奇平均周期图法。向量 x 和 y 分为 NFFT 长度段。每段按函数递减 颓势 并按功能设置窗口 窗口 . 诺弗莱普 给出段之间重叠的长度。直接自由流速度的乘积 x 和 y 对每个要计算的段取平均值 \(P_{{xy}}\) ,具有校正窗口造成的功率损失的缩放。
如果兰 x < NFFT 或兰 y < NFFT ,它们将被零填充到 NFFT .
参数: - x, y一维数组或序列
包含数据的数组或序列。
- Fs浮动,默认值:2
采样频率(每个时间单位的采样数)。用于计算傅里叶频率, 弗雷克斯 ,以每时间单位的周期为单位。
- 窗口 :callable或ndarray,默认值:
window_hanning
callable或ndarray,默认值: 长度函数或向量 NFFT . 要创建窗口向量,请参见
window_hanning
,window_none
,numpy.blackman
,numpy.hamming
,numpy.bartlett
,scipy.signal
,scipy.signal.get_window
如果函数作为参数传递,它必须将数据段作为参数并返回该段的窗口版本。- sides{'default','onesided','twosided'},可选
哪些方面应该回归默认情况下,对于实际数据为单面,对于复杂数据为双面“单侧”强制返回单侧频谱,而“双侧”强制返回双侧频谱。
- pad_to可选的
执行FFT时填充数据段的点数。这可能不同于 NFFT ,指定使用的数据点的数量。虽然不能增加光谱的实际分辨率(可分辨峰之间的最小距离),但这可以在图中给出更多的点,从而提供更多的细节。这对应于 n 对fft()的调用中的参数。默认值为“无”,设置 pad_to 等于 NFFT
- NFFTint,默认值:256
用于FFT的每个块中使用的数据点的数目。功率2是最有效的。这应该 NOT 用于获取零填充,否则结果的缩放将不正确;使用 pad_to 为了这个。
- detrend{'none'、'mean'、'linear'}或可调用,默认为'none'
在快速傅立叶变换前应用于每一段的函数,用来消除平均或线性趋势。与matlab不同,其中 颓势 参数是向量,在Matplotlib中是函数。这个
mlab
模块定义detrend_none
,detrend_mean
和detrend_linear
,但也可以使用自定义函数。也可以使用字符串选择函数之一:“none”调用detrend_none
. '卑鄙的电话detrend_mean
. '线性呼叫detrend_linear
.- scale_by_freqbool,默认值:True
产生的密度值是否应按缩放频率缩放,该频率以Hz^-1为单位给出密度。这允许对返回的频率值进行积分。对于MATLAB兼容性,默认值为True。
- noverlapint,默认值:0(无重叠)
线段之间重叠的点数。
- Fcint,默认值:0
中心频率 x ,它偏移绘图的x范围,以反映采集信号时使用的频率范围,然后对信号进行滤波和下采样到基带。
- return_linebool,默认值:False
是否在返回值中包含绘制的线对象。
返回: - Pxy一维阵列
交叉光谱的值 \(P_{{xy}}\) 缩放前(复数)。
- freqs一维阵列
与中的元素相对应的频率 Pxy .
- line :
Line2D
线2D 此函数创建的行。仅在以下情况下返回 return_line 是True。
其他参数: - **kwargs
关键字参数控制
Line2D
性能:财产 描述 agg_filter
一种过滤函数,它接受一个(m,n,3)浮点数组和一个dpi值,并返回一个(m,n,3)数组。 alpha
浮动或无 animated
布尔 antialiased
或者aa布尔 clip_box
Bbox
clip_on
布尔 clip_path
面片或(路径、变换)或无 color
或c颜色 contains
未知的 dash_capstyle
“对接”、“圆形”、“突出” dash_joinstyle
'miter'、'round'、'bevel' dashes
浮动顺序(点中的开/关墨迹)或(无,无) data
(2,N)阵列或两个一维阵列 drawstyle
或ds{'default','steps','steps pre','steps mid','steps post'},default:'默认' figure
Figure
fillstyle
'full'、'left'、'right'、'bottom'、'top'、'none' gid
STR in_layout
布尔 label
对象 linestyle
或ls'-'、'-'、'-'、'-'、':'、'、'、'(偏移量、开/关顺序)、… linewidth
或lw浮动 marker
标记样式字符串, Path
或MarkerStyle
markeredgecolor
或mec颜色 markeredgewidth
或者喵喵浮动 markerfacecolor
或mfc颜色 markerfacecoloralt
或mfcalt颜色 markersize
或ms浮动 markevery
None或int or(int,int)或slice或List [int] 或float或(float,float)或List [bool] path_effects
AbstractPathEffect
picker
未知的 pickradius
浮动 rasterized
布尔或无 sketch_params
(比例:浮动,长度:浮动,随机性:浮动) snap
布尔或无 solid_capstyle
“对接”、“圆形”、“突出” solid_joinstyle
'miter'、'round'、'bevel' transform
matplotlib.transforms.Transform
url
STR visible
布尔 xdata
一维阵列 ydata
一维阵列 zorder
浮动
参见
psd
- 相当于设置
y = x
.
笔记
对于绘图,功率绘制为 \(10 \log_{{10}}(P_{{xy}})\) 但是对于分贝 \(P_{{xy}}\) 返回自身。
工具书类
Bendat&Piersol——随机数据:分析和测量程序,John Wiley&Sons(1986)
注解
除了上述参数外,此函数还可以 data 关键字参数。如果这样的话 data 参数,下列参数也可以是字符串
s
,解释为data[s]
(除非引起例外): x , y .作为传递的对象 data 必须支持项目访问 (
data[s]
)和会员资格测试 (s in data
)