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 相关文章推荐
Django1.3添加app提示模块不存在的解决方法
Aug 26 Python
使用Python编写简单网络爬虫抓取视频下载资源
Nov 04 Python
Python itertools模块详解
May 09 Python
Python正确重载运算符的方法示例详解
Aug 27 Python
Python爬虫实例爬取网站搞笑段子
Nov 08 Python
Python如何发布程序的详细教程
Oct 09 Python
用Python识别人脸,人种等各种信息
Jul 15 Python
PyQt5基本控件使用之消息弹出、用户输入、文件对话框的使用方法
Aug 06 Python
python爬虫 基于requests模块的get请求实现详解
Aug 20 Python
pytorch torch.nn.AdaptiveAvgPool2d()自适应平均池化函数详解
Jan 03 Python
python操作redis数据库的三种方法
Sep 10 Python
Python之Sklearn使用入门教程
Feb 19 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&mysql(四)
2006/10/09 PHP
php基础知识:控制结构
2006/12/13 PHP
为PHP5.4开启Zend OPCode缓存
2014/12/26 PHP
PHP加密解密类实例分析
2015/04/20 PHP
ThinkPHP安装和设置
2015/07/27 PHP
PHP树-不需要递归的实现方法
2016/06/21 PHP
WordPress过滤垃圾评论的几种主要方法小结
2016/07/11 PHP
通过PHP实现获取访问用户IP
2020/05/09 PHP
JavaScript CSS修改学习第六章 拖拽
2010/02/19 Javascript
基于jQuery的动态表格插件
2011/03/28 Javascript
判断ie的两种简单方法
2013/08/12 Javascript
深入剖析JavaScript中的函数currying柯里化
2016/04/29 Javascript
JS实现输入框提示文字点击时消失效果
2016/07/19 Javascript
利用jQuery对无序列表排序的简单方法
2016/10/16 Javascript
JS实现针对给定时间的倒计时功能示例
2017/04/11 Javascript
jquery图片放大镜效果
2017/06/23 jQuery
清空元素html("") innerHTML="" 与 empty()的区别和应用(推荐)
2017/08/14 Javascript
微信小程序实现发红包功能
2018/07/11 Javascript
js正则表达式校验指定字符串的方法
2018/07/23 Javascript
详解vue-element Tree树形控件填坑路
2019/03/26 Javascript
layui给下拉框、按钮状态、时间赋初始值的方法
2019/09/10 Javascript
微信小程序实现自定义底部导航
2020/11/18 Javascript
python实现装饰器、描述符
2018/02/28 Python
Python使用cx_Oracle模块操作Oracle数据库详解
2018/05/07 Python
解决Python中list里的中文输出到html模板里的问题
2018/12/17 Python
Django数据库连接丢失问题的解决方法
2018/12/29 Python
在自动化中用python实现键盘操作的方法详解
2019/07/19 Python
Django如何将URL映射到视图
2019/07/29 Python
基于Python绘制个人足迹地图
2020/06/01 Python
python实现MySQL指定表增量同步数据到clickhouse的脚本
2021/02/26 Python
使用CSS3实现一个3D相册效果实例
2016/12/03 HTML / CSS
美国亚洲时尚和美容产品的一站式网上商店:Stylevana
2019/09/05 全球购物
社区娱乐活动方案
2014/08/21 职场文书
金融专业银行实习证明模板
2014/11/28 职场文书
2016十一国庆节感言
2015/12/09 职场文书
python数据库批量插入数据的实现(executemany的使用)
2021/04/30 Python