python matplotlib库直方图绘制详解


Posted in Python onAugust 10, 2019

例题:假设你获取了250部电影的时长(列表a中),希望统计出这些电影时长的分布状态(比如时长为100分钟到120分钟电影的数量,出现的频率)等信息,你应该如何呈现这些数据?

一些概念及问题:

  • 把数据分为多少组进行统计
  • 组数要适当,太少会有较大的统计误差,太多规律不明显
  • 组数:将数据分组,共分为多少组
  • 组距:指每个小组的两个端点的距离
  • 组数:极差 / 组距,也就是 (最大值-最小值)/ 组距
  • 频数分布直方图与频率分布直方图,hist()方法需增加参数normed
  • 注意:一般来说能够使用plt.hist()方法绘制的直方图是那些没有统计过的数据,如果是统计过的数据为了能绘制像直方图一样的效果,可以使用条形图plt.bar()方法来绘制,不过中间过程就会稍微麻烦一些
from matplotlib import pyplot as plt
import matplotlib
font = {'family': 'MicroSoft YaHei'}
matplotlib.rc('font', **font) # 使支持中文

a = [131, 98, 125, 131, 124, 139, 131, 117, 128, 108, 135, 138, 131, 102, 107, 114, 119, 128, 121, 142, 127, 130, 124,
   101, 110, 116, 117, 110, 128, 128, 115, 99, 136, 126, 134, 95, 138, 117, 111, 78, 132, 124, 113, 150, 110, 117, 86,
   95, 144, 105, 126, 130, 126, 130, 126, 116, 123, 106, 112, 138, 123, 86, 101, 99, 136, 123, 117, 119, 105, 137,
   123, 128, 125, 104, 109, 134, 125, 127, 105, 120, 107, 129, 116, 108, 132, 103, 136, 118, 102, 120, 114, 105, 115,
   132, 145, 119, 121, 112, 139, 125, 138, 109, 132, 134, 156, 106, 117, 127, 144, 139, 139, 119, 140, 83, 110, 102,
   123, 107, 143, 115, 136, 118, 139, 123, 112, 118, 125, 109, 119, 133, 112, 114, 122, 109, 106, 123, 116, 131, 127,
   115, 118, 112, 135, 115, 146, 137, 116, 103, 144, 83, 123, 111, 110, 111, 100, 154, 136, 100, 118, 119, 133, 134,
   106, 129, 126, 110, 111, 109, 141, 120, 117, 106, 149, 122, 122, 110, 118, 127, 121, 114, 125, 126, 114, 140, 103,
   130, 141, 117, 106, 114, 121, 114, 133, 137, 92, 121, 112, 146, 97, 137, 105, 98, 117, 112, 81, 97, 139, 113, 134,
   106, 144, 110, 137, 137, 111, 104, 117, 100, 111, 101, 110, 105, 129, 137, 112, 120, 113, 133, 112, 83, 94, 146,
   133, 101, 131, 116, 111, 84, 137, 115, 122, 106, 144, 109, 123, 116, 111, 111, 133, 150]
# 计算组数
d = 3 # 组距
num_bins = (max(a) - min(a)) // d # 计算组距的公式
plt.figure(figsize=(20, 8), dpi=80) # 设置图片大小
plt.hist(a, num_bins) # 加上normed=True属性之后变为频率分布直方图
# 设置x轴的刻度
plt.xticks(range(min(a), max(a)+d, d))
plt.grid(alpha=0.3)
plt.show()

效果图

python matplotlib库直方图绘制详解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python读取注册表中值的方法
Apr 08 Python
python实现ipsec开权限实例
Nov 11 Python
Python实现比较两个文件夹中代码变化的方法
Jul 10 Python
解决Django 在ForeignKey中出现 non-nullable field错误的问题
Aug 06 Python
Pycharm 字体大小调整设置的方法实现
Sep 27 Python
python求绝对值的三种方法小结
Dec 04 Python
浅析Python中字符串的intern机制
Oct 03 Python
python中yield的用法详解
Jan 13 Python
Python利器openpyxl之操作excel表格
Apr 17 Python
python如何进行基准测试
Apr 26 Python
Django实现WebSocket在线聊天室功能(channels库)
Sep 25 Python
Python借助with语句实现代码段只执行有限次
Mar 23 Python
python字典的遍历3种方法详解
Aug 10 #Python
python命名空间(namespace)简单介绍
Aug 10 #Python
简单介绍python封装的基本知识
Aug 10 #Python
nginx黑名单和django限速,最简单的防恶意请求方法分享
Aug 09 #Python
python selenium爬取斗鱼所有直播房间信息过程详解
Aug 09 #Python
用Python实现二叉树、二叉树非递归遍历及绘制的例子
Aug 09 #Python
基于python二叉树的构造和打印例子
Aug 09 #Python
You might like
php使用反射插入对象示例分享
2014/03/11 PHP
PHP按一定比例压缩图片的方法
2018/10/12 PHP
用一段js程序来实现动画功能
2007/03/06 Javascript
jqPlot Option配置对象详解
2009/07/25 Javascript
一个网马的tips实现分析
2010/11/28 Javascript
最新28个很棒的jQuery 教程
2011/05/28 Javascript
window.open以post方式将内容提交到新窗口
2012/12/26 Javascript
jquery特效 幻灯片效果示例代码
2013/07/16 Javascript
javascript实现信息的显示和隐藏如注册页面
2013/12/03 Javascript
FireBug 调试JS入门教程 如何调试JS
2013/12/23 Javascript
关于img的href和src取变量及赋值的方法
2014/04/28 Javascript
解决自定义$(id)的方法与jquery选择器$冲突的问题
2014/06/14 Javascript
JavaScript中判断整数的多种方法总结
2014/11/08 Javascript
解决js页面滚动效果scrollTop在FireFox与Chrome浏览器间的兼容问题的方法
2015/12/03 Javascript
javascript下使用Promise封装FileReader
2016/02/19 Javascript
jQuery遍历json的方法分析
2016/04/16 Javascript
AngularJS 输入验证详解及实例代码
2016/07/28 Javascript
js实现悬浮窗效果(支持拖动)
2017/03/09 Javascript
nodejs+express搭建多人聊天室步骤
2018/02/12 NodeJs
微信小程序收藏功能的实现代码
2018/06/12 Javascript
mpvue项目中使用第三方UI组件库的方法
2018/09/30 Javascript
浅谈关于JS下大批量异步任务按顺序执行解决方案一点思考
2019/01/08 Javascript
Python实现基于二叉树存储结构的堆排序算法示例
2017/12/08 Python
Python中的正则表达式与JSON数据交换格式
2019/07/03 Python
pycharm中显示CSS提示的知识点总结
2019/07/29 Python
opencv3/C++实现视频背景去除建模(BSM)
2019/12/11 Python
matplotlib设置颜色、标记、线条,让你的图像更加丰富(推荐)
2020/09/25 Python
python3处理word文档实例分析
2020/12/01 Python
详解CSS3 filter:drop-shadow滤镜与box-shadow区别与应用
2020/08/24 HTML / CSS
html5简单示例_动力节点Java学院整理
2017/07/07 HTML / CSS
Footshop罗马尼亚:最好的运动鞋选择
2019/09/10 全球购物
好的旅游活动方案
2014/08/19 职场文书
班主任寄语2015
2015/02/26 职场文书
党风廉政建设个人总结
2015/03/06 职场文书
反邪教警示教育活动总结
2015/05/09 职场文书
Python自动操作神器PyAutoGUI的使用教程
2022/06/16 Python