Python金融数据可视化汇总

时间:2021-05-22

通过本篇内容给大家介绍一下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()

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()

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()

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()

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制作金融数据等用到的图形化界面代码写法。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章