这篇文章主要介绍了如何在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()
运行结果:
我们从一个数据文件中data.csv读取过去一段时间关于比特币的价格收盘价的数据走势,内容大致如下:
实现: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中绘制时间序列数据”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。