当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Matplotlib.pyplot.specgram()用法及代码示例


Matplotlib是Python中的一个库,它是数字的-NumPy库的数学扩展。 Pyplot是Matplotlib模块的基于状态的接口,该模块提供了MATLAB-like接口。

matplotlib.pyplot.specgram()函数

matplotlib库的pyplot模块中的specgram()函数用于绘制频谱图。

用法: matplotlib.pyplot.specgram(x, NFFT=None, Fs=None, Fc=None, detrend=None, window=None, noverlap=None, cmap=None, xextent=None, pad_to=None, sides=None, scale_by_freq=None, mode=None, scale=None, vmin=None, vmax=None, *, data=None, **kwargs)


参数:此方法接受以下描述的参数:

  • x:此参数是数据序列。
  • Fs:此参数是标量。默认值为2。
  • window:此参数将数据段作为参数,并返回该段的窗口版本。其默认值为window_hanning()
  • sides:此参数指定要返回频谱的哪一侧。它可以具有以下值:‘default’,‘onesided’和‘twosided’。
  • pad_to:此参数包含填充数据段的整数值。
  • Fc:此参数还包含一个整数值,用于抵消曲线图的x范围以反映频率范围。其默认值为0
  • NFFT:此参数包含每个块中用于FFT的数据点数。
  • detrend:此参数包含应用于fft-ing之前的每个段的函数,旨在删除均值或线性趋势{‘none’,‘mean’,‘linear’}。
  • scale_by_freq:该参数允许对返回的频率值进行积分。
  • mode:此参数是要使用哪种频谱{‘default’,‘psd’,‘magnitude’,‘angle’,‘phase’}。
  • noverlap:此参数是块之间的重叠点数。
  • scale:此参数包含规范{‘default’,‘linear’,'dB'}中值的缩放。
  • Fc:此参数是x的中心频率。
  • camp:此参数是matplotlib.colors.Colormap实例。

返回值:这将返回以下内容:

  • 频谱:这将返回以弧度为单位的角度频谱。
  • 频率:这将返回与频谱中的元素相对应的频率。
  • t:这将返回对应于段中点的时间。
  • 即时通讯:这将返回由imshow创建的包含频谱图的图像。

结果为(频谱,频率,t,im)

以下示例说明了matplotlib.pyplot中的matplotlib.pyplot.specgram()函数:

范例1:

# Implementation of matplotlib function 
import matplotlib.pyplot as plt  
import numpy as np  
  
    
dt = 0.005
t = np.arange(0.0, 20.0, dt)  
x = np.sin(np.pi * t) + 1.5 * np.cos(np.pi * 2*t)  
  
plt.specgram(x, Fs = 1) 
plt.title('matplotlib.pyplot.specgram() Example\n',  
          fontsize = 14, fontweight ='bold') 
  
plt.show()

输出:

范例2:

# Implementation of matplotlib function 
import matplotlib.pyplot as plt  
import numpy as np  
  
  
np.random.seed(9360801)  
    
dt = 0.0005
t = np.arange(0.0, 20.0, dt)  
s1 = np.sin(4 * np.pi * 100 * t)  
s2 = 1.5 * np.sin(1.5 * np.pi * 400 * t)  
    
s2[t <= 10] = s2[12 <= t] = 0
    
nse = 0.2 * np.random.random(size = len(t))  
    
x = s1 + s2 + nse    
NFFT = 512 
Fs = int(1.0 / dt)   
  
plt.specgram(x, Fs = Fs, cmap = plt.cm.bone)  
plt.title('matplotlib.pyplot.specgram() Example\n', 
          fontsize = 14, fontweight ='bold') 
  
plt.show()

输出:




相关用法


注:本文由纯净天空筛选整理自SHUBHAMSINGH10大神的英文原创作品 Matplotlib.pyplot.specgram() in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。