画时频图python
时间: 2023-10-19 12:36:10 浏览: 266
python-cwt时频图绘制
要在Python中画时频图,可以使用matplotlib库中的函数来进行绘制。下面是一个简单的示例代码:
```python
import numpy as np
import matplotlib.pyplot as plt
# 生成信号数据
t = np.linspace(0, 1, 1000) # 时间序列
frequencies = np.linspace(0, 100, 100) # 频率序列
signal = np.sin(2 * np.pi * frequencies[:, np.newaxis * t) # 生成时频数据
# 绘制时频图
plt.imshow(signal, aspect='auto', origin='lower', cmap='jet')
plt.colorbar(label='Amplitude')
plt.xlabel('Time')
plt.ylabel('Frequency')
plt.title('Spectrogram')
plt.show()
```
这段代码生成一个大小为(100, 1000)的2D数组,表示100个频率上的信号在1000个时间点上的振幅。然后使用`plt.imshow()`函数将这个2D数组作为图像显示出来,使用`aspect='auto'`参数保持图像比例适配,`origin='lower'`参数将图像的原点放在左下角,`cmap='jet'`参数使用jet颜色映射。通过`plt.colorbar()`函数添加颜色条来表示振幅大小。最后使用`plt.xlabel()`、`plt.ylabel()`和`plt.title()`函数添加轴标签和标题。
请根据你的具体需求进行参数的调整,比如修改时间序列和频率序列的范围,更换颜色映射等。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>
阅读全文