在使用NumPy进行学习统计计算时是枯燥的,大量的数据令我们很头疼,所以我们需要把它图形化显示。
Matplotlib是一个Python的图形框架,类似于MATLAB和R语言。Matplotlib的官网地址是 ,下载地址为 ,选择对应的版本即可安装,我选择的版本为。
由于我之前已经安装过,所以安装Matplotlib后只需要安装 dateutil 和 pyparsing,win32的安装文件可以在这里找到 。
所有配套组件都安装成功后如果执行 import matplotlib.pyplot as plt 出错,请参考这篇文章
安装 ,然后把C:\Python27\Lib\site-packages\scipy\lib中的six.py six.pyc six.pyo三个文件拷贝到C:\Python27\Lib\site-packages目录下。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | import numpy as np import matplotlib.pyplot as plt N = 5 menMeans = ( 20 , 35 , 30 , 35 , 27 ) menStd = ( 2 , 3 , 4 , 1 , 2 ) ind = np.arange(N) # the x locations for the groups width = 0.35 # the width of the bars fig, ax = plt.subplots() rects1 = ax.bar(ind, menMeans, width, color = 'r' , yerr = menStd) womenMeans = ( 25 , 32 , 34 , 20 , 25 ) womenStd = ( 3 , 5 , 2 , 3 , 3 ) rects2 = ax.bar(ind + width, womenMeans, width, color = 'y' , yerr = womenStd) # add some ax.set_ylabel( 'Scores' ) ax.set_title( 'Scores by group and gender' ) ax.set_xticks(ind + width) ax.set_xticklabels( ( 'G1' , 'G2' , 'G3' , 'G4' , 'G5' ) ) ax.legend( (rects1[ 0 ], rects2[ 0 ]), ( 'Men' , 'Women' ) ) def autolabel(rects): # attach some text labels for rect in rects: height = rect.get_height() ax.text(rect.get_x() + rect.get_width() / 2. , 1.05 * height, '%d' % int (height), ha = 'center' , va = 'bottom' ) autolabel(rects1) autolabel(rects2) plt.show() |
运行上面代码,执行后如下图所示。