Time Series Curve Similarity

Using DTW to compare curve similarity

from dtaidistance import dtw as dtwd
import numpy as np
import matplotlib.pyplot as plt
from labellines import labelLines


x=np.arange(0,2*np.pi,0.1)
y=np.sin(x)
plt.plot(x, y,label='y')

for i in [0,1,2,3]:
    z=np.sin(x+(np.pi/2)*i)
    distance_s = dtwd.distance(y, z,use_c=True)
    plt.plot(x,z,label=str(i))
    print(distance_s)

#简单的设置legend(设置位置)
#位置在右上角
plt.legend(loc = 'upper right')
0.0
3.579437105036351
5.914434728535967
3.3300802329969446

insert image description here
When peaks and valleys are wrong, the distance is the largest

Guess you like

Origin blog.csdn.net/weixin_44831720/article/details/126060822