python绘制直方图的方法

 更新时间:2022年08月04日 10:13:25   作者:长安蔡徐坤  
这篇文章主要为大家详细介绍了python绘制直方图的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了python绘制直方图的具体代码,供大家参考,具体内容如下

import numpy as np
import matplotlib.pyplot as plt
import os #导入os库


x_norm1=np.random.randn(1000)
plt.rcParams['axes.unicode_minus']=False#显示负号\n",
plt.figure(figsize=(6,4))## 设置画布\n",
plt.hist(x_norm1,bins=50)
plt.show()

plt.rcParams['axes.unicode_minus']=False#显示负号\n",
plt.figure(figsize=(6,4))## 设置画布\n",
# plt.hist(x_norm1,bins=50)
x_norm2=2+np.random.randn(1000)
x_norm3=4+np.random.randn(1000)
plt.figure(figsize=(6,4))## 设置画布\n",
plt.hist(x_norm1,bins=50,density=True,color='r')
plt.hist(x_norm2,bins=50,density=True,color='g')
plt.hist(x_norm3,bins=50,density=True,color='b')


plt.show()

使用randn方法再产生两个正态分布的数组,绘制多个数组的直方图。

hist() 方法默认绘制频数图,及每个bin内数据的数量,要绘制概率图,需要将density参数设置为True.

p = plt.figure(figsize=(12,12))\n",
    "# 子图1,点线图\n",
    "ax1 = p.add_subplot(2,2,1)#2行2列4幅子图的第1幅\n",
    "plt.plot(x,y1,color = 'r',linestyle = '--',marker = 'o')\n",
    "plt.plot(x,y2,color = 'b',linestyle = '-',marker = '*')\n",
    "plt.plot(x,y3,color = 'g',linestyle = '-',marker = '^')\n",
    "plt.title('点线图')#添加标题\n",
    "plt.legend(['曲线y1','曲线y2','曲线y3'])\n",
    "plt.xlabel('x')#添加横轴标签\n",
    "plt.ylabel('y')#添加y轴名称\n",
    "# 子图2,柱状图\n",
    "ax1 = p.add_subplot(2,2,2)#2行2列4幅子图的第2幅\n",
    "plt.bar([0,1,2],[np.sum(y1),np.sum(y2),np.sum(y3)],width = 0.5)## 绘制柱状图\n",
    "plt.title('柱状图')#添加标题\n",
    "labels=['y1的和','y2的和','y3的和']\n",
    "plt.xlabel('数据系列y')#添加横轴标签\n",
    "plt.ylabel('数据系列y的和')#添加y轴名称\n",
    "plt.xticks(range(3),labels)\n",
    "# 子图3,饼图\n",
    "ax1 = p.add_subplot(2,2,3)#2行2列4幅子图的第3幅\n",
    "plt.pie([np.sum(y1),np.sum(y2),np.sum(y3),],labels=labels,\n",
    "        autopct='%1.1f%%')#绘制饼图\n",
    "plt.title('饼图')#添加标题\n",
    "# 子图4,箱线图\n",
    "ax1 = p.add_subplot(2,2,4)#2行2列4幅子图的第4幅\n",
    "labels=['数据系列y1','数据系列y2','数据系列y3']\n",
    "plt.boxplot([y1,y2,y3],notch=True,labels = labels, meanline=True)\n",
    "plt.title('箱线图')#添加标题\n",
    "plt.xlabel('数据系列y')#添加横轴标签\n",
    "plt.ylabel('数据系列y的值')#添加y轴名称\n",
    "plt.savefig(path+'4subgraph.jpg')#保存图片\n",
    "plt.show()"

绘制2x2的子图,matplotlib.pyplot 使用add_subplot()函数或subplot()函数设置和添加子图。

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

相关文章

  • 基于Python制作一个相册播放器

    基于Python制作一个相册播放器

    对于相册播放器,大家应该都不陌生(用于浏览多张图片的一个应用)。本文将利用Python编写一个简单的相册播放器,感兴趣的可以学习一下
    2022-06-06
  • 使用python实现一个简单ping pong服务器

    使用python实现一个简单ping pong服务器

    这篇文章主要为大家介绍了使用python实现一个简单ping pong服务器,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • python return逻辑判断表达式实现解析

    python return逻辑判断表达式实现解析

    这篇文章主要介绍了python return逻辑判断表达式实现解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • PyGame实现初始化导入所有模块方法详解

    PyGame实现初始化导入所有模块方法详解

    pygame安装是为了开发小游戏,在下新手在经过许多尝试后,为大家避雷,给大家分享一个简单有效的方法,下面这篇文章主要给大家介绍了关于Python中Pygame的详细安装过程的相关资料,需要的朋友可以参考下
    2022-11-11
  • python支持多继承吗

    python支持多继承吗

    在本篇文章里小编给大家整理的是关于python支持多继承的相关基础知识点,需要的朋友们跟着学习参考下。
    2020-06-06
  • 解决Django删除migrations文件夹中的文件后出现的异常问题

    解决Django删除migrations文件夹中的文件后出现的异常问题

    今天小编就为大家分享一篇解决Django删除migrations文件夹中的文件后出现的异常问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • 详细聊聊为什么Python中0.2+0.1不等于0.3

    详细聊聊为什么Python中0.2+0.1不等于0.3

    最近在学习过程中发现在计算机JS时发现了一个非常有意思事,0.1+0.2的结果不是0.3,而是0.30000000000000004,下面这篇文章主要给大家介绍了关于为什么Python中0.2+0.1不等于0.3的相关资料,需要的朋友可以参考下
    2022-12-12
  • Python 如何安装Selenium(推荐)

    Python 如何安装Selenium(推荐)

    Selenium 是一个 Web的自动化测试工具 ,最初是为网站 自动化测试而开发的 , Selenium 可以直接调用浏览器 ,它支持所有主流的浏览器,本文给大家介绍Python 如何安装Selenium,感兴趣的朋友一起看看吧
    2021-05-05
  • python生成器/yield协程/gevent写简单的图片下载器功能示例

    python生成器/yield协程/gevent写简单的图片下载器功能示例

    这篇文章主要介绍了python生成器/yield协程/gevent写简单的图片下载器功能,结合实例形式分析了python生成器、yield协程与gevent图片下载器相关功能定义与使用技巧,需要的朋友可以参考下
    2019-10-10
  • Python断言assert的用法代码解析

    Python断言assert的用法代码解析

    这篇文章主要介绍了Python断言assert的用法代码解析,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-02-02

最新评论