读取.mat一维振动数据,并画图

import numpy as np
import scipy.io as scio

import matplotlib.pyplot as plt
from scipy.io import loadmat

#读取西储大学数据集的一条信号,然后画图
annots = loadmat(r'D:\WMH\Datasets\cwru\48k Drive End Bearing Fault Data\110.mat')
print(annots.keys())
# print(annots['X105_DE_time'])
plt.figure(figsize=(15,5))
plt.plot(annots['X110_DE_time'][:10000])#选取前10000个数据点
plt.show()

#计算一维振动信号的均值和峭度
# N = len(annots['X105_DE_time'])
# x = annots['X105_DE_time']
# x1 = np.sum(annots['X105_DE_time']) / N#这个公式代表一维振动信号的 均值
# print(np.sum(annots['X105_DE_time']) / N)
# print(np.sum(annots['X105_FE_time']) / len(annots['X105_FE_time']))
# x1 = np.sum(x) / N
# K = (np.sum((x-x1)**4)/N) / ((np.sum((x-x1)**2)/N)**2) #这个公式代表一维振动信号的 峭度
# print(K)
#前10000个数据点

 

不选前多少个数据点

plt.plot(annots['X110_DE_time']

 

#伯恩
f = loadmat(r'D:\WMH\Dataset\born\paderborn\K001\N15_M07_K001_01.mat')
fl = loadmat(f)[N15_M07_K001_01] 
fl
= fl[0][0][2][0][6][2] #Take out the data
fl = fl.reshape(-1,1)

plt.figure(figsize=(15,5))
plt.plot(fl)
plt.show()

 

posted @ 2022-06-16 17:06  灵性  阅读(268)  评论(0)    收藏  举报