问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

用Matplotlib绘制高质量管理用的直方图

创作时间:
作者:
@小白创作中心

用Matplotlib绘制高质量管理用的直方图

引用
搜狐
9
来源
1.
https://www.sohu.com/a/151117285_737873
2.
https://blog.csdn.net/hohaizx/article/details/79101322
3.
https://zhuanlan.zhihu.com/p/434935274
4.
https://blog.csdn.net/wumingxiaoyao/article/details/122769640
5.
https://www.163.com/dy/article/J81P912I0518WKOQ.html
6.
https://blog.csdn.net/weixin_47792780/article/details/137216274
7.
https://ucourse.org/%E3%80%90%E5%85%AD%E8%A5%BF%E6%A0%BC%E7%8E%9B%E5%BE%AE%E8%AF%BE%E5%A0%82%E3%80%91%E8%BF%87%E7%A8%8B%E8%83%BD%E5%8A%9B%E6%8C%87%E6%95%B0cp%E5%92%8Ccpk/
8.
http://www.yizlean.com/h-nd-266.html
9.
https://www.233.com/jianli/Case/xueba/202303/06090948772093.html

在质量管理领域,直方图是一种非常重要的数据分析工具。作为质量控制七种工具之一,直方图能够直观地展示数据分布情况,帮助我们识别异常、分析质量问题。本文将介绍如何使用Python的Matplotlib库绘制高质量管理用的直方图,并结合具体案例说明其在质量管理中的应用。

01

Matplotlib绘制直方图基础

首先,我们需要了解如何使用Matplotlib绘制直方图。以下是一个基本的代码示例:

import matplotlib.pyplot as plt
import numpy as np
import matplotlib

# 设置matplotlib正常显示中文和负号
matplotlib.rcParams['font.sans-serif']=['SimHei']   # 用黑体显示中文
matplotlib.rcParams['axes.unicode_minus']=False     # 正常显示负号

# 随机生成(10000,)服从正态分布的数据
data = np.random.randn(10000)

# 绘制直方图
plt.hist(data, bins=40, normed=0, facecolor="blue", edgecolor="black", alpha=0.7)

# 显示横轴标签
plt.xlabel("区间")

# 显示纵轴标签
plt.ylabel("频数/频率")

# 显示图标题
plt.title("频数/频率分布直方图")

plt.show()

在上述代码中,plt.hist函数是绘制直方图的核心。其关键参数包括:

  • data:绘图数据
  • bins:直方图的长条形数目,默认为10
  • normed:是否将直方图向量归一化,默认为0(不归一化)
  • facecolor:长条形的颜色
  • edgecolor:长条形边框的颜色
  • alpha:透明度
02

直方图在质量管理中的应用

接下来,我们通过一个具体案例来说明直方图在质量管理中的应用。假设某工厂生产一批零件,需要检测其直径是否符合规格。规格要求为10±0.5mm,即直径应在9.5mm到10.5mm之间。

  1. 数据收集:从生产线上随机抽取100个零件,测量其直径。

  2. 绘制直方图:使用Matplotlib绘制直方图,观察数据分布情况。

# 假设这是从生产线上收集到的零件直径数据
diameter_data = np.array([...])  # 这里省略具体数据

# 绘制直方图
plt.hist(diameter_data, bins=20, normed=0, facecolor="green", edgecolor="black", alpha=0.7)

# 设置上下规格限
plt.axvline(x=9.5, color='r', linestyle='--', label='LSL')
plt.axvline(x=10.5, color='r', linestyle='--', label='USL')

# 显示横轴标签
plt.xlabel("直径(mm)")

# 显示纵轴标签
plt.ylabel("频数")

# 显示图标题
plt.title("零件直径分布直方图")

plt.legend()
plt.show()

  1. 分析结果:观察直方图,我们可以得到以下信息:
  • 数据分布是否集中
  • 是否有异常值
  • 是否有偏向性(左偏或右偏)
  1. 计算过程能力指数:为了更定量地评估过程能力,我们可以计算Cp和Cpk值。

Cp(过程能力)的计算公式为:
[ Cp = \frac{T}{6\sigma} = \frac{USL - LSL}{6\sigma} ]

Cpk(过程能力指数)的计算公式为:
[ Cpk = \min\left(\frac{USL - \mu}{3\sigma}, \frac{\mu - LSL}{3\sigma}\right) ]

其中:

  • T:公差范围
  • σ:标准偏差
  • USL:上规格限
  • LSL:下规格限
  • μ:平均值

通过计算Cp和Cpk,我们可以评估过程是否稳定,以及是否需要进行调整。

03

操作步骤与注意事项

  1. 数据收集:选择合适的抽样方法,如随机抽样、系统抽样等。样本量一般建议在20-25组以上。

  2. 分组原则:合理选择分组数和组距。一般建议分组数在5-20之间,具体根据数据量和分布情况确定。

  3. 正态性检验:在计算Cp和Cpk之前,需要检验数据是否符合正态分布。可以使用Shapiro-Wilk检验等方法。

  4. 结果解读:结合直方图和统计指标,综合分析过程能力。注意Cpk值越大表示品质越好,一般要求Cpk≥1.33。

通过以上步骤,我们可以有效地利用直方图进行质量管理,及时发现和解决质量问题,提高生产效率和产品质量。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号