**n, bins, patches = plt.hist(datasets, bins, normed=False, facecolor=None, alpha=None)**
## 函数说明
用于绘制多个数据集datasets的直方图

---
主要形参:
1. datasets: 数据集列表, datasets中各个数据集的长度可以不等, 也可以传入numpy中的 2-D ndarray
2. bins: 直方图中箱子(bin)的个数
3. facecolor: 箱子的颜色
4. alpha: 箱子的透明度
5. normed: 决定直方图`y轴`取值是落在某个箱子中的元素的*个数*(normed=False或normed=0),
还是某个箱子中的元素的个数占总体的*百分比*(normed=True或normed=1)

---
函数返回值: 返回值为一个元组(tuple)
1. n: 直方图中 数据x落在 某个箱子里元素个数(或者占比)组成的数组
2. bins: 直方图中 箱子取值(可能是落在该区间的x的均值)组成的数组
3. patches: 是一个封装了 p 和 n信息的列表的集合(Patch对象)

---

例子

```python
import numpy as np
import matplotlib.pyplot as plt

# Fixing random state for reproducibility
# np.random.randn 这个函数的作用就是从标准正态分布中返回一个或多个样本值
# seed(): 设置种子是为了输出图形具有可重复性
np.random.seed(20170617)
mu, sigma = 100, 15
x = mu + sigma * np.random.randn(10000)
p, bins, patches = plt.hist(x, 50, normed=True, facecolor='g', alpha=0.75)

```
![hist01](http://images2015.cnblogs.com/blog/1182370/201706/1182370-20170617122222946-1126591966.png)
## 改变形参 bins, facecolor, normed
设置 bins=10, facecolor=`cyan`, normed=0
通过下图可以看到 箱子个数, 颜色, 以及 y轴的变化

```python
p, bins, patches = plt.hist(x, 10, normed=0, facecolor='cyan', alpha=0.75)
```
![hist02](http://images2015.cnblogs.com/blog/1182370/201706/1182370-20170617122224025-1054330367.png)
## datasets为多个一维数据集

```py
import numpy as np
import matplotlib.pyplot as plt

np.random.seed(20170617)
mu, sigma = 100, 15
x1 = mu + sigma * np.random.randn(10000)

np.random.seed(20160617)
x2 = mu + sigma * np.random.randn(3000)
p, bins, patches = plt.hist((x1,x2), 10, normed=0, alpha=0.4)

```

![hist03](http://images2015.cnblogs.com/blog/1182370/201706/1182370-20170617122224025-2121705888.png)

## datasets 为 2D-ndarray

```py
import numpy as np
import matplotlib.pyplot as plt

np.random.seed(20170617)
mu, sigma = 100, 15
t = np.random.randn(3600)
t.shape = (900, 4)
x = mu + sigma * t

p, bins, patches = plt.hist(x, 5, normed=10, alpha=0.4)

```

![hist5](http://images2015.cnblogs.com/blog/1182370/201706/1182370-20170617122224087-985944676.png)

matplotlib.pyplot.hist的更多相关文章

  1. 数据分析之matplotlib.pyplot模块

    首先都得导模块. import numpy as np import pandas as pd import matplotlib.pyplot as plt from pandas import S ...

  2. matplotlib.pyplot 让数据可视化

    1.条形图 import matplotlib.pyplot as plt plt.style.use('ggplot') # 使用ggplot样式来模拟ggplot2风格的图形,ggplot2是一个 ...

  3. 画图认识--matplotlib.pyplot

    matplotlib的pyplot模块提供了和MATLAB类似的绘图API,方便用户快速绘制二维图表.我们先看一个简单的 import matplotlib.pyplot as plt import ...

  4. Python:matplotlib.pyplot

    翻译总结自:matplotlib.pyplot - Matplotlib 3.4.3 documentation 函数 说明 acorr x的自相关性图 angle_spectrum 角度谱 anno ...

  5. matplotlib.pyplot 绘图详解 matplotlib 安装

    apt-get install python-matplotlib 转载自: http://www.cnblogs.com/qianlifeng/archive/2012/02/13/2350086. ...

  6. Python Matplotlib.pyplot plt 中文显示

    话不多说,上代码 # -*- coding: UTF-8 -*- import matplotlib.pyplot as plt from matplotlib.font_manager import ...

  7. 在绘图的时候import matplotlib.pyplot as plt报错:ImportError: No module named '_tkinter', please install the python-tk package

    在绘图的时候import matplotlib.pyplot as plt报错:ImportError: No module named '_tkinter', please install the ...

  8. Matplotlib.pyplot 把画图保存为图片

    在plt.show()之前执行plt.savefig()函数即可. 简单例子: import matplotlib.pyplot as plt x=[1,2,3,4,5] y=[10,5,15,10, ...

  9. 使用numpy与matplotlib.pyplot画图

    使用numpy与matplotlib.pyplot画图 1. 折线图 1 # -*- enccoding:utf-8 -*- 2 import numpy as np 3 import matplot ...

随机推荐

  1. get和post提交数据的区别

    get是客户端向服务器索取数据的请求,设定的初衷是,客户端(浏览器)给服务器发送请求,然后服务器再返回给客户端其要求的数据. 那么为什么说get也能提交数据呢? 我们仔细理解第一句话“客户端(浏览器) ...

  2. bash Shell条件测试

    3种测试命令: test EXPRESSION [ EXPRESSION ] [[ EXPRESSION ]]  注意:EXPRESSION前后必须有空白字符 bash的测试类型 数值测试: -eq: ...

  3. 使用CSS和JQuery实现表格单元格内容超出时部分隐藏,隐藏部分以...显示

    1.使用CSS实现,给此单元格添加一个Class: width:130px; display:block; overflow:hidden; word-break:keep-all; white-sp ...

  4. 基于HTML5快速搭建TP-LINK电信拓扑设备面板

    今天我们以真实的TP-LINK设备面板为模型,完成设备面板的搭建,和指示灯的闪烁和图元流动. 先来目睹下最终的实现效果:http://www.hightopo.com/demo/blog_tplink ...

  5. Linux下非root用户安装软件的一般流程:

    1. 获取源代码,一般是wget方式,ubuntu可以使用apt-get source来获取源代码. 2. 解压源代码,一般使用tar -zxvf xxx.tar.gz即可 3. 切换到解压后的目录, ...

  6. 【JAVAWEB学习笔记】16_session&cookie

    会话技术Cookie&Session 学习目标 案例一.记录用户的上次访问时间---cookie 案例二.实现验证码的校验----session 一.会话技术简介 1.存储客户端的状态 由一个 ...

  7. Day2-文件操作

    文件操作流程: 1.打开文件,得到文件句柄并赋值给一个变量: 2.通过句柄对文件进行操作: 3.关闭文件 ################################33 1.打开文件方法: a. ...

  8. repo版本切换

    repo init -u https://android.googlesource.com/platform/manifest repo sync 之后 这样初始化之后,相当于下载了全部的分支, 本想 ...

  9. Docker 镜像小结 - 每天5分钟玩转 Docker 容器技术(21)

    本节我们对 Docker 镜像做个小结. 这一部分我们首先讨论了镜像的分层结构,然后学习了如何构建镜像,最后实践使用 Docker Hub 和本地 registry. 下面是镜像的常用操作子命令: i ...

  10. mongoose populate

    mongoose具备关系数据库一样的关联查询,通过在schema模型中设置ref属性,然后在查询时使用populate关键字,可以达到关联查询的目的. 以下内容参考了mongoose官方文档http: ...