我正在编写OFDM信号的实现,并希望绘制一个信号-16 QAM。
我从实现映射表开始(Re和Im部分)。
import numpy as np
import matplotlib.pyplot as plt
import scipy
qam16 = 4
mapping_table= { (0,0,0,0) : -2-32j, (0,0,0,1) : -2-1j, (0,0,1,0) : -2+2j, (0,0,1,1) : -2+1j, (0,1,0,0) : -1-2j, (0,1,0,1) : -1-1j, (0,1,1,0) : -1+2j, (0,1,1,1) : -1+1j, (1,0,0,0) : 2-2j, (1,0,0,1) : 2-1j, (1,0,1,0) : 2+2j, (1,0,1,1) : 2+1j, (1,1,0,0) : 1-2j, (1,1,0,1) : 1-1j, (1,1,1,0) : 1+2j, (1,1,1,1) : 1+1j }
for b3 in [0, 1]:
for b2 in [0, 1]:
for b1 in [0, 1]:
for b0 in [0, 1]:
B = (b3, b2, b1, b0)
Q = mapping_table[B]
plt.plot(Q.real, Q.imag, 'bo')
plt.text(Q.real, Q.imag+0.2, "".join(str(x) for x in B), ha='center')
我无法得到结果。我没有一个图,也不知道如何解决这个问题。
我该如何解决绘图问题?
还有另一种写“映射表”的方法吗? 也许可以只写成一行?