반응형
약 300,000 개의 데이터 포인트에서 이동 평균을 플로팅했으며 신호의 피크에 대한 최대 y 값과 해당 주파수 인 해당 x 값을 찾아야합니다. 플롯 자체의 좌표를 제공하고 싶지만 적어도 인쇄 할 수 있다면 만족할 것입니다. 내 프로그래밍 기술이 가장 강하지 않기 때문에 실례합니다. 여기에 내가 작업중인 코드 섹션과 생성되는 플롯에 대한 링크가 있습니다. 이미지를 게시 할 포인트가 충분하지 않습니다.
def movingaverage(interval, window_size):
window= np.ones(int(window_size))/float(window_size)
return np.convolve(interval, window, 'same')
x = freq[0:300000]
y = fft
pylab.plot(x,y,"k.")
y_av = movingaverage(y, 30)
pylab.plot(x, y_av,"r")
pylab.xlim(0,10)
pylab.ylim(0,1500)
pylab.xlabel("Frequency")
pylab.ylabel("Moving Average Magnitude")
pylab.grid(True)
pylab.show()
해결 방법
다음과 같이 할 수 있어야합니다.
max_y = max(y_av) # Find the maximum y value
max_x = x[y_av.index(max_y)] # Find the x value corresponding to the maximum y value
print max_x, max_y
수정
numpy 배열에는 인덱스 메소드가 없으므로 주석에서 지적한대로 argmax를 사용해야합니다.
max_y = max(y_av) # Find the maximum y value
max_x = x[y_av.argmax()] # Find the x value corresponding to the maximum y value
print max_x, max_y
pylab.text(max_x, max_y, str((max_x, max_y)))
참조 페이지 https://stackoverflow.com/questions/11871241
반응형
'파이썬' 카테고리의 다른 글
파이썬 공백을 제거하려면 어떻게합니까? (0) | 2021.02.11 |
---|---|
파이썬 Start IDLE with python 3 on Linux (python 2.7 installed alongside) (0) | 2021.02.11 |
파이썬 Print Combining Strings and Numbers (0) | 2021.02.10 |
파이썬 같은 줄에 새 출력 인쇄 (0) | 2021.02.10 |
파이썬 Python과 Powers 수학 (0) | 2021.02.10 |
댓글