Python金融数据可视化汇总


Posted in Python onNovember 17, 2017

通过本篇内容给大家介绍一下Python实现金融数据可视化中两列数据的提取、分别画、双坐标轴、双图、两种不同的图等代码写法和思路总结。

import matplotlib as mpl
import numpy as np
import matplotlib.pyplot as plt

np.random.seed(2000)
y = np.random.standard_normal((20,2))
# print(y)

'''
不同的求和
print(y.cumsum())
print(y.sum(axis=0))
print(y.cumsum(axis=0))
'''

# 绘图
plt.figure(figsize=(7,4))
plt.plot(y.cumsum(axis=0),linewidth=2.5)
plt.plot(y.cumsum(axis=0),'bo')

plt.grid(True)
plt.axis("tight")

plt.xlabel('index')
plt.ylabel('values')
plt.title('a simple plot')

plt.show()

Python金融数据可视化汇总

2.下面分别提取两组数据,进行绘图。

import matplotlib as mpl
import numpy as np
import matplotlib.pyplot as plt

np.random.seed(2000)
date = np.random.standard_normal((20,2))
y = date.cumsum(axis=0)

print(y)

# 重点下面两种情况的区别
print(y[1])   # 取得是 第1行的数据 [-0.37003581 1.74900181]
print(y[:,0])  # 取得是 第1列的数据 [ 1.73673761 -0.37003581 0.21302575 0.35026529 ...

# 绘图
plt.plot(y[:,0],lw=2.5,label="1st",color='blue')
plt.plot(y[:,1],lw=2.5,label="2st",color='red')
plt.plot(y,'ro')

# 添加细节
plt.title("A Simple Plot",size=20,color='red')
plt.xlabel('Index',size=20)
plt.ylabel('Values',size=20)

# plt.axis('tight')
plt.xlim(-1,21)
plt.ylim(np.min(y)-1,np.max(y)+1)

# 添加图例
plt.legend(loc=0)

plt.show()

Python金融数据可视化汇总

Python金融数据可视化汇总

3.双坐标轴。

import matplotlib as mpl
import numpy as np
import matplotlib.pyplot as plt

np.random.seed(2000)
date = np.random.standard_normal((20,2))
y = date.cumsum(axis=0)

y[:,0]=y[:,0]*100

fig,ax1 = plt.subplots()
plt.plot(y[:,0],'b',label="1st")
plt.plot(y[:,0],'ro')

plt.grid(True)
plt.axis('tight')
plt.xlabel("Index")
plt.ylabel('Values of 1st')
plt.title("This is double axis label")

plt.legend(loc=0)

ax2=ax1.twinx()
plt.plot(y[:,1],'g',label="2st")
plt.plot(y[:,1],'r*')
plt.ylabel("Values of 2st")
plt.legend(loc=0)

plt.show()

Python金融数据可视化汇总

4. 分为两个图绘画。

import matplotlib as mpl
import numpy as np
import matplotlib.pyplot as plt

np.random.seed(2000)
date = np.random.standard_normal((20,2))
y = date.cumsum(axis=0)

y[:,0]=y[:,0]*100

plt.figure(figsize=(7,5))    # 确定图片大小
plt.subplot(211)        # 确定第一个图的位置 (行,列,第几个)两行一列第一个图

plt.plot(y[:,0],'b',label="1st")
plt.plot(y[:,0],'ro')

plt.grid(True)
plt.axis('tight')
plt.xlabel("Index")
plt.ylabel('Values of 1st')
plt.title("This is double axis label")

plt.legend(loc=0)

plt.subplot(212)        # 确定第一个图的位置
plt.plot(y[:,1],'g',label="2st")
plt.plot(y[:,1],'r*')
plt.ylabel("Values of 2st")
plt.legend(loc=0)

plt.show()

Python金融数据可视化汇总

5.在两个图层中绘制两种不同的图(直线图立方图)

import matplotlib as mpl
import numpy as np
import matplotlib.pyplot as plt

np.random.seed(2000)
date = np.random.standard_normal((20,2))
y = date.cumsum(axis=0)

y[:,0]=y[:,0]*100

plt.figure(figsize=(7,5))    # 确定图片大小
plt.subplot(121)        # 确定第一个图的位置

plt.plot(y[:,0],'b',label="1st")
plt.plot(y[:,0],'ro')

plt.grid(True)
plt.axis('tight')
plt.xlabel("Index")
plt.ylabel('Values',size=20)
plt.title("1st date set")

