现在人工智能越来越实用,甚至深入到千家万户,随之而来的就是python技术的火爆,今天小猿圈python讲师为你讲解一下绘制频率分布直方图示例,希望对于刚刚自学python的你有一定的帮助。

项目中在前期经常要看下数据的分布情况,这对于探究数据规律非常有用。概率分布表示样本数据的模样,长的好不好看如果有图像展示出来就非常完美了,使用Python绘制频率分布直方图非常简洁,因为用的频次非常高,这里记录下来。还是Python大法好,代码简洁不拖沓~

如果数据取值的范围跨度不大,可以使用等宽区间来展示直方图,这也是最常见的一种;如果数据取值范围比较野,也可以自定义区间端点,绘制图像,下面分两种情况展示

1.区间长度相同绘制直方图

#-*- encoding=utf-8 -*-

import datetime

import numpy as np

import matplotlib.pyplot as plt

import matplotlib

zhfont1 = matplotlib.font_manager.FontProperties(fname='C:\Windows\Fonts\simsun.ttc')

# 按照固定区间长度绘制频率分布直方图

# bins_interval 区间的长度

# margin 设定的左边和右边空留的大小

def probability_distribution(data, bins_interval=1, margin=1):

bins = range(min(data), max(data) + bins_interval - 1, bins_interval)

print(len(bins))

for i in range(0, len(bins)):

print(bins[i])

plt.xlim(min(data) - margin, max(data) + margin)

plt.title("probability-distribution")

plt.xlabel('Interval')

plt.ylabel('Probability')

plt.hist(x=data, bins=bins, histtype='bar', color=['r'])

plt.show()

2.区间长度不同绘制直方图

#-*- encoding=utf-8 -*-

import datetime

import numpy as np

import matplotlib.pyplot as plt

import matplotlib

