Python中正弦信号的频率和时频域特征

ny6fqffe  于 2023-08-08  发布在  Python
关注(0)|答案(1)|浏览(91)

下面是Python中创建的正弦波信号:

# Import libraries
import numpy as np
import matplotlib.pyplot as plt

Fs  = 1000                                              # Sampling frequency (Hz)
T   = 10                                                # Duration of time signal (s)
N   = T*Fs                                              # Number of data points
f   = 10                                                # Frequency of the sine wave signal (Hz)
t   = np.linspace(0, T, N)                              # Time axis data points
y   = 10 * np.sin(2*np.pi*f*t)                          # Amplitude of the sine wave signal

plt.figure(figsize=(8,8))                               # Figure size of the plot
plt.plot(t,y)                                           # time history plot of the sine wave
plt.xlabel('Time (s)')                                  # X-axis label
plt.ylabel('Amplitude')                                 # Y-axis label
##plt.xlim([0,2.5])                                     # X-axis limits
##plt.ylim([-8,18])                                     # Y-axis limits
plt.get_current_fig_manager().window.state('zoomed')    # Maximize the plot for full screen
plt.show()                                              # Show the plot

字符串
有人能帮我理解以下几点吗:
1.从10秒正弦波信号Python中可以提取出哪些“频域特征”?
1.在Python中可以从10 s正弦波信号中提取的各种“时频域特征”有哪些?
1.如何在Python中计算10秒正弦波信号的小波包能量和小波包熵?

qeeaahzv

qeeaahzv1#

对于第一个问题,请考虑信号的时域特性,以及它们在频率方面的含义。特别是,信号的主频是多少;它是无限的还是被截断的;以及采样的性质(采样频率)是什么。这些都对信号的频率特性有贡献。
关于您的第二个问题,specgram()(来自matplotlib)提供了信号的时间-频率呈现。请注意,在一个频率上有大量功率,并且有一些功率泄漏到相邻频率。
x1c 0d1x的数据

plt.specgram(y, N, Fs)
plt.xlabel('time')
plt.ylabel('Frequency')
plt.ylim(0, 50)

字符串

相关问题