跳至主要内容

Kutools for Office — 一套工具,五种功能。事半功倍。

如何在 Excel 中创建正态分布图模板?

Author Kelly Last modified

正态分布图(也称为钟形曲线或高斯分布在统计学中)是一种广泛使用的图表,用于描述数据分布情况,其中大多数值聚集在平均值附近,突出显示不同结果的概率。曲线的最高点代表最可能发生的事件。这类图表常用于质量控制、考试成绩分析、商业绩效评估等领域,因为它们能够直观地展现观测值的分布和可能性。本文将逐步指导您如何在 Excel 中使用自己的数据集创建正态分布图,并进一步引导您如何将其保存为可重复使用的图表模板以供未来分析使用。


在 Excel 中创建正态分布图并保存为图表模板

在 Excel 中创建正态分布图是一个多步骤的过程,但一旦设置完成,您可以针对不同数据集自定义图表,或将设计保存下来以备重复使用。此解决方案为您提供对数据、计算方法以及视觉格式化的完全控制——非常适合需要精确且可定制的图表进行深入数据分析的情况。

优点: 灵活性最大;所有步骤清晰可见,便于学习或记录需求。
缺点: 需要手动计算步骤,并仔细注意公式。

请按照以下详细步骤操作:

1. 打开一个新的 Excel 工作簿,并在 A1:D1 范围内创建列标题,如下图所示。推荐的标题是: 数据, 分布, 平均值, 标准差.

2. 在“数据”列下输入您的源数据。为了获得最佳的正态分布图效果,您的数据应覆盖较广的范围,并且数量足够多(建议至少 30-50 个值)。在我们的示例中,我们在 A2:A92 中输入从 10 到 100 的值。
为确保数据从小到大排列,请选择 A 列中的数值单元格,然后点击 数据 > 排序 A 到 Z. 这有助于正确绘制曲线。
a screenshot of sorting the data you entered in a column

3. 计算支持性统计数据:

(1) 在 C2 单元格中输入以下公式以计算数据集的算术平均值(均值):

=AVERAGE(A2:A92)

此函数取所选范围的平均值。确保您的范围与实际数据匹配,或者根据需要调整。

(2) 在 D2 单元格中计算标准差,它用于确定正态分布图的宽度:

=STDEV(A2:A92)

注意:在较新的 Excel 版本中,可能会建议使用 =STDEV.S() 来计算样本标准差。

(3) 在 B2 单元格中,为每个数据点生成概率分布。根据 Excel 版本的不同,使用以下公式之一:

A. 对于 Excel 2010 或更高版本:

=NORM.DIST(A2,$C$2,$D$2,FALSE)

B. 对于 Excel 2007:

=NORMDIST(A2,$C$2,$D$2,FALSE)

在 B2 单元格中输入适当的公式。然后拖动自动填充句柄向下填充公式至所有数据行(在此示例中为 B92)。这将为每个原始数据点创建分布值(正态分布图)。

注意:如果您的数据集涵盖不同的范围,请相应更新公式中的所有单元格引用。此外,公式应用错误通常由范围不正确或单元格错位引起,因此请仔细检查引用。
a screenshot showing the formulas and their corresponding results

4. 突出显示“数据”和“分布”两列(例如,范围 A2:B92)。转到 插入 > 散点图(或在 Excel 2013+ 中散点图和甜甜圈图)> 带平滑线和标记的散点图。这种图表类型最适合可视化钟形图案。

a screenshot of selecting a Scatter with Smooth Lines and Markers chart for the data range

现在,图表会显示您的正态分布图,类似于以下示例:
a screenshot showing a bell cyrve is created

为了清晰和美观,您可能希望删除不必要的图表元素,例如网格线、轴标签或图例,以突出正态分布形状。右键单击您希望删除的元素,然后选择“删除”或从图表格式选项中取消选中它。

要将此图表与其他数据一起重新使用,您应该将其保存为模板:

5. 将正态分布图保存为图表模板:
A. 在 Excel 2013 或更高版本中:右键单击已完成的正态分布图,选择 另存为模板 从菜单中。
B. 在 Excel 2007/2010 中:单击图表以启用 图表工具,然后转到 设计 > 另存为模板.
这允许您在未来更快地为其他数据集创建新的正态分布图,而无需重复所有格式化步骤。
a screenshot showing how to save the bell curve chart as a chart template

6. 当“保存图表模板”对话框出现时,在 文件名 字段中指定一个可识别的名称(例如,“BellCurveTemplate”),然后点击 保存. 该模板存储在默认的“模板”文件夹中,通常可以在新工作簿的图表选择对话框中访问。
a screenshot of naming the template them saving