plt.legend(loc=0)

plt.subplot(122)        # 确定第一个图的位置
plt.bar(np.arange(len(y[:,1])),y[:,1],width = 0.5,color='g',label="2nd") # 直方图的画法
plt.grid(True)
plt.xlabel("Index")
plt.title('2nd date set')
plt.legend(loc=0)

plt.show()

Python金融数据可视化汇总

以上就是本次交给大家的Python制作金融数据等用到的图形化界面代码写法。

Python 相关文章推荐
python获取本地计算机名字的方法
Apr 29 Python
浅析Python中将单词首字母大写的capitalize()方法
May 18 Python
python使用锁访问共享变量实例解析
Feb 08 Python
Python-ElasticSearch搜索查询的讲解
Feb 25 Python
Python3.5运算符操作实例详解
Apr 25 Python
Pytorch Tensor的索引与切片例子
Aug 18 Python
将python2.7添加进64位系统的注册表方式
Nov 20 Python
python标准库os库的函数介绍
Feb 12 Python
python操作yaml说明
Apr 08 Python
有关pycharm登录github时有的时候会报错connection reset的问题
Sep 15 Python
Python基础之常用库常用方法整理
Apr 30 Python
Python使用DFA算法过滤内容敏感词
Apr 22 Python
详解Python中的Numpy、SciPy、MatPlotLib安装与配置
Nov 17 #Python
Python中super函数的用法
Nov 17 #Python
python使用正则表达式替换匹配成功的组
Nov 17 #Python
python定时利用QQ邮件发送天气预报的实例
Nov 17 #Python
详解python eval函数的妙用
Nov 16 #Python
Python算法之图的遍历
Nov 16 #Python
Python之Scrapy爬虫框架安装及使用详解
Nov 16 #Python
You might like
php自动适应范围的分页代码
2008/08/05 PHP
php session 预定义数组
2009/03/16 PHP
PHP ? EasyUI DataGrid 资料取的方式介绍
2012/11/07 PHP
TNC vs RR BO3 第一场 2.14
2021/03/10 DOTA
一个页面元素appendchild追加到另一个页面元素的问题
2013/01/27 Javascript
jQuery学习之prop和attr的区别示例介绍
2013/11/15 Javascript
JQuery插件fancybox无法在弹出层使用左右键的解决办法
2013/12/25 Javascript
javascript通过元素id和name直接取得元素的方法
2015/04/28 Javascript
JavaScript中的slice()方法使用详解
2015/06/06 Javascript
javascript事件绑定学习要点
2016/03/09 Javascript
微信小程序 video组件详解
2016/10/25 Javascript
js实现获取鼠标当前的位置
2016/12/14 Javascript
JavaScript 事件流、事件处理程序及事件对象总结
2017/04/01 Javascript
详解bootstrap导航栏.nav与.navbar区别
2017/11/23 Javascript
vue 实现全选全不选的示例代码
2018/03/29 Javascript
bootstrap table.js动态填充单元格数据的多种方法
2019/07/18 Javascript
浅析Vue 防抖与节流的使用
2019/11/14 Javascript
Vue axios获取token临时令牌封装案例
2020/09/11 Javascript
ES11新增的这9个新特性,你都掌握了吗
2020/10/15 Javascript
vue组件实现移动端九宫格转盘抽奖
2020/10/16 Javascript
[05:03]2018DOTA2亚洲邀请赛主赛事首日回顾
2018/04/04 DOTA
Python将多个list合并为1个list的方法
2018/06/27 Python
Python3 元组tuple入门基础
2020/02/09 Python
python GUI库图形界面开发之PyQt5窗口布局控件QStackedWidget详细使用方法
2020/02/27 Python
django实现将后台model对象转换成json对象并传递给前端jquery
2020/03/16 Python
Python如何实现FTP功能
2020/05/28 Python
深入了解python列表(LIST)
2020/06/08 Python
Linux机考试题
2015/07/17 面试题
考试不及格检讨书
2014/01/09 职场文书
珍珠鸟教学反思
2014/02/01 职场文书
老师对学生的寄语
2014/04/09 职场文书
高一学年自我鉴定范文(3篇)
2014/09/26 职场文书
2014员工聘用协议书(最新版)
2014/11/24 职场文书
党员评议自我评价
2015/03/03 职场文书
2016重阳节红领巾广播稿
2015/12/18 职场文书
python基于tkinter制作m3u8视频下载工具
2021/04/24 Python