在marplot.lib上使用来自scipy的find_peaks中的突出显示会导致不良读取

问题描述

我的原始图的最大x值约为450,但是当我打印出峰时,其中有670。 当我打印出峰时,它表示等于[45 85 539 677]。我看着Image of graph + peak

import csv
import matplotlib.pyplot as plt
import numpy as np
from scipy.signal import find_peaks
r = csv.reader(open("/Users/briansong/Library/Mobile Documents/com~apple~CloudDocs/Downloads/Sonar 2020-10-27 22-50-05/Echo location.csv")) 
lines = list(r)
distance = []
cc = []
for i in range(1,len(lines)): 
    a = lines[i][0]
    b = lines[i][1]
    if b == "" or a == "":
        break
    index1 = a.find("E")
    index2 = b.find("E")
    num1 = float(a[:index1])
    num2 = float(b[:index2])
    distance.append(num1 * 10 ** float(a[index1 + 1:]))
    cc.append(num2 * 10 ** float(b[index2 + 1:]))

plt.xlabel("distance")
plt.ylabel("CC")

x = np.array(distance)
y = np.array(cc)
peaks,_ = find_peaks(y,prominence= 0.03)
print(peaks)
plt.plot(x,y)
plt.plot(peaks,y[peaks],'x')
plt.show()
 # plt.plot(distance,poly_y)
plt.show()

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)