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 28 Python
在Python程序中操作文件之isatty()方法的使用教程
May 24 Python
结合Python的SimpleHTTPServer源码来解析socket通信
Jun 27 Python
widows下安装pycurl并利用pycurl请求https地址的方法
Oct 15 Python
Python hashlib模块加密过程解析
Nov 05 Python
python标准库OS模块详解
Mar 10 Python
python目标检测给图画框,bbox画到图上并保存案例
Mar 10 Python
python中执行smtplib失败的处理方法
Jul 01 Python
基于Python模拟浏览器发送http请求
Nov 06 Python
python3中编码获取网页的实例方法
Nov 16 Python
python的dict判断key是否存在的方法
Dec 09 Python
python 中的@运算符使用
May 26 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
深入理解ob_flush和flush的区别(ob_flush()与flush()使用方法)
2013/02/06 PHP
Yii配置文件用法详解
2014/12/04 PHP
PHP中的闭包(匿名函数)浅析
2015/02/07 PHP
thinkPHP中分页用法实例分析
2015/12/26 PHP
php pdo oracle中文乱码的快速解决方法
2016/05/16 PHP
Symfony查询方法实例小结
2017/06/28 PHP
JavaScript 未结束的字符串常量常见解决方法
2010/01/24 Javascript
JavaScript中的变量作用域介绍
2014/12/31 Javascript
jQuery实现的输入框选择时间插件用法实例
2015/02/28 Javascript
JS加载iFrame出现空白问题的解决办法
2016/05/13 Javascript
Angular.js 实现数字转换汉字实例代码
2016/07/14 Javascript
Vue 组件(component)教程之实现精美的日历方法示例
2018/01/08 Javascript
vue-cli3.0 特性解读
2018/04/22 Javascript
Vue一个案例引发的递归组件的使用详解
2018/11/15 Javascript
详解JS取出两个数组中的不同或相同元素
2019/03/20 Javascript
微信小程序使用echarts获取数据并生成折线图
2019/10/16 Javascript
解决vue-router路由拦截造成死循环问题
2020/08/05 Javascript
利用JavaScript模拟京东按键输入功能
2020/12/01 Javascript
[01:03:09]完美世界DOTA2联赛PWL S2 Forest vs SZ 第二场 11.25
2020/11/26 DOTA
[16:01]夜魇凡尔赛茶话会 第二期01:你比划我猜
2021/03/11 DOTA
Python实现的几个常用排序算法实例
2014/06/16 Python
Python数据结构与算法之常见的分配排序法示例【桶排序与基数排序】
2017/12/15 Python
Python3爬虫学习之将爬取的信息保存到本地的方法详解
2018/12/12 Python
python3在同一行内输入n个数并用列表保存的例子
2019/07/20 Python
Python中顺序表原理与实现方法详解
2019/12/03 Python
pyspark给dataframe增加新的一列的实现示例
2020/04/24 Python
Python应用实现处理excel数据过程解析
2020/06/19 Python
HTML5中的Scoped属性使用实例
2014/04/23 HTML / CSS
美国专营婴幼儿用品的购物网站:buybuy BABY
2017/01/01 全球购物
使用Vue.js和MJML创建响应式电子邮件
2021/03/23 Vue.js
招商经理岗位职责
2013/11/16 职场文书
小班开学寄语
2014/04/04 职场文书
学校欢迎标语
2014/06/18 职场文书
小学国庆节活动方案策划书
2014/09/16 职场文书
2016大学生优秀志愿者事迹材料
2016/02/25 职场文书
JavaScript的Set数据结构详解
2022/02/18 Javascript