Download presentation
Presentation is loading. Please wait.
Published byLauri Ahola Modified 5年之前
1
Python金融数据分析教程 解放你的python编程能力 第3关 复杂金融数据图形展示 Python金融数据分析教程 1
2
课程内容 通过本课程学习,你将学习到 画双坐标轴图形 同时画多幅子图 图片中显示中文 闯关作业 Python金融数据分析教程
3
画双坐标轴图形(1) 1. 将数据保存到list数据结构中 list_year = [ 2006, 2007, 2008, 2009,
2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017 ] list_gdp = [ , , , , , , , , , , , ] list_gdp_growth = [ 12.70, 14.20, 9.70, 9.40, 10.60, 9.50, 7.90, 7.80, 7.30, 6.90, 6.70, 6.90 ] 数据来源:国家统计局网站 Python金融数据分析教程
4
画双坐标轴图形(2) 2. 使用matplotlib画图 看不清楚了 # 导入python画图库matplotlib
import matplotlib.pyplot as plt # 设置图片大小 plt.figure(figsize=(8,6)) # 画柱状图 plt.bar(list_year, list_gdp) plt.plot(list_year, list_gdp_growth, color='red') # 标识标题及坐标轴信息 plt.title('gdp amount / growth from 2006 to 2017') plt.xlabel('year') plt.ylabel('gdp amount / growth') # 显示画图结果 plt.show() 看不清楚了 Python金融数据分析教程
5
画双坐标轴图形(3) 关键语句 2. 使用matplotlib画图 # 导入python画图库matplotlib
import matplotlib.pyplot as plt # 设置图片大小 fig = plt.figure(figsize=(8,6)) # 画柱状图 ax1 = fig.add_subplot(1,1,1) ax1.bar(list_year, list_gdp, label='gdp amount') ax1.legend(loc='upper left') ax1.set_xlabel('year') ax1.set_ylabel('gdp amount') # 画折线图 ax2 = ax1.twinx() ax2.plot(list_year, list_gdp_growth, color='red', label='gdp growth') ax2.legend(loc='upper right') ax2.set_ylabel('gdp growth') ax2.set_ylim(0, 20) # 标识标题及坐标轴信息 plt.title('gdp amount / growth from 2006 to 2017') # 显示画图结果 plt.show() 关键语句 Python金融数据分析教程
6
画双坐标轴图形(4) well done!!! Python金融数据分析教程
7
同时画多幅子图(1) 关键语句 关键语句 # 导入python画图库matplotlib
import matplotlib.pyplot as plt # 设置图片大小 fig = plt.figure(figsize=(8,6)) # 画柱状图 ax1 = fig.add_subplot(2,1,1) ax1.bar(list_year, list_gdp, label='gdp amount') ax1.legend(loc='upper left') ax1.set_ylabel('gdp amount') ax1.set_title('gdp amount from 2006 to 2017') # 画折线图 ax2 = fig.add_subplot(2,1,2) ax2.plot(list_year, list_gdp_growth, color='red', label='gdp growth') ax2.legend(loc='upper right') ax2.set_ylabel('gdp growth') ax2.set_ylim(0, 15) ax2.set_title('gdp growth from 2006 to 2017') ax2.grid(True) # 调整子图之间的间距 plt.tight_layout() # 显示画图结果 plt.show() 关键语句 Python金融数据分析教程
8
同时画多幅子图(2) 因吹斯汀!! Python金融数据分析教程
9
同时画多幅子图(3) 关键语句 # 导入python画图库matplotlib
import matplotlib.pyplot as plt # 设置图片大小 fig = plt.figure(figsize=(8,6)) # 画柱状图 ax1 = fig.add_subplot(1,2,1) ax1.bar(list_year, list_gdp, label='gdp amount') ax1.legend(loc='upper left') ax1.set_ylabel('gdp amount') ax1.set_title('gdp amount from 2006 to 2017') # 画折线图 ax2 = fig.add_subplot(1,2,2) ax2.plot(list_year, list_gdp_growth, color='red', label='gdp growth') ax2.legend(loc='upper right') ax2.set_ylabel('gdp growth') ax2.set_ylim(0, 15) ax2.set_title('gdp growth from 2006 to 2017') ax2.grid(True) # 调整子图之间的间距 plt.tight_layout() # 显示画图结果 plt.show() Python金融数据分析教程
10
同时画多幅子图(4) 赞赞赞!!! Python金融数据分析教程
11
坐标使用中文(1) 乱码?? # 导入python画图库matplotlib import matplotlib.pyplot as plt
# 设置图片大小 fig = plt.figure(figsize=(8,6)) # 画柱状图 ax1 = fig.add_subplot(1,1,1) ax1.bar(list_year, list_gdp, label='gdp总量') ax1.legend(loc='upper left') ax1.set_xlabel('年份') ax1.set_ylabel('gdp总量') # 画折线图 ax2 = ax1.twinx() ax2.plot(list_year, list_gdp_growth, color='red', label='gdp增长率') ax2.legend(loc='upper left') ax2.set_ylabel('gdp增长率') ax2.set_ylim(0, 20) # 标识标题及坐标轴信息 plt.title('2006 至 2017 中国GDP 总量 / 增长率 示意图') plt.legend() # 显示画图结果 plt.show() 乱码?? Python金融数据分析教程
12
坐标使用中文(2) 舒服多了 from matplotlib.pylab import mpl # 指定默认字体
mpl.rcParams['font.sans-serif'] = ['FangSong'] # 解决保存图像是负号'-'显示为方块的问题 mpl.rcParams['axes.unicode_minus'] = False 舒服多了 Python金融数据分析教程
13
闯关作业 1.画一张招商银行2018年2月份股价图,包含下面两张子图: 每天的收盘价折线图 每日的涨跌幅柱状图
要求使用中文坐标,数据见表格。 trade_date close change_rate 34.45 34.50 34.89 34.62 32.39 31.28 30.71 30.05 30.91 31.37 31.50 31.78 31.51 30.87 30.30 Python金融数据分析教程
14
欢迎访问 Python金融数据分析教程
Similar presentations