资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

如何在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中绘制时间序列数据
网址分享:http://cdkjz.cn/article/jopipd.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:400-028-6601 / 大客户专线   成都:13518219792   座机:028-86922220