python金融量化分析 知乎_Python,数据分析,量化金融(2)

本文介绍了Python中用于金融量化分析的数据可视化工具matplotlib,包括如何创建折线图、设置图表参数、绘制多子图及K线图。matplotlib是数据可视化的强大库,文章还提到了最新版本中matplotlib.finance变为mplfinance包的情况。
摘要由CSDN通过智能技术生成

hello guys, 求职阶段插播更新,上次给大家介绍了用python做量化常用的两个包,numpy和pandas,这两个包主要的功能是在于数据处理,今天,还是沿着那个视频课程(参照上文),我会为大家整理一下如何进行数据可视化。犹豫上次推荐的视频课程是16年录制的,之后经过几次各种包的版本迭代,许多命令都有了变化,我也是经过了多方检索,算是做出了同等的效果,如果有大神知道更加专业实用的方法,欢迎指正的~进入正题:

关于数据可视化,简单地解释就是将数据变成可以简洁、全面传达的信息的图表,比如说柱状图、饼状图,从而可以更加方便地进行定性分析。再python里,本次介绍的工具是matplotlib,是个大众产品啦,功能很强大。安装方式就是

pip install matplotlib

通过调用它的 pyplot 子包就可以进行可视化。

#matplotlib

import matplotlib.pyplot as plt

plt.plot([1,2,3,4],[2,4,6,8]) #折线图

plt.show()

plt.plot([1,2,3,4],[2,4,6,8],"o-") #点

#线型linestyle(-,-.,--,)

#点型(v,^,s,*,H,+,x,D,o,)

#颜色(b,g,r,y,k,w,...)

plt.plot([1,2,3,4],[2,4,6,8],"o-")

plt.plot([1,2,3,4],[3,5,9,10],"v:k")

plt.title("Martplotlib Test Plot") #添加表标题

plt.xlabel("Xlabel") #添加轴标签

plt.ylabel("Ylabel")

plt.xlim(0,5)

plt.ylim(0,10) #设定坐标范围

plt.xticks([0,2,4]) #设定横坐标的显示值

plt.show()效果图

更多的参数设置大家可以通过手册学习一下

plt.plot?

一些例子

import matplotlib.pyplot as plt

#画y=x,y=X**2,y=3x**3+5x**2+2x=1

fig=plt.figure() #设定画布

ax1=fig.add_subplot(1,3,1) #创建子图,几行几列,第几个

ax2=fig.add_subplot(1,3,2)

ax3=fig.add_subplot(1,3,3)

x=np.linspace(-100,100,1000000)

y1=x.copy()

y2=x**2

y3=3*x**3+5*x**2+2*x+1

ax1.plot(x,y1,'r',label='y=x')

ax2.plot(x,y2,'k',label='y=x**2')

ax3.plot(x,y3,'b',label='y=3*x**3+5*x**2+2*x+1')

plt.ylim(-100,100)

fig.legend() #显示标签

fig.show()

#其他类型图

plt.plot(x,y,fmt,...) #坐标图

plt.boxplot(data,notch,position) #箱型图

plt.bar(left,height,width,bottom) #条形图

plt.barh(width,bottom,left,height) #横向条形图

plt.polar(theta,r) #极坐标图

plt.pie(data,explode) #饼图

#条形图

plt.bar([0,1,2,3],[5,6,7,8])

plt.show()

plt.bar([0,1,2,4],[5,6,7,8])

plt.show()

data=[32,41,20,100]

labels=['Jan','Feb','Mar','Apr']

plt.bar(np.arange(len(data)),data,color='red',align='edge')

plt.xticks(np.arange(len(data)),labels)

plt.show()

plt.pie([10,20,30,40],labels=['a','b','c','d'],autopct='%.2f%%',explode=[0,0,0.5,0])

plt.axis('equal')

plt.show()

大家可以尝试一下这些。

除了画这种数据图,matplotlib还支持画K线,由于最近的一次更新,原来的matplotlib.finance已经变成了一个独立mplfinance包,需要单独安装。使用方法也不太相同。这里我就直接贴我找到的画K线的方法。

#matplotlib 绘制K线图

import mplfinance as fin

import numpy as np

import pandas as pd

import matplotlib.pyplot as plt

df=pd.read_csv(r'D:\sz.300413.csv',header=None,names=['date','code','open','high','low','close','volume'],index_col='date',parse_dates=True)

fin.plot(df,type='candle',style='classic',title='whatever',ylabel='Price($)')

plt.show()

更多的K线风格大家可以看下说明

fin.available_styles() #查询K线风格

这些就是今天的内容了,下次我会跟大家分享一些从接口获取数据的方法,希望大家来个三连,一夜暴富~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值