我有一些我很想绘制的复杂数据(设定频率周围的小带宽),但我对如何继续解释在特定范围内采样的复杂信号感到有些困惑。
因此,例如,这是我编写的代码(以及我对问题的相当糟糕的尝试),因此我有一个干净的示例来试验人工信号,该示例生成 78 KHz 波的复杂表示。我想要做的是得到一个以 120 KHz 为中心,跨度从 70 到 170 KHz 的图,模拟真实接收器的窄采样范围。
import numpy as np
import matplotlib.pyplot as plt
#sampling rate, samples/second; 100 KHz
rate = 100*10**3
#sample spacing in time, seconds/sample
interval = np.true_divide(1, rate)
#length of the fourier transform
n = 256
#time vector
t = np.linspace(0.0, n*interval, n)
#frequency of artificial signal; 78 KHz
f = 78*10**3
#complex signal
s = np.exp(1j*2*np.pi*f*t)
#dft of the data
dft = np.fft.fft(s)
#frequency bins
x = np.fft.fftfreq(n, d=interval) …Run Code Online (Sandbox Code Playgroud)