用Python绘制直方图

计算频数:

给定一个序列t:

hist = {}

for x in t:

hist[x] = hist.get(x,0)+1

得到的结果是一个将值映射到其频数的字典。将其除以n即可把频数转换成频率,这称为归一化:

n = float(len(t))

pmf = {}

for x, freq in hist.items():

pmf[x] = freq/n

 

绘制直方图:

Vals, freqs = hist.Render()

rectangles = pyplot.bar(vals, freqs)

pyplot.show()

 

绘制概率质量函数:

采用柱状图,可以用pyplot.bar或myplot.Hist。如果Pmf中的值不多,柱状图就比较合适

采用折线图,可以用pyplot.plot或者myplot.Pmf。如果Pmf中的值较多,且比较平滑,折线图就比较合适。

 

*百分比差异图

直观显示两组数据的分布差异,详见教材。

 

摘自《统计思维-程序员数学之概率统计》P15-P23

posted @ 2016-12-03 22:16  Flash!!!  阅读(6291)  评论(0编辑  收藏  举报