这是直方图

为了生成这个图,我做了:

bins = np.array([0.03, 0.3, 2, 100])

plt.hist(m, bins = bins, weights=np.zeros_like(m) + 1. / m.size)

但是,正如您所注意到的,我想绘制每个数据点的相对频率的直方图,只有3个不同大小的区间:

bin1 = 0.03 – > 0.3

bin2 = 0.3 – > 2

bin3 = 2 – > 100

由于最后一个bin的大小相对于其他bin非常大,因此直方图看起来很难看.如何修复直方图?我想改变箱子的宽度,但我不想改变每个箱子的范围.

[email protected],这不再是直方图,但你可以用plt.bar和np.histogram来做你想要的.然后,您只需将xticklabels设置为描述bin边缘的字符串.例如:

import numpy as np

import matplotlib.pyplot as plt

bins = [0.03,0.3,2,100] # your bins

data = [0.04,0.07,0.1,0.2,0.2,0.8,1,1.5,4,5,7,8,43,45,54,56,99] # random data

hist, bin_edges = np.histogram(data,bins) # make the histogram

fig,ax = plt.subplots()

# Plot the histogram heights against integers on the x axis

ax.bar(range(len(hist)),hist,width=1)

# Set the ticks to the middle of the bars

ax.set_xticks([0.5+i for i,j in enumerate(hist)])

# Set the xticklabels to a string that tells us what the bin edges were

ax.set_xticklabels(['{} - {}'.format(bins[i],bins[i+1]) for i,j in enumerate(hist)])

plt.show()

编辑

如果您更新到matplotlib v1.5.0,您会发现该栏现在需要一个kwarg tick_label,这可以使这个绘图更容易(see here):

hist, bin_edges = np.histogram(data,bins)

ax.bar(range(len(hist)),hist,width=1,align='center',tick_label=

['{} - {}'.format(bins[i],bins[i+1]) for i,j in enumerate(hist)])

python histo 改变 bins 大小_在Python中显示具有非常不均匀的bin宽度的直方图相关推荐

  1. python histo 改变 bins 大小_子批次大小python

    我目前面临的问题可以从图片 左下角的Y轴很大,从-100到+600.有办法修改吗?我试了很多次都没找到.在# the random data x = np.random.randint(0,500,1 ...

  2. python tkinter获取屏幕大小_使用Python构建属于自己的Markdown编辑器

    点击上方Linux公社,关注我们 正文Markdown编辑器大家应该都知道,很受程序员喜欢.许多人都在创建一个Markdown编辑器,有些很有创意,有些则很无聊.不过很多开发人员不希望使用Tkinte ...

  3. python怎么改变字体大小_如何在matplotlib图上更改字体大小

    如果你像我这样的控制狂,你可能想要明确设置你所有的字体大小: import matplotlib.pyplot as plt SMALL_SIZE = 8 MEDIUM_SIZE = 10 BIGGE ...

  4. python 生成pdf页面大小_(Python)更改使用xtopd生成的PDF文件的页面大小和格式

    我想用Python转换xlsx.我使用tablib和xtopdf模块构建了一个结构良好的表.工作出色!不幸的是,内容不适合一个pdf页面.所以我想把页面大小和格式改成水平A3.但我不知道这怎么可能.我 ...

  5. python tkinter获取屏幕大小_用 Python 制作关不掉的端午安康弹窗

    端午节又称端阳节.龙舟节.重午节.龙节.正阳节.天中节等,端午节源自天象崇拜,由上古时代祭龙演变而来,因传说战国时期的楚国诗人屈原在五月五日跳汨罗江自尽,后来人们亦将端午节作为纪念屈原的节日,在端午节 ...

  6. python怎么设置画布大小_在Matplotlib中设置绘图画布的大小

    这是我对Matplotlib最大的挫折之一.我经常使用光栅数据,例如我想在其中添加彩色地图.图例和一些标题.matplotlib库中的任何简单示例都会导致分辨率不同,因此会重新采样数据.尤其是在做图像 ...

  7. matlab 中图的大小_在MATLAB中显示不同大小的图像

    您可以使用"imshow with True Size for multiple images" FEX file来回答您的问题-- 编辑:下面的代码将生成图右下方的子图: cle ...

  8. python保存图片到指定路径_使用Python将不同大小照片制作为GIF动画2

    导读:本文介绍如何使用Python将不同大小的照片制作为GIF动画,文末附源代码.阅读完本文,你将学会使用Python编写程序,将不同大小的照片制作为心仪的GIF动画. 在上一篇文章里,介绍了使用Py ...

  9. python调整图像大小_使用Python调整图像大小

    作者|Nicholas Ballard 编译|VK 来源|Towards Data Science 可以说,每一个"使用计算机的人"都需要在某个时间点调整图像的大小.MacOS的预 ...

最新文章

  1. linux进程--自旋锁和互斥锁的区别(十四)
  2. KeyMob移动广告聚合平台助力开发者,提供广告聚合服务
  3. Spring5源码 - 00 IOC容器创建_前期准备
  4. 论文笔记:Image Caption(Show, attend and tell)
  5. java继承覆盖总结
  6. #pragma与__pragma的区别与联系2009-01-19 15:47__pragma与#pragma的功能相同,所不同的是:
  7. UWP 检测网络状态
  8. background-clip与background-origin
  9. 陈常青老师的讲座的笔记
  10. 一步一步重写 CodeIgniter 框架 (8) —— 视图的嵌套输出与返回
  11. 听说本周五要进行一个小测试,公司对员工的考核
  12. python元组读取到列表_python中读入二维csv格式的表格方法详解(以元组/列表形式表示)...
  13. http与https的有什么不同
  14. 博文视点新书样章下载
  15. php数据库之mysql (where 、order By 、 Update)
  16. 批量抓取QQ群成员的QQ号、昵称、群名片
  17. 通过Java创建Socket 连接到服务器
  18. termux python 打开摄像头_python+opencv 电脑调用手机的摄像头
  19. ϵ-greedy Policies
  20. 山东理工ACM【1147】求绝对值最大值

热门文章

  1. Ubuntu16.04通过wine环境安装微信与QQ等软件
  2. 什么是模拟量光端机?模拟光端机品牌有哪些?
  3. 【渝粤教育】国家开放大学2018年春季 0043-22T计算机文化 参考试题
  4. php iconv 无效,关于nodejs iconv的编码无效 说明
  5. java数组按照大小排列_Java怎么让数组中元素按照牌值从小到大的顺序排列
  6. python3语音识别模块_零基础教你玩转语音控制,学习语音控制技术,打造智能生活很简单...
  7. 计算机二级web题目(6)--动态网页技术概述
  8. MADDPG中环境怎么配置,multiagent包解决
  9. Tomcat权威指南-读书摘要系列6
  10. Java8-Guava实战示例