matplotlib 直方图绘制详解
n, bins, patches = plt.hist(datasets, bins, normed=False, facecolor=None, alpha=None)
函数说明
用于绘制多个数据集datasets的直方图
主要形参:
- datasets: 数据集列表, datasets中各个数据集的长度可以不等, 也可以传入numpy中的 2-D ndarray
- bins: 直方图中箱子(bin)的个数
- facecolor: 箱子的颜色
- alpha: 箱子的透明度
- normed: 决定直方图
y轴取值是落在某个箱子中的元素的个数(normed=False或normed=0),
还是某个箱子中的元素的个数占总体的百分比(normed=True或normed=1)
函数返回值: 返回值为一个元组(tuple)
- n: 直方图中 数据x落在 某个箱子里元素个数(或者占比)组成的数组
- bins: 直方图中 箱子取值(可能是落在该区间的x的均值)组成的数组
- patches: 是一个封装了 p 和 n信息的列表的集合(Patch对象)
例子
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)

改变形参 bins, facecolor, normed
设置 bins=10, facecolor=cyan, normed=0
通过下图可以看到 箱子个数, 颜色, 以及 y轴的变化
p, bins, patches = plt.hist(x, 10, normed=0, facecolor='cyan', alpha=0.75)

datasets为多个一维数据集
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)

datasets 为 2D-ndarray
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)

matplotlib 直方图绘制详解的更多相关文章
- python matplotlib.pyplot 条形图详解
python matplotlib.pyplot 条形图详解 一.创建直方图 可以用bar函数来创建直方图 然后用show函数显示直方图 比如: import matplotlib.pyplot as ...
- View绘制详解(五),draw方法细节详解之View的滚动/滑动问题
关于View绘制系列的文章已经完成了四篇了,前面四篇文章主要带小伙伴们熟悉一下View的体系的整体框架.View的测量以及布局等过程,从本篇博客开始,我们就来看看View的绘制过程.View的绘制涉及 ...
- View绘制详解(四),谝一谝layout过程
上篇博客我们介绍了View的测量过程,这只是View显示过程的第一步,第二步就是layout了,这个我们一般译作布局,其实就是在View测量完成之后根据View的大小,将其一个一个摆放在ViewGro ...
- View绘制详解(三),扒一扒View的测量过程
所有东西都是难者不会,会者不难,Android开发中有很多小伙伴觉得自定义View和事件分发或者Binder机制等是难点,其实不然,如果静下心来花点时间把这几个技术点都研究一遍,你会发现其实这些东西都 ...
- View绘制详解(二),从setContentView谈起
掐指一算,本来今天该介绍View的测量了,可是要说View的测量,那就要从setContentView谈起了,setContentView本身涉及到的东西也是挺多的,所以今天我们就先来看看这个setC ...
- View绘制详解,从LayoutInflater谈起
自定义View算是Android开发中的重中之重了,很多小伙伴可能或多或少都玩过自定义View,对View的绘制流程也有一定的理解.那么现在我想通过几篇博客来详细介绍View的绘制流程,以便使我们更加 ...
- python matplotlib.pyplot 散点图详解(1)
python matplotlib.pyplot散点图详解(1) 一.创建散点图 可以用scatter函数创建散点图 并使用show函数显示散点图 代码如下: import matplotlib.py ...
- python matplotlib.pyplot 散点图详解(2)
python matplotlib.pyplot 散点图详解(2) 上期资料 一.散点图叠加 可以用多个scatter函数叠加散点图 代码如下: import matplotlib.pyplot as ...
- Matplotlib直方图绘制技巧
情境引入 我们在做机器学习相关项目时,常常会分析数据集的样本分布,而这就需要用到直方图的绘制. 在Python中可以很容易地调用matplotlib.pyplot的hist函数来绘制直方图.不过,该函 ...
随机推荐
- nGrinder TestRunner DNS / sun.net.spi.nameservice.NameServiceDescriptor
s ngrinder3.3控制台验证脚本报错 http://ngrinder.642.n7.nabble.com/ngrinder3-3-td1301.html 目前发现3.3版本在控制台校验脚本报错 ...
- Unity-使用面向对象的思想
在做游戏之初,老师曾经说过要用面向对象的思想去做.当时满口答应,应为学了一点C#的原因感觉面向对象很简单嘛,但是事实上在做游戏的过程中,为了赶进度我的代码写的很冗余,很乱.这就导致了我不得不重新修改. ...
- win7安装linux CentOS7双系统实践
开发需求要安装linux,百度了些资料,当然仅供参考,否则入坑. 步骤一 :制作Centos 7镜像文件,这步没什么坑 1.准备U盘8G以上 下载的话网上很多,这里提供一个下载路径: http:// ...
- js拼接HTML页面元素a标签遇到的问题
业务,如下图需要做一个广告轮播的图片链接 使用了ajax请求后台,在js拼接html,关键代码: $("#scroll_img").html(""); for ...
- Part-Four
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
- functools学习记录
装饰器demo def wrapper(func): print('装饰器工作了') def inner(*args,**kwargs): return func(*args,**kwargs) re ...
- 利用 yEd 软件做元数据管理
利用 yEd 软件做元数据管理 yEd Diagram editor 是我常用的 flow chart 制图工具, 另外我也用它画 ER 和 use case 图. 总结一下我喜欢 yEd 的原因:1 ...
- C# web IIS服务器 DateTime 带中文解决
C# Web应用在某些电脑IIS上部署运行,读取当前时间带有中文,比如2018-5-1 星期一 上午 12:00:00,虽然使用Format转换可以解决,但代码量较大难免遗漏,会引发问题,为了解决该问 ...
- ASP.NET Web API 2 之参数验证
Ø 前言 目前 C# 比较流行使用 ASP.NET Web API 来承载 Web 接口,提供与客户端之间的数据交互,现在的版本已经是 2.0 了.既然是接口就少不了对输入参数的验证,所以本文主要探 ...
- 001_twoSum
#####solution01##### # def twoSum(nums, target): # res=[] # for i in range(0,len(nums)-1): # p1 = nu ...