成都创新互联网站制作重庆分公司

如何在Matplotlib中绘制时间序列数据

这篇文章主要介绍了如何在Matplotlib中绘制时间序列数据,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

创新互联建站专业提供成都主机托管四川主机托管成都服务器托管四川服务器托管,支持按月付款!我们的承诺:贵族品质、平民价格,机房位于中国电信/网通/移动机房,德阳服务器托管服务有保障!

背景介绍

将学习如何在Matplotlib中绘制时间序列数据。时间序列数据由包含日期的数据组成。例如绘制在过去几周内比特币价格走势。我们将学习如何以不同方式格式化日期,以便它们更好地与我们的图形一起使用。让我们开始吧...

如何在Matplotlib中绘制时间序列数据


入门实例

首先来看一个基本的时间序列图,以及格式化x轴的日期显示方式:

from datetime import datetime,timedeltafrom matplotlib import pyplot as pltfrom matplotlib import dates as mpl_dates#设置图表样式plt.style.use('seaborn')#读取数据dates_x = [  datetime(2019,7,24),  datetime(2019,7,25),  datetime(2019,7,26),  datetime(2019,7,27),  datetime(2019,7,28),  datetime(2019,7,29),  datetime(2019,7,30)]#纵轴数据y列表y = [0,1,3,5,7,8,9]#绘制时间序列图表plt.plot_date(dates_x,y,lineStyle='solid')#格式化x轴日期显示plt.gcf().autofmt_xdate()#指定显示的格式date_format = mpl_dates.DateFormatter('%m/%d/%Y')plt.gca().xaxis.set_major_formatter(date_format)plt.tight_layout()plt.show()
 

运行结果:

如何在Matplotlib中绘制时间序列数据

 

综合实例

我们从一个数据文件中data.csv读取过去一段时间关于比特币的价格收盘价的数据走势,内容大致如下:

如何在Matplotlib中绘制时间序列数据

实现:import pandas as pdfrom datetime import datetime,timedeltafrom matplotlib import pyplot as pltfrom matplotlib import dates as mpl_datesfrom matplotlib import font_managerfrom pandas.plotting import \register_matplotlib_convertersregister_matplotlib_converters()#设置图表样式plt.style.use('seaborn')#读取数据data = pd.read_csv('data.csv')#csv文件中数据中date为str类型#这里做处理方便展示图表时#能够按照日期排序显示data['Date'] = pd.to_datetime(data['Date'])data.sort_values('Date', inplace=True)price_date = data['Date']price_close = data['Close']#调用plot_date()#显示时间序列数据图表plt.plot_date(price_date, price_close,       linestyle='solid')#格式化x轴日期显示plt.gcf().autofmt_xdate()zh_font = font_manager.\FontProperties(fname='C:\\Windows\\Fonts\\msyh.ttf')plt.title('比特币价格',fontproperties=zh_font)plt.xlabel('日期',fontproperties=zh_font)plt.ylabel('收盘价',fontproperties=zh_font)plt.tight_layout()plt.show()
 

运行结果:

如何在Matplotlib中绘制时间序列数据

感谢你能够认真阅读完这篇文章,希望小编分享的“如何在Matplotlib中绘制时间序列数据”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!


新闻名称:如何在Matplotlib中绘制时间序列数据
网页URL:http://cxhlcq.com/article/jopipd.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部