使用这一块的函数,需要导入import librosa.dsiplay

1.specshow:显示语谱图

data:语谱矩阵 y_axis可以为:None或linear,log,mel,cqt_hz,cqt_note
import librosa
import librosa.display
import matplotlib.pyplot as plt
import numpy as np
signal,fs=librosa.load(librosa.util.example_audio_file())
plt.figure()
D=librosa.amplitude_to_db(np.abs(librosa.stft(signal)),ref=np.max)
librosa.display.specshow(D,y_axis='linear')
librosa.display.specshow(D,y_axis='log')


2.waveplot:绘制波形的幅值包络

y:可以是单通道或双通道的音频信号 max_points:如果信号的时间点超过,就要被降采样
signal1,fs=librosa.load(librosa.util.example_audio_file(),duration=10)
librosa.display.waveplot(signal1)

3.cmap:获取给定数据的colormap
4.TimeFormatter:设置时间轴刻度
![]()
import matplotlib.pyplot as plt
import numpy as np
times = np.arange(30)
values = np.random.randn(len(times))
plt.figure()
ax = plt.gca()
ax.plot(times, values)
ax.xaxis.set_major_formatter(librosa.display.TimeFormatter(lag=True))
ax.set_xlabel('Time')
ax.set_title('lag')




本文详细介绍使用Librosa库进行音频数据可视化的多种方法,包括如何显示语谱图、绘制波形幅值包络及设置时间轴刻度,帮助读者掌握音频分析的关键技能。

2747

被折叠的 条评论
为什么被折叠?



