python第二阶段(16)numpy入门基础-可视化之直方图
numpy入门基础-可视化之直方图1、numpy的直方图hist函数2、示例1)标准化输出直方图2)非标准化输出直方图3)双变量直方分布演示:1、numpy的直方图hist函数直方图:matplotlib.pyplot.hist(x, bins=None, range=None,density=False, weights=None, cumulative=False,bottom=None, h
·
numpy入门基础-可视化之直方图
演示:

1、numpy的直方图hist函数
直方图:
●由一系列高度不等的纵向条形组成,表示数据分布的情况。
●例如某年级同学的身高分布情况
●注意和条形图的区别
matplotlib.pyplot.hist(x, bins=None, range=None,
density=False, weights=None, cumulative=False,
bottom=None, histtype='bar', align='mid',
orientation='vertical', rwidth=None, log=False,
color=None, label=None, stacked=False, *, data=None, **kwargs)
参数:(其他用到再百度吧)
x:输入值,它可以是单个数组或不需要相同长度的数组序列
bins:int或序列或STR,默认值:(默认值:)rcParams[“hist.bins”]10。
- 如果bin是一个整数,则它定义范围内等宽宽度的bin数
- 如果bin是序列。包括第一个bin的左边缘和最后一个bin的右边缘;在这种情况下,bins的间距可能不相等。除了最后一个(最右边)的bins外。如[1, 2, 3, 4],则bins为:[1, 2)[2, 3)[3, 4]
color:颜色。
normed:是否标准化,是:标准化,否:非标准化
2、示例
1)标准化输出直方图
import numpy as np #导入 numpyas
import matplotlib.pyplot as plt #导入 matplotlib.pyplot
mu =100 #均值
sigma=20 #标准差
x=mu+sigma*np.random.randn(2000)
plt.hist(x,bins=10,color='red',normed=True)
out:
(array([0.00073148, 0.00300291, 0.00920123, 0.01663151, 0.01847946,
0.01566904, 0.00846975, 0.00377289, 0.00076998, 0.00026949]),
array([ 41.60543497, 54.59282934, 67.5802237 , 80.56761807,
93.55501244, 106.54240681, 119.52980118, 132.51719554,
145.50458991, 158.49198428, 171.47937865]),
<a list of 10 Patch objects>)
2)非标准化输出直方图
in:
plt.hist(x,bins=50,color='b',normed=False)
out:
(array([ 1., 0., 0., 0., 0., 0., 0., 2., 1., 2., 9.,
10., 8., 11., 6., 28., 27., 30., 38., 52., 53., 57.,
85., 91., 118., 112., 101., 117., 115., 119., 143., 112., 96.,
82., 71., 54., 58., 35., 24., 45., 26., 19., 14., 8.,
9., 5., 2., 3., 0., 1.]),
array([ 18.07432506, 20.97389896, 23.87347287, 26.77304677,
29.67262067, 32.57219458, 35.47176848, 38.37134238,
41.27091629, 44.17049019, 47.07006409, 49.969638 ,
52.8692119 , 55.7687858 , 58.66835971, 61.56793361,
64.46750751, 67.36708142, 70.26665532, 73.16622922,
76.06580313, 78.96537703, 81.86495093, 84.76452484,
87.66409874, 90.56367264, 93.46324655, 96.36282045,
99.26239435, 102.16196826, 105.06154216, 107.96111606,
110.86068997, 113.76026387, 116.65983778, 119.55941168,
122.45898558, 125.35855949, 128.25813339, 131.15770729,
134.0572812 , 136.9568551 , 139.856429 , 142.75600291,
145.65557681, 148.55515071, 151.45472462, 154.35429852,
157.25387242, 160.15344633, 163.05302023]),
<a list of 50 Patch objects>)
3)双变量直方分布
matplotlib.pyplot.hist2d(x, y, bins=10, range=None,
density=False, weights=None, cmin=None,
cmax=None, *, data=None, **kwargs)
按颜色深浅表示出现的频率高低
in:
x=np.random.randn(100)+2
y=np.random.randn(100)+3
plt.hist2d(x,y,bins=40)
out:
(array([[0., 0., 0., ..., 0., 0., 0.],
[0., 0., 0., ..., 0., 0., 0.],
[0., 0., 0., ..., 0., 0., 0.],
...,
[0., 0., 0., ..., 0., 0., 0.],
[0., 0., 0., ..., 0., 0., 0.],
[0., 0., 0., ..., 0., 0., 0.]]),
array([-0.0328012 , 0.0927626 , 0.2183264 , 0.3438902 , 0.46945399,
0.59501779, 0.72058159, 0.84614539, 0.97170919, 1.09727299,
1.22283679, 1.34840059, 1.47396439, 1.59952819, 1.72509199,
1.85065579, 1.97621959, 2.10178339, 2.22734719, 2.35291099,
2.47847479, 2.60403858, 2.72960238, 2.85516618, 2.98072998,
3.10629378, 3.23185758, 3.35742138, 3.48298518, 3.60854898,
3.73411278, 3.85967658, 3.98524038, 4.11080418, 4.23636798,
4.36193178, 4.48749558, 4.61305937, 4.73862317, 4.86418697,
4.98975077]),
array([0.56345975, 0.68498327, 0.8065068 , 0.92803032, 1.04955384,
1.17107737, 1.29260089, 1.41412442, 1.53564794, 1.65717147,
1.77869499, 1.90021851, 2.02174204, 2.14326556, 2.26478909,
2.38631261, 2.50783613, 2.62935966, 2.75088318, 2.87240671,
2.99393023, 3.11545376, 3.23697728, 3.3585008 , 3.48002433,
3.60154785, 3.72307138, 3.8445949 , 3.96611842, 4.08764195,
4.20916547, 4.330689 , 4.45221252, 4.57373605, 4.69525957,
4.81678309, 4.93830662, 5.05983014, 5.18135367, 5.30287719,
5.42440071]),
<matplotlib.collections.QuadMesh at 0x1a254799550>)
更多推荐
所有评论(0)