股票价、量走势图绘制
今有股票代码600000行情交易数据表(trd.xlsx),其表结构如表7-7所示。数据来源于国泰安CSMAR数据库
问题如下:
(1)绘制股票代码600000,日期为2017-01-03至2017-01-20日的收盘价格走势图.
(2)绘制股票代码600000,日期为2017-01-03至2017-01-24日的交易量柱状图.
(3)计算股票代码600000,2017年1月至11月的交易量,并绘制其饼图。
(4)将以上的价格走势图、柱状图、饼图在同一个figure上以子图的形式绘制出来。
本节主要计算获得绘图所需的横轴和纵轴指标数据,包括股票代码600000的2017-01-03至2017-01-20日的收盘价格数据,2017-01-03至2017-01-24日的交易量数据和2017年1月至11月的交易量统计数据D,这里主要涉及数据的筛选及简单循环计算的编程技能。示例代码如下:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
data=pd.read_excel('trd.xlsx')
dt=data.loc[data['股票代码']==600000,['交易日期','收盘价','交易量']]
I1=dt['交易日期'].values>='2017-01-03'
I2=dt['交易日期'].values<='2017-01-20
dta=dt.iloc[I1&I2,:]
y1=dta['收盘价']
x1=range(len(y1))
I3=dt['交易日期'].values>='2017-01-03'
I4=dt['交易日期'].values<='2017-01-24'
dta=dt.iloc[I3&I4,:]
y2=dta['交易量']
x2=range(len(y2))
D=np.zeros((11))
list1=list()
for m in range(11):
m=m+1
if m<10:
m1='2017-0'+str(m)+'-01'
m2='2017-0'+str(m)+'-31'
mon='0'+str(m)
else:
m1='2017-'+str(m)+'-01'
m2='2017-'+str(m)+'-31'
mon=str(m)
I1=dt['交易日期'].values>=m1
I2=dt['交易日期'].values<=m2
D[m-1]=dt.iloc[I1&I2,[2]].sum()[0]
list1.append(mon)
plt.figure(1)
plt.plot(x1,y1)
plt.xlabel(u'日期',fontproperties='SimHei')
plt.ylabel(u'收盘价',fontproperties='SimHei')
plt.title(u'收盘价走势图',fontproperties='SimHei')
plt.savefig('1')
plt.figure(1)
plt.plot(x1,y1)
plt.xlabel(u'日期',fontproperties='SimHei')
plt.ylabel(u'收盘价',fontproperties='SimHei')
plt.title(u'收盘价走势图',fontproperties='SimHei')
plt.savefig('1')
plt.figure(2)
plt.bar(x2,y2)
plt.xlabel(u'日期',fontproperties='SimHei')
plt.ylabel(u'交易量 ',fontproperties='SimHei')
plt.title(u'交易量趋势图',fontproperties='SimHei')
plt.savefig('2')
plt.figure(3)
plt.pie(D,labels=list1,autopct='%1.2f%%') #保留小数点后两位
plt.title(u'月交易量分布图',fontproperties='SimHei')
plt.savefig('3')
plt.figure(4)
plt.figure(figsize=(14,6))
plt.subplot(1,3,1)
plt.plot(x1,y1)
plt.xlabel(u'日期',fontproperties='SimHei')
plt.ylabel(u'收盘价',fontproperties='SimHei')
plt.title(u'收盘价走势图',fontproperties='SimHei')
plt.subplot(1,3,2)
plt.bar(x2,y2)
plt.xlabel(u'日期',fontproperties='SimHei')
plt.ylabel(u'交易量',fontproperties='SimHei')
plt.title(u'交易量趋势图',fontproperties='SimHei')
plt.subplot(1,3,3)
plt.pie(D,labels=list1,autopct='%1.2f%%') #保留小数点后两位
plt.title(u'月交易量分布图',fontproperties='SimHei')
plt.savefig('4')
股票价、量走势图绘制相关推荐
- 从零开始实现k线图走势图绘制(iOS理论篇)
前言:现在做金融的越来越多了,在很多的技术群中都有人问到k线图怎么去做,有没有相关的框架?两年前,我刚入这金融公司也是走这条路,但是发现网上的框架不多,干脆就自己搞一个出来.没人分享相关知识,就分享下 ...
- 平均股价的时间序列图形_数据可视化——pandas绘制股票走势图
python数据可视化工具除了matplotlib底层绘图包,还有在matplotlib基础上分装的seaborn绘图包,此外,数据分析报pandas也在matplotlib基础上分装内置了绘图功能. ...
- 计算机常见的智能终端有哪些,2019年中国智能终端行业市场规模,及主要细分领域出货量情况 [图]...
智能终端即移动智能终端的简称.移动智能终端拥有接入互联网能力,通常搭载各种操作系统,可根据用户需求定制化各种功能.生活中常见的智能终端包括,智能收入.平板电脑.笔记本.可穿戴设备.车载智能终端等. 移 ...
- python画趋势图_python 绘制走势图
1.工具 matplotlib numpy 2.matplotlib使用 import matplotlib.pyplot as plt #plt用于显示图片 import matplotlib.im ...
- pandas、pyecharts绘制基金走势图-01
纯属练手! 最近基金的消息比较热门,自己页在支付宝上买了点.查看各个基金的走势时,需要不断打开页面进行查看,比较麻烦.正好在尝试pandas.pyecharts,所以拿来练练手. 目标: 可以一次性查 ...
- python 画股票走势图_使用Python matplotlib绘制股票走势图
一.前言 matplotlib[1]是著名的python绘图库,它提供了一整套绘图API,十分适合交互式绘图.本人在工作过程中涉及到股票数据的处理如绘制K线等,因此将matplotlib的使用心得进行 ...
- 用python绘制股票图_【转】使用Python matplotlib绘制股票走势图
一.前言 matplotlib[1]是著名的python绘图库,它提供了一整套绘图API,十分适合交互式绘图.本人在工作过程中涉及到股票数据的处理如绘制K线等,因此将matplotlib的使用心得进行 ...
- pandas、pyecharts绘制基金走势图-03
绘制pyecharts表格: 需要使用折线图展示,需要了解pyecharts.charts.Line的使用,可以参考链接文章. 在折线图上,对应的节点应该展示对应的横纵坐标的信息,参考这篇文章. 尽可 ...
- 使用Excel和Jupyter绘制线性走势图
一.简介 使用Excel可以绘制线行走势图,并且还可以简单预测未来的走势.Jupyter基于pysaprk更是将这一功能发挥到了极致(但是本文仅使用了Excel预测走势,并没有使用Jupyter预测的 ...
最新文章
- cyclicbarrier java_Java并发编程之CyclicBarrier和线程池的使用
- 3060显卡,送一块!
- php多规格多价格,不同规格的不同价格是怎么实现的呢?? 看这里
- Hypertable hbase hdfs kfs java与c++的较量
- javascript犀牛书_犀牛书作者:最该忘记的JavaScript特性
- 时间转换竟多出1年!Java开发中的20个坑你遇到过几个?
- VTK7.0.0编译安装心得
- python装饰器类型错误_Python各种类型装饰器?一起看看这份详解说明吧
- 解决webpack4版本在打包时候出现Cannot read property ‘bindings‘ of null 或 Cannot find module ‘@babel/core‘问题
- 剑指offer面试题[20]-顺时针打印矩阵
- pc客户端软件自动化测试工具,PC客户端自动化测试工具--pywinauto
- [WPF] 使用 Effect 玩玩阴影、内阴影、 长阴影
- C语言中有关字符串的库函数(3)
- 如何在Word文档中画图,教程来啦,怎样在word文档中添加图形
- 李彦宏创业12年解读:企业家精神改变工程师命运
- 寒假每日一题 2 : 干草堆 java
- ValueError: Please provide model inputs as a list or tuple of 2 or 3 elements: (input, target)
- Windows系统安全配置
- 【Matlab绘图进阶第5弹】Matlab绘制三维散点图
- FTP下载 550 Failed to open file
热门文章
- 第十一届蓝桥杯——REPEAT程序
- Contiki内核原理
- java 生成一个随机整数,范围从 1 到 10;或 生成一个 0 或 1 的随机整数
- 使用格式刷重复复制格式
- EXCEL表格 显示 超长 数字 E+ 变成 文本格式,数字全部显示
- WPF基础系列二:控件简介
- abaqus对实体单元进行复合材料每层厚度定义
- created()和activated()的区别
- Axure移动端实用元件库分享
- 168 PHP中Notice: iconv(): Unknown error (84) 的解决办法