import numpy as np import matplotlib.pyplot as plt from scipy.io import loadmat import os # 读取.mat数据文件 data = loadmat('D:/cwru1/12k Drive End Bearing Fault Data/105.mat') # 提取数据中的轴承故障类型和轴承的振动信号 fault_type = data['X105_FE_time'][0] #根据想要输出信号确定data[' ']里面是 X105_BA_time 或 X105_FE_time 或X105_DE_time #加速传感器用:X105_BA_time 风扇端用:X105_FE_time 驱动端用:X105_DE_time vibration_signals = data['X105_FE_time'] # 设置采样频率 fs = 12000 # 绘制时频图 plt.specgram(vibration_signals.flatten(), Fs=fs, NFFT=fs//2, noverlap=fs//4) plt.colorbar() plt.xlabel('Time (s)') plt.ylabel('Frequency (Hz)') # 获取.mat文件的文件名 file_name = os.path.basename('D:/cwru1/12k Drive End Bearing Fault Data/105.mat') # 获取文件名的前缀和后缀 prefix, suffix = os.path.splitext(file_name) # 保存时频图 plt.savefig(f'D:/时频图/{prefix}.png') #D:/时频图 为图片保存路径 plt.show()
mat文件生成时频图,命名与原文件匹配,并自动保存到指定位置
最新推荐文章于 2024-07-12 16:16:27 发布