[英]How to plot frequency band using `matplotlib.pyplot.specgram`
[英]How to plot a Spectrogram of an audio file using Third Octave (1/3) Band central frequency instead of default narrow band in python?
import matplotlib.pyplot as plot
from scipy.io import wavfile
samplingFrequency, signalData = wavfile.read('someaudiofile.wav')
plot.specgram(signalData,cmap=plot.cm.rainbow_r, Fs=samplingFrequency)
plot.xlabel('Time')
plot.ylabel('Frequency')
這里plot.specgram
使用窄帶 plot 頻譜圖,而不是我想使用 1/3(第三)倍頻程 plot 頻譜圖。 我不知道我必須更改此plot.specgram
function 的哪個參數。
是否有任何其他 python 庫或任何其他方法,通過它我可以使用兩個輸入(信號數據/樣本和采樣頻率)使用 1/3 倍頻程頻段的 plot 頻譜圖?
Python package python-acoustics根據 IEC 61260-1 實現了 1/3 倍頻程頻帶。
對於繪圖,您可以使用acoustics.Signal.plot_third_octaves 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.