我有一个软件必须处理大量不同的数据,并且可能需要不同的时间来处理它.随着软件的修改,处理数据所需的时间也会发生变化,所以我想创建一个显示时间差异和异常值的图表,因为理想情况下,这个程序每个部分需要大约相同的时间数据(这听起来很奇怪,不切实际,我知道,但在这里和我一起滚动).

起初,我想过使用箱形图,但我认为它们是不合适的,因为完全有可能将一半数据集悬停在一个值附近,另一半围绕另一个徘徊,我感觉不到箱形图会很好地说明这一点.所以我决定尝试使用直方图,但我无法弄清楚如何让matplotlib以我想要的方式绘制它.我想要一个单独的数字,X轴标有软件版本,Y轴显示处理数据集所需的时间,有多个直方图,就像我做的这个模型:

该图表显示在0.1版本中,大多数数据集在2-4秒内处理,由于某种原因需要12秒才能处理一组数据集. v0.1a摆脱了那些长的异常值,但一切都花了更长的时间. 0.1b比0.1a略快.最后,0.2显示了很大的速度提升,但又引入了异常值.

我怎样才能让matplotlib创建这样的情节?

解决方法:

这是一个(非常)基本的模型,说明如何实现这一目标:

import matplotlib.pyplot as plt

import numpy as np

number_of_bins = 20

number_of_data_points = 1000

ax = plt.subplot(111)

data_set = [np.random.normal(0, 1, number_of_data_points),

np.random.normal(6, 1, number_of_data_points),

np.random.normal(-3, 1, number_of_data_points)]

MID_VALUES = [0, 200, 400]

labels = ["v1", "v2", "v3"]

for MID_VAL, y in zip(MID_VALUES, data_set):

hist, bin_edges = np.histogram(y, bins=number_of_bins)

bottom = bin_edges[:-1]

heights = np.diff(bin_edges)

lefts = MID_VAL - .5 * hist

ax.barh(bottom, hist, height=heights, left=lefts)

ax.set_xticks(MID_VALUES)

ax.set_xticklabels(labels)

plt.show()

这个缺乏我承认的很多改进,例如:MID_VALUES是手动选择的,这取决于数据集并且可以自动化.不过,您可以将其变为更有用的格式.

标签:python,matplotlib

来源: https://codeday.me/bug/20190830/1768404.html

python 多组直方图 画图_python – 使用matplotlib的多个并排直方图?相关推荐

  1. python绘制多个条形图_python – 在Matplotlib中绘制多个直方图 – 颜色或并排条形图...

    问题:在Matplotlib中绘制多个直方图时,我无法区分绘图与另一个绘图 图像问题:** **次要问题:部分左侧标签"计数"不在图像范围内.为什么? 描述 我想绘制3个不同组的直 ...

  2. python画不同颜色的直方图_python - 使用matplotlib同时绘制两个直方图

    python - 使用matplotlib同时绘制两个直方图 我使用文件中的数据创建了直方图,没有问题. 现在我想重叠数据另一个文件在同一个直方图中,所以我做了类似的事情 n,bins,patchs ...

  3. python如何画动图_python之matplotlib画图教程(3)--如何画动图

    上一篇我们说好了,要给出整套源码,为了不占正文的篇幅,我会在文末贴出.放心,不是让你去关注公众号.因为,我并没有.. 之前我们聊了怎么画圆以及直线,我还是建议你能抽出10分钟把前面的文章先看了,因为这 ...

  4. python绘制好几个子图_python使用matplotlib:subplot绘制多个子图 不规则画图

    Regionals 2012 :: HangZhou 题目传送门排行榜 一个人做了12年北大出的题,自己还是太弱了,图论的知识忘光光,最小生成树裸题写不来,Dijkstra TLE不知道用SPFA. ...

  5. python层次聚类法画图_Python实现简单层次聚类算法以及可视化

    本文实例为大家分享了Python实现简单层次聚类算法,以及可视化,供大家参考,具体内容如下 基本的算法思路就是:把当前组间距离最小的两组合并成一组. 算法的差异在算法如何确定组件的距离,一般有最大距离 ...

  6. 用python画气球循环画图_Python 利用循环画散点图

    原博文 2018-12-10 11:53 − 1 import pandas as pd 2 data = pd.read_csv('D:/suning/iris.csv') 3 data = dat ...

  7. python制作3d相册代码_Python使用matplotlib绘制3D图形(代码示例)

    本篇文章给大家带来的内容是关于Python使用matplotlib绘制3D图形(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 3D图形在数据分析.数据建模.图形和图像处理 ...

  8. python在坐标轴上画矩形_Python使用matplotlib实现在坐标系中画一个矩形的方法

    本文实例讲述了Python使用matplotlib实现在坐标系中画一个矩形的方法.分享给大家供大家参考.具体实现方法如下: import matplotlib.pyplot as plt from m ...

  9. python中bar的用法_python使用matplotlib绘图 -- barChart

    matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图.而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中.它的文档相当完备,并 ...

最新文章

  1. 程序员该如何抉择公司?
  2. redis服务端基本命令
  3. c语言程序的标识符分类,华中科技大学计算机学院C语言程序设计标识符.PPT
  4. Java学习笔记12——JVM入门
  5. 术语html的含义是,术语html指的是什么
  6. J2ME结构与相关规范介绍
  7. java web事务控制_JavaWeb学习之事务
  8. python按键盘上哪个键运行_python按什么键运行
  9. 安装mysql中文步骤_mysql安装步骤-Go语言中文社区
  10. 我是不是来错地方了?
  11. 不是局域网计算机远程桌面连接,开启局域网远程桌面连接不上怎么办
  12. 小程序二维码海报生成
  13. html选择日期选择器
  14. 图像取证:源识别和伪造检测(Image Forensics: source identification and tampering detection) 续2
  15. 怎么把win10右下角的隐藏图标调出来(把倒三角调出来)
  16. docker安装shipyard
  17. DeepLearing—CV系列(二十二)——DCGAN生成动漫卡通人脸的Pytorch实现
  18. h5页面使用html2canvas实现分享海报
  19. 免费生信课程|多组学数据整合分析之转录组和蛋白质组分析
  20. 快速了解sealed关键字

热门文章

  1. Linux上下载chronyd安装包,如何在Linux中安装和使用Chrony时间同步
  2. windos 2008安装php5.3,windows 2008 + php 5.3.29配置
  3. 高斯消元法的c语言编程,列主元高斯消元法的C语言编程
  4. bootstrap 垂直居中 布局_CSS3 flex 布局必须要掌握的知识点
  5. MySql数据库常用命令宝典
  6. Java连接数据库所遇到的坑,连接数据库,遇到一个很奇怪的问题……
  7. 计算机网络云南大学实验四,云南大学软件学计算机网络原理实验四.doc
  8. 如何删除Win All的流氓程序文件
  9. C++类模板5分钟入门
  10. hbasehlog_HBase原理--RegionServer核心组件之HLog