zhfont1 = matplotlib.font_manager.FontProperties(fname='C:\Windows\Fonts\simsun.ttc'

# 自己给定区间,小于区间左端点和大于区间右端点的统一做处理,对于数据分布不均很的情况处理较友好

# bins 自己设定的区间数值列表

# margin 设定的左边和右边空留的大小

# label 右上方显示的图例文字

"""e

import numpy as np

data = np.random.normal(0, 1, 1000)

bins = np.arange(-5, 5, 0.1)

probability_distribution_extend(data=data, bins=bins)

"""

def probability_distribution_extend(data, bins, margin=1, label='Distribution'):

bins = sorted(bins)

length = len(bins)

intervals = np.zeros(length+1)

for value in data:

i = 0

while i < length and value >= bins[i]:

i += 1

intervals[i] += 1

intervals = intervals / float(len(data))

plt.xlim(min(bins) - margin, max(bins) + margin)

bins.insert(0, -999)

plt.title("probability-distribution")

plt.xlabel('Interval')

plt.ylabel('Probability')

plt.bar(bins, intervals, color=['r'], label=label)

plt.legend()

plt.show()

Case示例

if __name__ == '__main__':

data = [1,4,6,7,8,9,11,11,12,12,13,13,16,17,18,22,25]

probability_distribution(data=data, bins_interval=5,margin=0)

以上就是小猿圈python讲师给大家分享的绘制频率分布直方图示例,希望对小伙伴们有所帮助,想要了解更多内容的小伙伴可以到小猿圈直接观看,想要学好Python开发技术的小伙伴快快行动吧。

python绘制直方图根据不同分类_小猿圈Python开发之绘制频率分布直方图示例相关推荐

  1. 频率分布直方图组距如何确定_小猿圈Python开发之绘制频率分布直方图示例

    现在人工智能越来越实用,甚至深入到千家万户,随之而来的就是python技术的火爆,今天小猿圈python讲师为你讲解一下绘制频率分布直方图示例,希望对于刚刚自学python的你有一定的帮助. 项目中在 ...

  2. matlab 频率分布直方图_小猿圈Python开发之绘制频率分布直方图示例

    现在人工智能越来越实用,甚至深入到千家万户,随之而来的就是python技术的火爆,今天小猿圈python讲师为你讲解一下绘制频率分布直方图示例,希望对于刚刚自学python的你有一定的帮助. 项目中在 ...

  3. php获取html中文本框内容_小猿圈Python入门之批量获取html内body内容的方法

    对于人工智能你了解有多少?你知道Python的使用吗?这个对于大部分初学者来说都是很难的,小猿圈Python讲师会每天为大家选择分享一个知识点,希望对你学习Python有所帮助,今天分享的就是批量获取 ...

  4. 小猿圈python金角大王_小猿圈python学习-基本数据类型

    小猿圈python学习-基本数据类型 2019-04-24 11:16:14 1点赞 6收藏 0评论 什么是数据类型? 我们人类可以很容易的分清数字与字符的区别,但是计算机并不能呀,计算机虽然很强大, ...

  5. 小猿圈python之python期末考试测试题(二)_小猿圈Python开发面试题(二)

    原标题:小猿圈Python开发面试题(二) 小猿圈Python老师继上一次python面试题一,接着更新python面试题二,同学们测试一做的怎么样呢?有没有把握呢,想要看答案的同学们,可以在小猿圈上 ...

  6. python小猿_小猿圈python简介和发展前景?

    只要朝着一个方向努力,一切都会变得得心应手.-----勃朗宁 小猿圈python简介: Python是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python 的设计具有很强的可读 ...

  7. 如何使用python编程抢京东优惠券 知乎_小猿圈Python之实现京东秒杀功能代码

    现在电商产业的多种多样,从最早的阿里巴巴.淘宝到现在的京东等等数不胜数,你还记得的京东的秒杀功能吗?小猿圈python讲师今天就为你实现京东秒杀功能代码. #Python3.5 #coding:utf ...

  8. 下列不是python对文件的读操作方法是-小猿圈python之python期末考试测试题(一)...

    原标题:小猿圈python之python期末考试测试题(一) 又快临近期末考试了,小伙伴们是不是又开始焦虑了呢?挂科怎么办?如果很幸运看到小编的文章,你就偷着乐吧,小编总结出:一般python期末考试 ...

  9. java request 处理过程_小猿圈Java开发之从代码看spring mvc请求处理过程

    原标题:小猿圈Java开发之从代码看spring mvc请求处理过程 Java作为编程界的常青树,有自己生存的独到之处,小猿圈java讲师今天就分享一个关于从代码看spring mvc请求处理过程,通 ...

最新文章

  1. MFC消息响应函数OnPaint
  2. js null ,null没有typeof返回值为undefine 即 null没有返回类型的
  3. mysql内部安装workb_centOS系统中下安装mysql workbench图文详细步骤
  4. 如何自学Android--转
  5. mysql如何在一个表中插入数据的同时,更新另一个表的数据?
  6. HDU 4279 - Number
  7. 数学江湖中的“独孤九剑”
  8. Linux 修改密码root(账号)
  9. 基于JAVA+SpringMVC+Mybatis+MYSQL的图书馆座位预约系统
  10. C# - 企业框架下的存储过程输出参数
  11. nopcommerce 开源商城
  12. Django signal
  13. DIY audio player - 自定义audio播放器样式
  14. 10投屏后没有声音_10年后,学区房有没有可能成为“负资产”?这位专家说了实话...
  15. 组态TwinCat软件安装时,There are some files marked for deletion on next reboot.Please reboot first and then
  16. 分享|5G智慧校园顶层设计(附PDF)
  17. BootStrap之导航条navigationBar
  18. E-mark认证是什么?
  19. 沈善增谈学太极的经历
  20. 排列熵、模糊熵、近似熵、样本熵的原理及MATLAB实现之样本熵

热门文章

  1. 团体程序设计天梯赛-练习集(L1)
  2. Vue 的响应式原理
  3. 2018考研英语考试时间怎么分配?
  4. 计算平均值python
  5. Ubuntu虚拟机安装与入门教程
  6. Android应用如何实现换肤功能
  7. xshell中的xftp传输文件失败和错误处理
  8. RTMP直播流媒体服务-开放直播快速开启推流直播
  9. Map集合遍历方法加lambda表达式
  10. 怎么给pdf加水印?教3个简单的方法