赞
踩
import matplotlib
print(matplotlib.__version__)
import matplotlib.pyplot as plt
from pylab import mpl
mpl.rcParams['font.sans-serif']=['SimHei']
mpl.rcParams['axes.unicode_minus']=False
#单一曲线图 beta=np.linspace(0.5,2.0,100) Rf=0.03 Rm=0.12 Ri=Rf+beta*(Rm-Rf) plt.figure(figsize=(9,6)) plt.plot(beta,Ri,'r-',label='证券市场线',lw=2.0) plt.plot(1.0,Rf+1.0*(Rm-Rf),'o',lw=2.5) plt.axis('tight') plt.xticks(fontsize=14) plt.xlabel('贝塔值',fontsize=14) plt.xlim(0.4,2.1) plt.yticks(fontsize=14) plt.ylabel(u'单一股票收益率',fontsize=14,rotation=90) plt.ylim(0.07,0.22) plt.title(u'资本资产定价模型',fontsize=14) plt.annotate(u'贝塔等于1的收益',fontsize=14,xy=(1.0,0.12),xytext=(0.8,0.15),arrowprops=dict(facecolor='b',shrink=0.05)) plt.grid() plt.legend(loc=0,fontsize=14) #加上这行显示label plt.show()
#多图绘制 HS300_new=pd.read_excel('D:/a_DUFE/000master_gogogo/python/配套彩图和数据/数据/第五章/沪深300指数(2016-2018).xlsx',sheet_name="Sheet1",header=0,index_col=0) plt.figure(figsize=(11,9)) plt.subplot(2,2,1) plt.plot(HS300_new['开盘点位'],'r-',label=u'沪深300开盘点位',lw=2.0) plt.xticks(fontsize=13,rotation=30) plt.xlabel(u'日期',fontsize=13) plt.yticks(fontsize=13) plt.ylabel(u'点位',fontsize=13,rotation=90) plt.legend(loc=0,fontsize=13) plt.grid() plt.subplot(2,2,2) plt.plot(HS300_new['最高点位'],'b-',label=u'沪深300最高点位',lw=2.0) plt.xticks(fontsize=13,rotation=30) plt.xlabel(u'日期',fontsize=13) plt.yticks(fontsize=13) plt.ylabel(u'点位',fontsize=13,rotation=90) plt.legend(loc=0,fontsize=13) plt.grid() plt.subplot(2,2,3) plt.plot(HS300_new['最低点位'],'c-',label=u'沪深300最低点位',lw=2.0) plt.xticks(fontsize=13,rotation=30) plt.xlabel(u'日期',fontsize=13) plt.yticks(fontsize=13) plt.ylabel(u'点位',fontsize=13,rotation=90) plt.legend(loc=0,fontsize=13) plt.grid() plt.subplot(2,2,4) plt.plot(HS300_new['收盘点位'],'k-',label=u'沪深300收盘点位',lw=2.0) plt.xticks(fontsize=13,rotation=30) plt.xlabel(u'日期',fontsize=13) plt.yticks(fontsize=13) plt.ylabel(u'点位',fontsize=13,rotation=90) plt.legend(loc=0,fontsize=13) plt.grid() plt.show()
import numpy as np import pandas as pd import matplotlib import matplotlib.pyplot as plt from pylab import mpl mpl.rcParams['font.sans-serif']=['SimHei'] mpl.rcParams['axes.unicode_minus']=False #单一样本的直方图 import numpy.random as npr I=1000 x_norm=npr.normal(loc=0.8,scale=1.5,size=I) x_logn=npr.lognormal(mean=0.5,sigma=1.0,size=I) x_chi=npr.chisquare(df=4,size=I) x_beta=npr.beta(a=2,b=4,size=I) plt.figure(figsize=(12,10)) plt.subplot(2,2,1) plt.hist(x_norm,label=u'正态分布的抽样',bins=20,facecolor='y',edgecolor='k') plt.xticks(fontsize=13) plt.xlabel(u'样本值',fontsize=13) plt.yticks(fontsize=13) plt.ylabel(u'频数',fontsize=13,rotation=90) plt.legend(loc=0,fontsize=13) plt.grid(True) plt.subplot(2,2,2) plt.hist(x_logn,label=u'对数分布的抽样',bins=20,facecolor='r',edgecolor='k') plt.xticks(fontsize=13) plt.xlabel(u'样本值',fontsize=13) plt.yticks(fontsize=13) plt.ylabel(u'频数',fontsize=13,rotation=90) plt.legend(loc=0,fontsize=13) plt.grid(True) plt.subplot(2,2,3) plt.hist(x_chi,label=u'卡方分布的抽样',bins=20,facecolor='b',edgecolor='k') plt.xticks(fontsize=13) plt.xlabel(u'样本值',fontsize=13) plt.yticks(fontsize=13) plt.ylabel(u'频数',fontsize=13,rotation=90) plt.legend(loc=0,fontsize=13) plt.grid(True) plt.subplot(2,2,4) plt.hist(x_beta,label=u'贝塔分布的抽样',bins=20,facecolor='c',edgecolor='k') plt.xticks(fontsize=13) plt.xlabel(u'样本值',fontsize=13) plt.yticks(fontsize=13) plt.ylabel(u'频数',fontsize=13,rotation=90) plt.legend(loc=0,fontsize=13) plt.grid(True) plt.show()
import numpy as np import pandas as pd import matplotlib import matplotlib.pyplot as plt from pylab import mpl mpl.rcParams['font.sans-serif']=['SimHei'] mpl.rcParams['axes.unicode_minus']=False #多个样本的直方图 import numpy.random as npr I=1000 x_normal=npr.normal(loc=0.8,scale=1.5,size=(I,2)) plt.figure(figsize=(16,7)) plt.subplot(1,2,1) plt.hist(x_normal,label=[u'正态分布的抽样数组1',u'正态分布的抽样数组2'],stacked=True,edgecolor='k',bins=30) plt.xticks(fontsize=13) plt.xlabel(u'样本值',fontsize=13) plt.yticks(fontsize=13) plt.ylabel(u'频数',fontsize=13,rotation=90) plt.title(u'正态分布随机抽取的两组样本值堆叠的直方图') plt.legend(loc=0,fontsize=13) plt.grid(True) plt.subplot(1,2,2) plt.hist(x_normal,label=[u'正态分布的抽样数组1',u'正态分布的抽样数组2'],edgecolor='k',bins=30) plt.xticks(fontsize=13) plt.xlabel(u'样本值',fontsize=13) plt.yticks(fontsize=13) plt.ylabel(u'频数',fontsize=13,rotation=90) plt.title(u'正态分布随机抽取的两组样本值并排的直方图') plt.legend(loc=0,fontsize=13) plt.grid(True) plt.show()
import numpy as np import pandas as pd import matplotlib import matplotlib.pyplot as plt from pylab import mpl mpl.rcParams['font.sans-serif']=['SimHei'] mpl.rcParams['axes.unicode_minus']=False return_array=np.array([[0.003731,0.021066,-0.004854,0.006098,-0.006060],[-0.001838,0.001842,-0.016544,-0.003738,0.003752],[-0.003087,-0.000344,-0.033391,0.007123,0.004597],[-0.024112,0.011704,-0.029563,-0.014570,0.016129]]) # print(return_array) return_dataframe=pd.DataFrame(data=return_array.T,index=['2018-09-03','2018-09-04','2018-09-05','2018-09-06','2018-09-07'],columns=['中国石油','工商银行','上汽集团','宝钢股份']) # print(return_dataFrame) #垂直条形图 plt.figure(figsize=(12,10)) plt.subplot(2,2,1) plt.bar(x=return_dataframe.columns,height=return_dataframe.iloc[0],width=0.5,label=u'2018年9月3日涨跌幅',facecolor='y') plt.xticks(fontsize=13) plt.yticks(fontsize=13) plt.ylim(-0.035,0.025) plt.ylabel(u'涨跌幅',fontsize=13,rotation=90) plt.legend(loc=0,fontsize=13) plt.grid(True) plt.subplot(2,2,2) plt.bar(x=return_dataframe.columns,height=return_dataframe.iloc[2],width=0.5,label=u'2018年9月5日涨跌幅',facecolor='C') plt.xticks(fontsize=13) plt.yticks(fontsize=13) plt.ylim(-0.035,0.025) plt.ylabel(u'涨跌幅',fontsize=13,rotation=90) plt.legend(loc=0,fontsize=13) plt.grid(True) plt.subplot(2,2,3) plt.bar(x=return_dataframe.columns,height=return_dataframe.iloc[3],width=0.5,label=u'2018年9月6日涨跌幅',facecolor='b') plt.xticks(fontsize=13) plt.yticks(fontsize=13) plt.ylim(-0.035,0.025) plt.ylabel(u'涨跌幅',fontsize=13,rotation=90) plt.legend(loc=0,fontsize=13) plt.grid(True) plt.subplot(2,2,4) plt.bar(x=return_dataframe.columns,height=return_dataframe.iloc[4],width=0.5,label=u'2018年9月7日涨跌幅',facecolor='g') plt.xticks(fontsize=13) plt.yticks(fontsize=13) plt.ylim(-0.035,0.025) plt.ylabel(u'涨跌幅',fontsize=13,rotation=90) plt.legend(loc=0,fontsize=13) plt.grid(True) plt.show()
#水平条形图
plt.figure(figsize=(9,6))
plt.barh(y=return_dataframe.columns,width=return_dataframe.iloc[3],height=0.5,label=u'2018年9月6日涨跌幅')
plt.barh(y=return_dataframe.columns,width=return_dataframe.iloc[4],height=0.5,label=u'2018年9月7日涨跌幅')
plt.xticks(fontsize=13)
plt.xlabel(u'涨跌幅',fontsize=13)
plt.yticks(fontsize=13)
plt.title(u'水平条形图可视化股票的涨跌幅',fontsize=13)
plt.legend(loc=0,fontsize=13)
plt.show()
import numpy as np import pandas as pd import matplotlib import matplotlib.pyplot as plt from pylab import mpl mpl.rcParams['font.sans-serif']=['SimHei'] mpl.rcParams['axes.unicode_minus']=False HS300_SZ180=pd.read_excel('D:/a_DUFE/000master_gogogo/python/配套彩图和数据/数据/第五章/沪深300指数与上证180指数的日涨跌幅(2016-2018).xlsx',sheet_name="Sheet1",header=0,index_col=0) print(HS300_SZ180.head()) print(HS300_SZ180.tail()) print(HS300_SZ180.describe()) print(HS300_SZ180.corr()) plt.figure(figsize=(9,6)) plt.scatter(x=HS300_SZ180.iloc[:,0],y=HS300_SZ180.iloc[:,1],c='b',marker='o') plt.xticks(fontsize=14) plt.xlabel(u'沪深300指数涨跌幅',fontsize=14) plt.xticks(fontsize=14) plt.ylabel(u'上证180指数涨跌幅',fontsize=14,rotation=90) plt.title(u'沪深300指数与上证180指数的涨跌幅散点图',fontsize=14) plt.grid() plt.show()
import numpy as np import pandas as pd import matplotlib import matplotlib.pyplot as plt from pylab import mpl mpl.rcParams['font.sans-serif']=['SimHei'] mpl.rcParams['axes.unicode_minus']=False currency=['美元','欧元','人民币','日元','英镑'] perc=[0.4173,0.3093,0.1092,0.0833,0.0809] plt.figure(figsize=(9,7)) plt.pie(x=perc,labels=currency) plt.axis('equal') plt.legend(loc=1,fontsize=13) plt.title(u'特别提取权中不同币种的占比',fontsize=13) plt.show()
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。