一维数据二维化的办法汇总(二)

上次写了2种方法,分别是格拉米角场GAFs和马尔可夫变迁场 MTF,这次还有2个,分别是递归图 Recurrence Plot和短时傅里叶变换STFT。

2.递归图RP

单个图片生成代码为:

def show_RP(data,k):
    from mpl_toolkits.axes_grid1 import make_axes_locatable
    from pyts.image import RecurrencePlot

    rp = RecurrencePlot(dimension=3, time_delay=3)
    X_new = rp.transform(data)

    plt.figure()
    ax1 = plt.subplot()
    plt.imshow(X_new[k])
    plt.title('Recurrence plot, dimension=3, time_delay=3')
    divider = make_axes_locatable(ax1)
    cax = divider.append_axes("right", size="5%", pad=0.2)
    plt.colorbar(cax=cax)
    plt.show()

4种故障状态生成图片如下:

一维数据二维化的办法汇总(二)_第1张图片

3.短时傅里叶变换STFT

短时傅里叶变换大家可能就比较熟悉了,单个图片生成代码为:

def show_STFT(data,k):
    fs = 12000  # sampling frequency
    amp = 2 * np.sqrt(2)
    per_seg_length = 200  # window length
    f, t, Zxx = scisig.stft(data[k], fs, nperseg=per_seg_length, noverlap=0, nfft=per_seg_length, padded=False)
    plt.figure()
    ax2 = plt.subplot()
    ax2.pcolormesh(t, f, np.abs(Zxx))
    plt.title('STFT Magnitude')
    ax2.set_ylabel('Frequency [Hz]')
    ax2.set_xlabel('Time [sec]')
    plt.show()

 4种故障状态生成图片如下:

一维数据二维化的办法汇总(二)_第2张图片

最后还剩一种我知道的时频图,先买个关子,下一次和最终测试效果一起写。

 

你可能感兴趣的:(西储大学,python,时频图,二维图像,西储大学轴承数据)