用于python中的循环绘图

问题描述 投票:0回答:1

我正在尝试在同一图中用python绘制sinc函数,这基本上是OFDM载波信号,将在第二幅图中进行总结。

你能告诉我什么地方错了。这是代码段。

NoOfCarriers = 11 
interval = math.pi/50
f = np.arange((-5*math.pi),(5*math.pi),interval)  
fnoiseMax = 0.3
iMin = -(NoOfCarriers-1)//2
iMax =  (NoOfCarriers-1)//2
csum = np.zeros(len(f))
fList = [];cList = []

ax = plt.subplot(111)

for i in range(iMin,iMax):
    print("i = ", i)
    fnoise = fnoiseMax*(np.random.uniform(-1,1))
    fshift = (i * (1//math.pi) * math.pi) + fnoise
    c = np.sinc(f - fshift)
    csum = csum + c[i]
    fList = [fList,fshift]
    cList = [cList,max(c)]
    ax.plot(f, c)
    plt.grid(True)
    plt.show()

这是我得到的:enter image description here

这是我所期望的:upper figure is the OFDM subcarriers and lower figure is the sum of the all figure

  • 我不知道如何在python中添加词干函数。词干函数stem((i * (1/pi) * pi) + fnoise,1)的基本数学逻辑
  • 从循环中取出plt.show后更新图enter image description here

我正在尝试在同一图中用python绘制sinc函数,这基本上是OFDM载波信号,将在第二幅图中进行总结。你能告诉我出什么问题了吗?这是代码...

python numpy for-loop python-3.6
1个回答
0
投票

尝试将plt.show置于循环之外,这样:

© www.soinside.com 2019 - 2024. All rights reserved.