python_小脚本——读取txt,并画折线图

文本的样式

在这里插入图片描述

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:
        # re.compile(r'imu').findall()

        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()
            # print(time_list)
            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)
    # print(total_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')
	```
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值