从某种意义上来说,Python有些类似于MATLAB,也可以进行数据的分析。由于在Linux下,gnuradio为Python提供了良好的接口,所以可以将gnuradio与Python联合起来进行数据分析。比如在gnuradio中将数据写入到了file sink,下面以将file sink数据绘制星座图为例,程序如下:
import scipy
import pylab
from gnuradio import blocks,gr
src = blocks.file_source(gr.sizeof_gr_complex*1, "/home/xiaojingling/tx_rrc_filter.32fc", False)
snk = blocks.vector_sink_c()
tb = gr.top_block()
tb.connect(src,snk)
tb.run()
data=scipy.array(snk.data()[20:1000])
f1=pylab.figure(1,figsize=(8,8),facecolor='w')
s1=f1.add_subplot(1,1,1)
s1.plot(data.real,data.imag,'.')
s1.set_xlim([-2,2])
s1.set_ylim([-2,2])
pylab.show()
如果要显示时域图,只要s1.plot(data.real,"r-",label="Time")