AI写作智能体 自主规划任务,支持联网查询和网页读取,多模态高效创作各类分析报告、商业计划、营销方案、教学内容等。 广告
一、读取数据 ``` import pandas as pd import numpy as np import matplotlib.pyplot as plt df = pd.read_csv('test02.txt', sep='\t', index_col=['time'], skiprows=8) print(df) df.plot() plt.show() ``` ![](https://box.kancloud.cn/02dd254df9d49fe93fe3914c2a36aac6_899x352.png) 二、 import pyqtgraph as pg import numpy as np filePath = 'vvl.TXT' class TxtRead(): ''' # 提取数据 # 数据分为: #头部说明部分IDblock, #接着数据部分DGblock #名称行GName #单位行GUnit #剩下行是数据部分GData ''' def __init__(self,filePath): self.__file = open(filePath,mode='r') #file对象 self.__readFile() def __readFile(self): fileLines = self.__file.readlines() #读取整个文件行 # 读出IDblock和DGblock部分 num = 0 IDblock = [] DGblock = [] for line in fileLines : lin = line.strip('\n') # 使用strip()函数去掉每行结束的\n lin = lin.split('\t') # 以制表符分割 if lin[-1] == '\n': # 去掉换行符单独占一个列数据的问题 del lin[-1] if lin[0] == 't:': # DGblock第一行第一个总是以时间单位名称开头 num = 1 if num == 0: IDblock.append(lin) else: DGblock.append(lin) # IDblock部分的处理 是一个二维数组,第一行只有一个,要补全 for lin in IDblock: if len(lin) == 1 : lin.append('null') self.IDblock = np.asarray(IDblock) # 将DGblock部分的GName,GUnit,GData部分提取 for lin in DGblock: del lin[-1] # 删除最后一列 self.GName = np.asarray(DGblock[0]) self.GUnit = np.asarray(DGblock[1]) data = [] for lin in DGblock[2:]: j = [] for i in lin: j.append(float(i)) data.append(j) self.GData = np.asarray(data) def pg_plot(data): plot = pg.plot(title='州的先生zmister.com PyQtGraph教程 - plot()方法绘制两条线') plot.plot(data[:,0],data[:,1]) plot.plot(data[:,0],data[:,6]) plot.plot(data[:,0],data[:,9]) pg.QtGui.QGuiApplication.exec_() txt = TxtRead(filePath) print(txt.GName) print(txt.GUnit) pg_plot(txt.GData)