文本的样式
python直接读取文件
import matplotlib.pyplot as plt
import re
import numpy as np
import os,sys
filepath = "C:\\Users\\pite\\Desktop\\log\\"
savepath = "C:\\Users\\pite\\Desktop\\pic\\"
dirs = os.listdir( filepath )
for file in dirs:
f = open(filepath+file,'r')
lines = f.readlines()
all_data = []
imu_data = []
gnss_data = []
gps_imu_spl_data= []
qxrtk_data = []
ZMQbg1_data = []
ZMQbg2_data = []
dds1_data = []
dds2_data = []
total_data =[]
time = ""
total_time = 0
for line in lines:
if "imu" in line and "gps_imu_spl+" not in line:
imu_list = line.split()
imu_data.append(float(imu_list[8]))
if "gnss" in line :
gnss_list = line.split()
gnss_data.append(float(gnss_list[8]))
if "gps_imu_spl+" in line :
gps_imu_spl_list = line.split()
gps_imu_spl_data.append(float(gps_imu_spl_list[8]))
if "rR00000" in line :
dds1_list = line.split()
dds1_data.append(float(dds1_list[8]))
if "rEvt000" in line:
dds2_list = line.split()
dds2_data.append(float(dds2_list[8]))
if "ZMQbg/1" in line:
ZMQbg1_list = line.split()
ZMQbg1_data.append(float(ZMQbg1_list[8]))
if "ZMQbg/2" in line:
ZMQbg2_list = line.split()
ZMQbg2_data.append(float(ZMQbg2_list[8]))
if "qxwz_daemon" in line:
qxrtk_list = line.split()
qxrtk_data.append(float(qxrtk_list[8]))
if "top -" in line :
time_list = line.split()
time = time_list[4]
total_time =""
if ":" in time:
total_time = int(re.split('[:,]',time)[0])*60+int(re.split('[:,]',time)[1])
else:
total_time = int(time)
total_data = [(imu_data [i] + gnss_data[i]+gps_imu_spl_data[i]+
qxrtk_data[i]+
ZMQbg1_data[i]+
ZMQbg2_data[i]+
dds1_data[i]+
dds2_data[i]) for i in range(0, len(imu_data))]
fig = plt.figure(figsize=(50,6))
ax = np.linspace(0,total_time,len(imu_data))
plt.plot(ax,imu_data,label="imu")
plt.plot(ax,gnss_data,label="gnss")
plt.plot(ax,gps_imu_spl_data,label="gps_imu_spl+")
plt.plot(ax,qxrtk_data,label="qxrtk")
plt.plot(ax,ZMQbg1_data,label="ZMQbg/1")
plt.plot(ax,ZMQbg2_data,label="ZMQbg/1")
plt.plot(ax,dds1_data,label="dds1")
plt.plot(ax,dds2_data,label="dds2")
plt.plot(ax,total_data,label="total")
plt.legend()
plt.savefig(savepath+file.split('.txt')[0]+'.png')
```