以下代码是实现不同频率的余弦信号绘制,并将它们显示在一个 3x2 的子图网格中。
import numpy as np
import matplotlib.pyplot as pltfig = plt.figure(figsize=(10, 10))
a1 = plt.subplot2grid((3, 2), (0, 0), colspan=2)
a2 = plt.subplot2grid((3, 2), (1, 0))
a3 = plt.subplot2grid((3, 2), (1, 1))
a4 = plt.subplot2grid((3, 2), (2, 0))
a5 = plt.subplot2grid((3, 2), (2, 1))
ax = [a1, a2, a3, a4, a5]n = np.linspace(-15, 15, 31) # 信号样点
f = np.array([0, 1 / 16., 1 / 8., 1 / 4., -1 / 4.]) # 每个样点的基本周期
w = 2 * np.pi * f # 角频率for i in range(len(w)):y = np.cos(w[i] * n) # 不同频率的信号ax[i].stem(n, y) # 画图ax[i].set_ylabel('$\omega=$' + str(f[i] * 2) + '$\pi$')
plt.tight_layout()
plt.show()