故障排除提示:
- 如果模板保存选项不可用,请确保已选择图表,并且您具有在默认模板文件夹中写入文件的适当权限。
- 如果未来的图表不符合您保存的正态分布图,请仔细检查输入数据是否完整且格式正确。


使用强大的工具快速创建正态分布图

如果您想绕过手动计算和复杂公式,Kutools for Excel 提供了一个正态分布 / 钟形曲线功能,只需几次点击即可创建专业外观的正态分布图。当您处理不熟悉的数据或需要立即统计可视化而无需深入了解 Excel 函数时,这种方法尤其有价值。

优点: 大幅减少创建正态分布图或组合图表所需的时间和技能。包含额外选项,例如频率直方图和组合图表,以实现更全面的分析。
缺点: 需要安装 Kutools for Excel。

Kutools for Excel:包含超过 300 种适用于 Excel 的便捷工具。免费试用 30 天,无任何限制。立即获取!

1. 选择包含数据值的范围。为获得最佳结果,请确保数据为数字且不包含空白单元格或文本。点击 Kutools > 图表 > 数据分布 > 正态分布 / 钟形曲线

2. 在弹出的对话框中,选择 正态分布图 选项,位于 选择 部分。点击 确定 以创建图表。

此对话框还允许您:
(1) 可选地输入图表标题以立即标注。
(2) 创建频率直方图,仅勾选 频率直方图.
(3) 通过勾选两个选项,在一个视图中组合直方图和正态分布图 选择.

如果仅选择 正态分布图 选项:
a screenshot of the bell curve when only the Normal Distribution Chart option is checked

如果同时选择 正态分布图频率直方图 以实现组合效果:
of the bell curve when both Normal Distribution chart and Frequency histogram chart options are checked

注意事项:
- 确保数据范围内只包含有效的数值条目。
- 如果生成的图表未如预期显示,请检查数据错误或范围不匹配。

与手动解决方案相比,使用 Kutools for Excel 是快速且一致的结果的理想选择,尤其是在制作报告或演示文稿时可以最小化努力。


VBA:通过宏自动生成正态分布图

对于高级用户或自动化重复报告的人来说,简单的 VBA 宏可以快速从用户定义的参数生成正态分布图数据并自动绘制图形。这对于处理变化的数据或需要一致格式的频繁报告特别有帮助。

优点: 可以自动完成计算和图表创建;适合批量处理。
缺点: 需要一些宏的熟悉程度,并可能需要安全权限来运行 VBA 脚本。

  1. 准备您的数据。
    如果您已经有数据集(例如,在 A2:A92 范围内),请使用 Excel 公式计算平均值、标准差、范围起始/结束:
    获取平均值:
    =AVERAGE(A2:A92)
    获取标准差:
    =STDEV.P(A2:A92)
    获取范围起始:
    =Mean-3*Standard Deviation
    由于平均值在 B2,标准差在 C2,此公式应为:=B2-3*C2
    获取范围结束:
    =Mean+3*Standard Deviation
    由于平均值在 B2,标准差在 C2,此公式应为:=B2+3*C2
    对于步长,使用 1 或 0.1。步长值越小,曲线越平滑。
    a screenshot showing the data your prepared
  2. 运行代码
    1. Alt + F11 打开 VBA 编辑器。
    2. 插入一个新模块并粘贴 GenerateBellCurve 宏代码。
      Sub GenerateBellCurve()
      'Updated by Extendoffice 2025/07/24
          Dim xMean As Double
          Dim xStdev As Double
          Dim xStart As Double
          Dim xEnd As Double
          Dim xStep As Double
          Dim xRow As Integer
          Dim ws As Worksheet
          Dim chartObj As ChartObject
          Dim xValue As Double
      
          On Error Resume Next
          xTitleId = "KutoolsforExcel"
          
          Set ws = Worksheets.Add
          ws.Name = "BellCurve"
          
          xMean = Application.InputBox("Enter mean value:", xTitleId, 50, Type:=1)
          xStdev = Application.InputBox("Enter standard deviation:", xTitleId, 10, Type:=1)
          xStart = Application.InputBox("Enter range start (e.g. 10):", xTitleId, xMean - 3 * xStdev, Type:=1)
          xEnd = Application.InputBox("Enter range end (e.g. 100):", xTitleId, xMean + 3 * xStdev, Type:=1)
          xStep = Application.InputBox("Enter step interval (e.g. 1):", xTitleId, 1, Type:=1)
      
          ws.Range("A1:B1").Value = Array("X", "Normal Distribution")
          
          xRow = 2
          For xValue = xStart To xEnd Step xStep
              ws.Cells(xRow, 1).Value = xValue
              ws.Cells(xRow, 2).Value = WorksheetFunction.Norm_Dist(xValue, xMean, xStdev, False)
              xRow = xRow + 1
          Next
      
          Set chartObj = ws.ChartObjects.Add(Left:=300, Width:=500, Top:=10, Height:=300)
          With chartObj.Chart
              .ChartType = xlXYScatterSmooth
              .SetSourceData Source:=ws.Range("A1:B" & xRow - 1)
              .HasTitle = True
              .ChartTitle.Text = "Bell Curve"
              .Axes(xlCategory).HasTitle = True
              .Axes(xlCategory).AxisTitle.Text = "X"
              .Axes(xlValue).HasTitle = True
              .Axes(xlValue).AxisTitle.Text = "Probability Density"
          End With
      
          ws.Activate
      End Sub
    3. F5 运行宏。
  3. 在提示时输入所需的值
    宏将要求输入:
    1. 平均值:只需选择包含计算所得平均值的单元格。如果记得,也可以手动输入该值。
    2. 标准差:选择包含标准差的单元格。
    3. 范围起始:选择包含范围起始的单元格。
    4. 范围结束:选择包含范围结束的单元格
    5. 步长:输入 1 或 0.1。或者选择包含步长值的单元格。

