gpt4 book ai didi

python - 矩阵的二维图,颜色类似于频谱图中的颜色

转载 作者:行者123 更新时间:2023-11-28 20:46:57 25 4
gpt4 key购买 nike

如何使用 Python 绘制二维矩阵 A[i,j],如下所示:

  • i 是 x 轴
  • j为y轴
  • A[i,j] 是一个介于 0 和 100 之间的值,必须用颜色绘制(例如:0=蓝色,100=红色)

有 Python 函数吗?

(注意:我不想要一个为我绘制频谱图的函数,例如 specgram ,因为我想自己计算信号的 FFT;因此我只需要一个用颜色绘制矩阵的函数)

Spectrogram sample

最佳答案

Z 成为数组,这是我最终使用的:

plt.imshow(np.transpose(Z), extent=[0,4.2,0,48000], cmap='jet',
vmin=-100, vmax=0, origin='lowest', aspect='auto')
plt.colorbar()
plt.show()

注意事项:

  • 'jet' 是在问题图像中看到的颜色图,另请参见 these colormaps

  • 设置 origin='lowest' 与将 np.transpose(Z) 替换为 np.transpose(Z)[: :-1,]

  • vmin, vmax 给出比例(示例中为 0 到 -100 dB)

  • extent 给出了 x 轴(这里是 0 到 4.2 秒)和 y 轴(0 到 48000 Hz)的限制(在这个例子中我绘制了频谱图采样率为 96Khz 的 4.2 秒长的音频文件)

  • 如果 aspect='auto' 未设置,绘图将非常薄且非常高(由于 4.2 对 48000!)

关于python - 矩阵的二维图,颜色类似于频谱图中的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20069545/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com