如何在python中使用myplotlib和pandas绘制CSV数据
发布时间:2020-12-20 11:58:01 所属栏目:Python 来源:网络整理
导读:我有一个 python代码,其中我使用pandas读取csv文件并在一个日期时间列中存储日期和时间.现在我想在y轴上绘制传感器值,在x轴上绘制数据时间.我怎样才能实现这一目标?我的代码如下: import pandas as pdimport datetimeimport csvimport matplotlib.pyplot a
我有一个
python代码,其中我使用pandas读取csv文件并在一个日期时间列中存储日期和时间.现在我想在y轴上绘制传感器值,在x轴上绘制数据时间.我怎样才能实现这一目标?我的代码如下:
import pandas as pd import datetime import csv import matplotlib.pyplot as plt import matplotlib.dates as mdates headers = ['Sensor Value','Date','Time'] df = pd.read_csv('C:/UsersLala RushanDownloadsDataLog.CSV',parse_dates= {"Datetime" : [1,2]},names=headers) print (df) 下面是数据集中的一些行: Datetime Sensor Value 0 2017/02/17 19:06:17.188 2 1 2017/02/17 19:06:22.360 72 2 2017/02/17 19:06:27.348 72 3 2017/02/17 19:06:32.482 72 4 2017/02/17 19:06:37.515 74 5 2017/02/17 19:06:42.580 70 6 2017/02/17 19:06:47.660 72 解决方法
确保您的日期列采用日期时间格式,并在matplotlib中使用plot()函数.您可以执行类似于
this的操作.此处x值将是您的日期列,y值将是传感器值.
import pandas as pd from datetime import datetime import csv import matplotlib.pyplot as plt import matplotlib.dates as mdates headers = ['Sensor Value',names=headers) print (df) df['Date'] = df['Date'].map(lambda x: datetime.strptime(str(x),'%Y/%m/%d %H:%M:%S.%f')) x = df['Date'] y = df['Sensor Value'] # plot plt.plot(x,y) # beautify the x-labels plt.gcf().autofmt_xdate() plt.show() (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |