首页 > 编程 > Python > 正文

Python金融数据可视化汇总

2020-01-04 16:20:47
字体:
来源:转载
供稿:网友

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

import matplotlib as mplimport numpy as npimport matplotlib.pyplot as pltnp.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 mplimport numpy as npimport matplotlib.pyplot as pltnp.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 mplimport numpy as npimport matplotlib.pyplot as pltnp.random.seed(2000)date = np.random.standard_normal((20,2))y = date.cumsum(axis=0)y[:,0]=y[:,0]*100fig,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 mplimport numpy as npimport matplotlib.pyplot as pltnp.random.seed(2000)date = np.random.standard_normal((20,2))y = date.cumsum(axis=0)y[:,0]=y[:,0]*100plt.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 mplimport numpy as npimport matplotlib.pyplot as pltnp.random.seed(2000)date = np.random.standard_normal((20,2))y = date.cumsum(axis=0)y[:,0]=y[:,0]*100plt.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教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表