#PE分布图
EDate=”20200624″
import seaborn as sns
import matplotlib.pyplot as plt
dataPE=DataAPI.MktIdxdEvalGet(secID=u””,ticker=u”000001″,beginDate=u”19900101″,endDate=EDate,
field=u”PEType,PEValue”,pandas=”1″)
dataPE=dataPE[dataPE.PEType==1]#1为TTM,2为动态
dataPE=dataPE[‘PEValue’]
sns.set_style(‘darkgrid’)#1蓝线
sns.distplot(dataPE)
sns.distplot(dataPE, fit=stats.laplace, kde=False)#2黑线
d={‘mean’:([np.mean(dataPE)]),’median’:([np.median(dataPE)]),’std’:([np.std(dataPE)])}
jg=pd.DataFrame(d)
mean=jg[‘mean’]
std=jg[‘std’]
s=np.random.normal(mean,std,5000)
s_fit=np.linspace(s.min(),s.max())
plt.plot(s_fit,stats.norm(mean,std).pdf(s_fit), lw=2, c=’r’)
plt.show()#按平均值和标准差绘制正态分布样本(红线)
data[‘InX’]=np.log10(dataPE)
d={‘mInX’:([np.mean(data.InX)]),’sInX’:([np.std(data.InX)])}
dataInPE=pd.DataFrame(d)
meanInPE=dataInPE[‘mInX’]
stdInPE=dataInPE[‘sInX’]
ss=np.random.logistic(meanInPE,stdInPE,5000)
s_fit=np.linspace(ss.min(),ss.max())
plt.plot(s_fit,stats.logistic(meanInPE,stdInPE).pdf(s_fit), lw=2, c=’r’)
plt.show()#按平均值和标准差绘制正态分布样本(红线)