現在我正在努力繪制應該顯示我的資料集峰值的圖表,但看起來 find_peaks 函式正在切斷每個不適合峰值檢測的資料點。有誰知道我如何仍然可以通過替換不適合零的資料點來繪制圖表,或者還有其他可能性嗎?
我收到以下錯誤訊息:
ValueError:x 和 y 必須具有相同的第一維,但具有形狀 (800,) 和 (105,)
def plot():
i = 1
d_time, d_x, d_y, d_z = [], [], [], []
columns = ["Time", "y", "x", "z"]
df = pd.read_csv("mydata.csv", usecols=columns)
for zeile in df.Time:
if i % 30 == 0:
d_time.append(df.Time[i])
d_x.append(df.x[i])
d_y.append(df.y[i])
d_z.append(df.z[i])
i = 1
elif i > 24000:
break
else:
i = 1
fig = plt.figure(dpi=64, figsize=(100, 60))
p_z, _ = scipy.signal.find_peaks(d_z, 0, distance=5)
plt.plot(d_time, d_z, c='red', label="Z-Achse")
plt.plot(d_time, p_z, "x", c='blue', label="Peaks Z-Achse")
plt.title("Peak Detection", fontsize=16)
plt.xlabel('t(s)', fontsize=16)
fig.autofmt_xdate()
plt.ylabel("a(m/s2)", fontsize=16)
plt.tick_params(axis='both', which='major')
plt.legend()
plt.show()
plot()
鏈接到 Mydata.csv:

轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/433245.html
標籤:Python matplotlib scipy 值错误 峰值检测
上一篇:在mpf財務圖中添加箭頭
