- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
Python数据分析基础与应用
模块
PAGE6
PAGE5
电子活页7-36绘制折线图分析股票数据
【任务7-3】绘制折线图分析股票数据
【任务描述】
使用已有股票数据,编写代码绘制高质量折线图分析股票数据,步骤如下。
①导入模块与读取数据及数据处理。
②绘制简单的股票收盘价折线图。
③给折线图添加标题并设置y轴标签。
④给折线图添加图例。
⑤将折线图中的网格线去掉。
⑥在折线图中添加一些注释文字。
⑦在折线图中正确显示中文。
⑧在折线图中设置x轴、y轴上刻度字体的大小。
【任务实现】
在JupyterNotebook开发环境中创建t7-03.ipynb,然后在单元格中编写代码与输出对应的结果。
1.导入模块
代码如下:
importpandasaspd
importmatplotlib.pyplotasplt
fromdatetimeimportdatetime
plt.style.use(seaborn-darkgrid)
2.读取数据
代码如下:
path=r.\data\stock-2021-4.csv
data=pd.read_csv(path)
3.数据预处理
代码如下:
stock=data.drop(columns=Unnamed:0)
stock[date]=pd.to_datetime(stock.date,format=%Y-%m-%d)
stock=stock.set_index(date)
stock.head()
输出结果:
4.绘制简单的股票收盘价折线图
代码如下:
plt.figure(figsize=(10,6))
plt.plot(stock[close])
输出结果如图1W所示。
图1W股票收盘价折线图之一
图1W所示的股票收盘价折线图看起来有点儿单调和简单,只能够看到数据的变化趋势,无法了解这条折线所表示的意义。下面我们来进行一系列的优化。
5.给折线图添加标题并设置y轴标签
先给图表添加标题并给y轴设置标签。
代码如下:
plt.figure(figsize=(10,6))
plt.plot(stock[close])
#添加标题和给y轴设置标签
plt.ylabel(ClosingPrice,fontsize=15)#收盘价
plt.title(StockPrice,fontsize=18)#标题:股票价格
输出结果如图2W所示。
图2W股票收盘价折线图之二
现有的y轴代表的是股票收盘价,如果想再往图表当中添加另外一列数据代表成交量“volume”,“volume”这一列数据的数值范围和已有的股票收盘价的数值范围不同,如果放在一起,绘制出来的图表可能不好看。
对应的代码如下:
plt.figure(figsize=(12,6))
plt.plot(stock[close])
#第二条折线
plt.plot(stock[volume])
#设置y轴的标签
plt.ylabel(ClosingPrice,fontsize=15)
plt.title(Price-Volume,fontsize=18)
输出结果如图3W所示。
图3W股票收盘价与成交量折线图之一
从图3W中可以看到,代表股票收盘价的那条蓝线变成了接近水平的直线,由于股票收盘价的数值范围和“volume”这一列数据的数值范围相差较大,因此还需要一个y轴来代表“volume”这一列数据。
对应的代码如下:
fig,ax1=plt.subplots(figsize=(10,6))
#第2个y轴的标记
ax2=ax1.twinx()
ax1.plot(stock[close])
ax2.plot(stock[volume],color=r)
#添加标题和y轴的标签,有两个y轴
ax1.set_ylabel(ClosingPrice,fontsize=15)
ax2.set_ylabel(Volume,fontsize=15)
plt.title(Price-Volume,fontsize=18)
输出结果如图4W所示。
图4W股票收盘价与成交量折线图之二
上述代码中通过twinx()方法新建一个y轴对象,其对应的数据是“volume”这一列数据,而给y轴设置标签的方式也从前面的plt.ylabel()变成了ax.set_ylabel()。
6.给折线图添加图例
接下来给绘制好的折线图添加图例,不同的折线代表的是不同的数据。
代码如下:
#添加图例
ax1.legend([closingprice],loc=2,fontsize=12)
ax2.legend([volume],
您可能关注的文档
- Python数据分析基础与应用电子活页3-4【技能训练3-8】使用多种方法定义多维NumPy数组.docx
- Python数据分析基础与应用电子活页3-5使用linspace函数创建等差数组对象.docx
- Python数据分析基础与应用电子活页3-6使用size属性和dtype属性.docx
- Python数据分析基础与应用电子活页3-7一维数组的变维操作.docx
- Python数据分析基础与应用电子活页3-8实现普通索引运算.docx
- Python数据分析基础与应用电子活页3-9NumPy数组的赋值操作.docx
- Python数据分析基础与应用电子活页3-10使用ndarray对象的view()方法返回一个数组副本.docx
- Python数据分析基础与应用电子活页3-11使用ndarray对象的copy()方法返回原数组的副本.docx
- Python数据分析基础与应用电子活页3-12灵活利用整数数组进行索引操作.docx
- Python数据分析基础与应用电子活页3-13灵活利用布尔类型的数组进行索引操作.docx
最近下载
- 人教版三年级上册数学全册教学设计(配2025年秋新版教材).docx
- 西南交通大学机械原理课后习题答案.pdf VIP
- 大模型面试题-15-大模型 RAG 经验面.pdf VIP
- 环境统计第二章.ppt VIP
- 2021年新教材人教A版高中数学必修第一册第五章三角函数 教学课件.pptx VIP
- (完整版)幼儿园卫生保健培训.pptx VIP
- 苏教版数学四年级上册第八单元《垂线与平行线》课件.pptx VIP
- 110kV变电站电气设备安装及调试施工方案.pdf VIP
- 西南交通大学机械原理课后习题答案.pdf VIP
- 江西省南昌市一中2024-2025学年高一下学期第一次月考语文试题(含解析).docx VIP
文档评论(0)