完成后,将创建一个名为 BellCurve 的新工作表。

  • A 列包含 X 轴值(数据范围)。
  • B 列包含使用 NORM.DIST() 计算的概率密度值。
  • 一个平滑的散点图(正态分布图)将直接插入到工作表中。
    a screenshot showing the result

提示:如果发生错误,请重新检查参数输入,并确保您有权添加工作表和图表。在运行 VBA 脚本之前始终保存您的工作,因为宏可能无法撤消。


相关文章

最佳Office办公效率工具

🤖 Kutools AI 助手:以智能执行为基础,彻底革新数据分析 |代码生成 |自定义公式创建|数据分析与图表生成 |调用Kutools函数……
热门功能:查找、选中项的背景色或标记重复项 | 删除空行 | 合并列或单元格且不丢失数据 | 四舍五入……
高级LOOKUP多条件VLookup|多值VLookup|多表查找|模糊查找……
高级下拉列表快速创建下拉列表 |依赖下拉列表 | 多选下拉列表……
列管理器添加指定数量的列 | 移动列 | 切换隐藏列的可见状态 | 比较区域与列……
特色功能网格聚焦 |设计视图 | 增强编辑栏 | 工作簿及工作表管理器 | 资源库(自动文本) | 日期提取 | 合并数据 | 加密/解密单元格 | 按名单发送电子邮件 | 超级筛选 | 特殊筛选(筛选粗体/倾斜/删除线等)……
15大工具集12项 文本工具添加文本删除特定字符等)|50+种 图表 类型甘特图等)|40+实用 公式基于生日计算年龄等)|19项 插入工具插入二维码从路径插入图片等)|12项 转换工具小写金额转大写汇率转换等)|7项 合并与分割工具高级合并行分割单元格等)| ……
Kutools支持多种语言——可选择英语、西班牙语、德语、法语、中文等40多种语言!

通过Kutools for Excel提升您的Excel技能,体验前所未有的高效办公。 Kutools for Excel提供300多项高级功能,助您提升效率并节省时间。 点击此处获取您最需要的功能……


Office Tab为Office带来多标签界面,让您的工作更加轻松

  • 支持在Word、Excel、PowerPoint中进行多标签编辑与阅读
  • 在同一个窗口的新标签页中打开和创建多个文档,而不是分多个窗口。
  • 可提升50%的工作效率,每天为您减少数百次鼠标点击!

所有Kutools加载项,一键安装

Kutools for Office套件包含Excel、Word、Outlook和PowerPoint的插件,以及Office Tab Pro,非常适合跨Office应用团队使用。

Excel Word Outlook Tabs PowerPoint
  • 全能套装——Excel、Word、Outlook和PowerPoint插件+Office Tab Pro
  • 单一安装包、单一授权——数分钟即可完成设置(支持MSI)
  • 协同更高效——提升Office应用间的整体工作效率
  • 30天全功能试用——无需注册,无需信用卡
  • 超高性价比——比单独购买更实惠