【发布时间】:2018-04-23 02:20:35
【问题描述】:
我的最终目标是从 csv 日志文件中获取 matplotlib 绘制的日期/时间和临时数据,数据格式如下:
date/time,temp1,temp2,temp3,temp4,ect
8/25/2017 14:55:49,20.851,20.953,21.025,21.055,ect
8/25/2017 14:56:49,20.799,20.944,20.99,21.029,ect
我试图将我的数据集硬塞到这个示例中作为起点: https://matplotlib.org/gallery/api/date.html
由于我仍然熟悉 matplotlib,我不确定首选输入是什么,上面的示例使用数组,所以如果这是最好的选择,那么我的问题是什么是获取这些数据的有效方法一个格式正确的数组?这是我在读取一行数据并弄清楚如何解析日期/时间并将其放入日期时间容器中的代码:
import datetime
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import matplotlib.cbook as cbook
f = open(r'Sample Data.csv')
#Burn off top crap of logfile
for x in range(38):
f.readline()
#Headers
pantsHeaders = f.readline()
#Start of data
pants1 = f.readline().replace('\x00','').strip('\n').split(',')
pantsDate = datetime.date(int(pants1[0].split(' ')[0].split('/')[2]),int(pants1[0].split(' ')[0].split('/')[0]),int(pants1[0].split(' ')[0].split('/')[1]))
pantsTime = datetime.time(int(pants1[0].split(' ')[1].split(':')[0]),int(pants1[0].split(' ')[1].split(':')[1]),int(pants1[0].split(' ')[1].split(':')[2]))
date = datetime.datetime.combine(pantsDate, pantsTime)
必须有一种更好的方法来解析日期/时间信息,而不是我这样做的方法,而且我愿意接受任何方法来获得 matplotlib 友好格式(数组或其他)。
【问题讨论】:
标签: python csv matplotlib