python中dpi_python matplotlib 绘图 和 dpi对应关系

importtimeimportscipy.signal as signallimportnumpy as npimportmatplotlibimportmatplotlib.pyplot as plt

y_axis_last=np.linspace(0.0, 0.0, 21120)

plt_x=0

plt_arr=np.random.rand(1024, 1)defparse_output(start_freq, stop_freq,step ,donser_now_lable,donser, num_now, min_freq):"""Parse data from soapy_power"""

#define size

x_axis = np.linspace(start_freq, stop_freq, round((stop_freq -start_freq)))

y_axis= np.linspace(0.0, 0.0, round((stop_freq -start_freq) ))#print(len(x_axis))

donser_now_lable=donser_now_lable+len(x_axis)#y_axis deal

globaly_axis_last , plt_x , plt_arr

i=0

temp_lab=0for num in range(donser_now_lable+1,len(donser),1):if num>=len(donser):

y_axis[i]=0

temp_lab=len(donser)-donser_now_lableif num_now==1:

y_axis[i]=donser[num]else:

y_axis[i]=(donser[num]*0.65+y_axis_last[i]*0.35)

i=i+1

if i==len(x_axis):breaky_axis_last=y_axis

time_stop=time.time()#FFT change

if temp_lab!=0:return -1wave_data1=y_axis[0:len(x_axis)]#print(len(x_axis))

wave_data2 = wave_data1 *signall.hann(len(x_axis))

c=np.fft.fft(wave_data2[0:len(x_axis)])*2/len(x_axis)#print(len(c))

d=int(len(c)/2)

y_axis=abs(c[0:d])

x_axis.resize(d)

min=100max=0for i in range(0,len(y_axis),1):if y_axis[i]>max:

max=y_axis[i]if y_axis[i]

min=y_axis[i]#print(max)

#print(min)

#x_axis y_axis to buffer & update buffer

if min_freq isNone:

min_freq=start_freqif start_freq ==min_freq:

databuffer= {"timestamp": time_stop,"x": list(x_axis),"y": list(y_axis)}else:

databuffer["x"].extend(x_axis)

databuffer["y"].extend(y_axis)if stop_freq >0:#data_storage.update(databuffer)

#self.plt_arr=np.random.rand(1024)

#self.plt_x=0

#print(self.plt_x)

if plt_x==0:

plt_arr=y_axis

plt_arr.resize(len(y_axis) ,1)print("first time")else:

plt_temp=y_axis

plt_temp.resize(len(y_axis) ,1)

plt_arr=np.concatenate((plt_arr,plt_temp ), axis=1)#print(self.plt_arr)

if plt_x%1000==0:print(plt_x)if plt_x%1000==0:

cm=‘hot‘norm= matplotlib.colors.Normalize(vmin=min, vmax=max)

map=plt.imshow(plt_arr,interpolation=‘nearest‘,cmap=cm,norm=norm, origin=‘upper‘)

plt.xticks([])

plt.yticks([])

plt.axis(‘off‘)#plt.colorbar(mappable=map,ax=None,shrink=0.5, pad=0)

plt.savefig("filename.png", dpi=1320)#plt.show()

print("-------------------------->")print(plt_x)

plt_x+=1temp_str=str(num_now)returndonser_now_labledefmain():

num_now=1donser_now_lable=0

sys_start_freq= 87000000.0 #start fre 87MHZ

sys_stop_freq = 108127168.0 #stop fre 108MHZ

step = 10316#5158 # 2579.0 #Bin size 1KHZ new (108127168-87000000)/8192

bins = 2048 #4096 #8192 #21120# 10560 #sampling number MHZ

#time_s = 1 # ?times

stop_freq = sys_start_freq #init

min_freq =None

plt_x=0#donser=np.fromfile("C:\\Users\\Administrator\\Desktop\\bins\\123.b_le.bin", dtype=np.int16 )

donser=np.fromfile("C:\\Users\\Administrator\\Desktop\\bins\\1.b_le.bin", dtype=np.int16 ,count=629145600) #600M 629145600

while 1:#time_start = time.time()

start_freq =stop_freqif start_freq>=sys_stop_freq:breakstop_freq= start_freq+bins#print("Start:", start_freq)

#print("Stop :", stop_freq)

donser_now_lable=parse_output(start_freq,stop_freq, step,donser_now_lable,donser, num_now, min_freq)

num_now=num_now+1

if donser_now_lable>=len(donser) :break

if __name__ == "__main__":

main()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值