首页 > 编程语言 >使用Python画出直方图

使用Python画出直方图

时间:2022-09-07 13:44:47浏览次数:90  
标签:plot bar Python 画出 hist 直方图 ax 100 bins

https://zhuanlan.zhihu.com/p/476643798

 

它们之间的区别在于pandas.DataFrame.plot.hist将整个dataframe的数据展示在一幅图上,而pandas.DataFrame.hist会调用pandas.DataFrame.plot.hist将dataframe的数据按照不同的列分别展现在不同的图形上。然而,pandas.DataFrame.plot.hist本身调用的是matplotlib.pyplot.hist()。简单点说,pandas里面相关的hist函数都是基于matplotlib里面的pyplot所做的封装。

 

那该如何做?很显然我不可能在df.plot.hist(bins=[...])参数列表里手写20个范围的值,对吧?

一旦明白了自身的需要,那么答案就比较容易了,因为我们看到bins参数需要的是一个列表,虽然不能直接手写20个范围,但我们可以使用Python里面的列表解析方法来便捷的创建列表,也就是我们可以写成bins=[n/100 for n in range(-100, 100, 5)],这样就达到要求了。

 

 

 

ax = df.plot.hist(bins=[n/100 for n in range(-100, 100, 5)])

for bar in ax.patches:
  ax.annotate(format(bar.get_height(), '.0f'),
                   (bar.get_x() + bar.get_width() / 2,
                    bar.get_height()), ha='center', va='center',
                   size=15, xytext=(0, 8),
                   textcoords='offset points')
'''
plot
'''
bins = [n/3 for n in range(-30,31,1)]

intrfr_list_pd = pd.DataFrame(intrfr_list_np)
ax = intrfr_list_pd.plot.hist(bins = [n/3 for n in range(-30,30,1)],grid=True)
ax.set_xlabel('Deg')
ax.set_ylabel('Frame Num')
ax.set_title('DML_L-3_R3')

 

标签:plot,bar,Python,画出,hist,直方图,ax,100,bins
From: https://www.cnblogs.com/focus-z/p/16665111.html

相关文章

  • 4.6字符串大战 python
    1字符串排序有多篇文章输入,每篇文章分为标题行和正文行,每篇文章输入时标题和正文各占一行。需要统计所有文章中出现的热词并输出topN的热词。title中的词权重为3,text中权......
  • python数据类型之元组Tuple
    1.元组Tuple说明元组是另一个数据类型,类似于List(列表)。元组用()标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。Python的元组与列表类似,不同之......
  • Python 运行日志 → 01.09.2022
    Python运行日志→01.09.20221-)Python简介在本文中,我想总结一下我们看到的第一堂课中的代码和基本信息。由于我对这种领域完全陌生,我突然将其视为课程重复。那么让......
  • DAY 252 Python定时任务
    在日常工作中,我们常常会用到需要周期性执行的任务,一种方式是采用Linux系统自带的crond结合命令行实现。另外一种方式是直接使用Python。接下来整理的是常见的Python定......
  • python 用循环和递归分别实现斐波那契数列
    用循环和递归分别实现斐波那契数列#1\用for循环实现斐波那契数列res=[]foriinrange(10):ifi<2:res.append(1)else:res.append(res[i-......
  • Python工具箱系列(四)
    上期描述了如何在Windows下安装官方的Python3.8,本期描述如何安装Anaconda。建立Python环境这个话题,为何要大费周章、不厌其烦的叙述呢,主要的原因是:所有的语言在设计时,都......
  • 让我们学习,如何使用 python 创建自己的端口扫描器
    让我们学习,如何使用python创建自己的端口扫描器PortScannerPythonPicture本教程仅包含用于创建端口扫描器的四个不同代码片段。这些端口扫描器将为Web服务和外部......
  • [Python以终为始]Day 2–在VSCode开发
    [Python以终为始]Day2–在VSCode开发想研究机器学习的前端工程师,从零到一百学习python的笔记前置下载并安装VSCode在VSCode安装由微软开发的python套件准备开始!......
  • Python3 正则表达式
    正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。Python自1.5版本起增加了re模块,它提供Perl风格的正则表达式模式。re模块使Py......
  • Python3 环境搭建
    我们将向大家介绍如何在本地搭建Python3开发环境。Python3可应用于多平台包括Windows、Linux和MacOSX。Unix(Solaris,Linux,FreeBSD,AIX,HP/UX,SunOS,IR......