Table of contents
本教程展示了在Excel中绘制直方图的3种不同技术--使用Analysis ToolPak的特殊直方图工具、FREQUENCY或COUNTIFS函数,以及PivotChart。
虽然每个人都知道在Excel中创建图表是多么容易,但制作直方图通常会引起一堆问题。 事实上,在最近的Excel版本中,创建直方图是几分钟的事,可以通过各种方式完成--使用分析工具箱中的特殊直方图工具、公式或老式的好的PivotTable。 在本教程中,你会发现详细的对每种方法的解释。
什么是Excel中的柱状图?
维基百科对直方图的定义如下:" 直方图是数字数据分布的一种图形表示。 " 完全正确,而且......完全不清楚 :) 好吧,让我们以另一种方式思考直方图。
你曾经用条形图或柱形图来表示一些数字数据吗? 我打赌每个人都做过。 直方图是柱形图的一种特殊用途,其中每一列表示某一范围内元素的频率。 换句话说,直方图用图形显示连续的非重叠区间内元素的数量,或 箱子 .
例如,你可以做一个直方图来显示温度在61-65、66-70、71-75等度之间的天数,金额在100-199美元、200-299美元、300-399美元之间的销售数量,考试成绩在41-60、61-80、81-100之间的学生数量,等等。
下面的截图给出了一个Excel柱状图的概念。
如何使用分析工具箱在Excel中创建柱状图
分析工具箱是微软Excel的数据分析插件,从Excel 2007开始,所有现代版本的Excel都可以使用。 但是,这个插件在Excel启动时不会自动加载,所以你需要先加载它。
加载Analysis ToolPak插件
要将数据分析插件添加到你的Excel中,请执行以下步骤。
- 在Excel 2010 - 365中,点击 文件 > 选项 在Excel 2007中,点击Microsoft Office按钮,然后点击 Excel选项 .
- 在 Excel选项 对话框,点击 附加元件 在左边的侧栏,选择 Excel插件 在 管理箱 ,并点击 进展 按钮。
- 在 附加元件 对话框,选中 分析工具包 框,并点击 认可 以关闭该对话框。
如果Excel显示一条信息,说你的计算机上目前没有安装Analysis ToolPak,请点击 是 来安装它。
现在,分析工具箱已经加载到你的Excel中,它的命令可以在 分析报告 的小组。 数据 标签。
指定Excel直方图的bin范围
在创建柱状图之前,还有一个准备工作要做--在一个单独的列中添加分选区。
箱子 是代表你要将源数据(输入数据)分组的区间的数字。 这些区间必须是连续的、不重叠的,而且通常大小相等。
Excel的 柱状图 该工具根据以下逻辑将输入的数据值纳入分栏。
- 如果一个值大于最低界限,等于或小于该仓的最大界限,则该值被包含在某一仓中。
- 如果你的输入数据包含任何大于最高bin的值,所有这些数字都将包括在 更多类别 .
- 如果你不指定bin范围,Excel将在你的输入数据范围的最小值和最大值之间创建一组均匀分布的bins。
考虑到上述情况,在另一栏中输入你想使用的仓位号。 仓位必须在 升序 ,而你的Excel直方图的bin范围应该限制在输入数据范围内。
在这个例子中,我们在A栏有订单号,B栏有估计交货期。 在我们的Excel直方图中,我们想显示1-5天、6-10天、11-15天、16-20天和20天以上交货的项目数量。 因此,在D栏,我们输入5-20的bin范围,增量为5,如下图所示。
使用Excel的分析工具箱制作柱状图
在启用分析工具箱并指定分栏的情况下,执行以下步骤,在你的Excel工作表中创建一个直方图。
- 关于 数据 选项卡,在 分析报告 组,点击 数据分析 按钮。
- 在 数据分析 对话框,选择 柱状图 并点击 认可 .
- 在 柱状图 对话窗口,执行以下操作。
- 指定 输入范围 和 料仓范围 .
要做到这一点,你可以把光标放在框中,然后简单地用鼠标选择工作表上的相应范围。 或者,你可以点击 折叠对话 按钮 ,选择工作表上的范围,然后点击 折叠对话 再一次按下按钮,返回到 柱状图 对话框。
提示:如果你在选择输入数据和仓位范围时包括了列标题,选择 标签 复选框。
- 选择 输出选项 .
要把直方图放在同一张纸上,请点击 输出范围 ,然后进入输出表的左上角单元格。
See_also: 在谷歌表格中按条件过滤,并与过滤器视图一起工作要把输出表和直方图粘贴到一个新的工作表或新的工作簿中,选择 新的工作表Ply 或 新工作手册 分别。
最后,选择任何一个附加选项。
- 要在输出表中按频率降序显示数据,选择 帕累托 (排序直方图)框。
- 要在你的Excel直方图图表中包括一个累积百分比线,选择 累计百分比 箱子。
- 要创建一个内嵌的直方图图表,选择 图表输出 箱子。
在这个例子中,我配置了以下选项。
- 指定 输入范围 和 料仓范围 .
- 而现在,请点击 认可 ,并审查输出表和直方图图。
提示:为了改善直方图,你可以用 "直方图 "代替默认的 "直方图"。 箱子 和 頻率 此外,你还可以用更有意义的坐标轴标题、自定义图表图例等来设计、布局和格式选项。 图表工具 更多细节,请参见如何定制和改进Excel直方图。
正如你刚才所看到的,使用分析工具箱在Excel中制作直方图是非常容易的。 然而,这种方法有一个很大的局限性--嵌入的直方图图表是 静电 也就是说,每次输入数据发生变化时,你都需要创建一个新的直方图。
要做一个 可自动更新 柱状图 你可以使用Excel函数或建立一个PivotTable,如下图所示。
如何在Excel中用公式制作柱状图
在Excel中创建直方图的另一种方法是使用FREQUENCY或COUNTIFS函数。 这种方法的最大优点是,你不必在输入数据的每次变化中重新做直方图。 与普通的Excel图表一样,你的直方图将 自动更新 一旦你编辑、添加新的或删除现有的输入值,就会有一个新的输入值。
首先,将你的源数据安排在一列(本例中为B列),并在另一列(D列)中输入仓号,如下面的截图。
现在,我们将使用频率(Frequency)或计数(Counttifs)公式来计算有多少数值属于指定的范围(bins),然后,我们将根据该汇总数据绘制柱状图。
使用Excel的FREQUENCY函数创建柱状图
在Excel中创建直方图的最明显的函数是FREQUENCY函数,它返回属于特定范围的数值的数量,忽略文本值和空白单元格。
FREQUENCY函数的语法如下。
FREQUENCY(data_array, bins_array)- Data_array - 一组你想计算频率的值。
- Bins_array - 一个用于分组数值的bin数组。
在这个例子中,data_array是B2:B40,bin array是D2:D8,所以我们得到以下公式。
=frequency(b2:b40,d2:d8)
请记住,FREQUENCY是一个非常特殊的功能,所以要遵循这些规则使其正常工作。
- Excel频率公式应输入为 多单元阵列公式 首先,选择一个你想输出频率的相邻单元格区域,然后在公式栏中输入公式,并按Ctrl + Shift + Enter完成。
- 建议多输入一个比仓位数更多的频率公式。 多出来的单元格是用来显示最高仓位以上的数值的。 为了清楚起见,你可以给它加上" 更多 ",就像下面的截图一样(但不要包括那个" 更多 "单元格在你的bins_array中!)。
比如说 柱状图 在分析工具箱的选项中,Excel的FREQUENCY函数返回大于前一个bin和小于或等于给定bin的值。 最后一个Frequency公式(在单元格E9中)返回大于最高bin的值的数量(即超过35天的交货天数)。
为了使事情更容易理解,下面的截图显示了分层(D列),相应的间隔(C列),和计算的频率(E列)。
注意:由于Excel FREQUENCY是一个数组函数,你不能编辑、移动、添加或删除包含该公式的单个单元格。 如果你决定改变仓位数量,你必须先删除现有公式,然后添加或删除仓位,选择一个新的单元格区域,并重新输入公式。
使用COUNTIFS函数制作柱状图
另一个可以帮助你计算频率分布以在Excel中绘制直方图的函数是COUNTIFS。 而在这种情况下,你需要使用3个不同的公式。
- 第一个单元格的公式 - 顶仓 (以下截图中的F2)。
=COUNTIFS($B$2:$B$40,"<="&$D2)
该公式计算B列中有多少数值小于D2单元格中的最小仓,即返回1-5天内交付的物品数量。
=COUNTIFS($B$2:$B$100,">"&$D8)
该公式计算B列中有多少数值大于D8的最高仓。
=COUNTIFS($B$2:$B$40,">"&$D2, $B$2:$B$40,"<="&$D3)
该公式计算B列中大于上述行中的bin和小于或等于同一行中的bin的数值的数量。
正如你所看到的,FREQUENCY和COUNTIFS函数返回相同的结果。
"你可能会问我:"使用三个不同的公式而不是一个公式的原因是什么? 基本上,你摆脱了多单元格数组公式,可以轻松地添加和删除单元格。
提示:如果你计划在未来增加更多的输入数据行,你可以在你的FREQUENCY或COUNTIFS公式中提供一个更大的范围,当你增加更多的行时,你将不必改变你的公式。 在这个例子中,源数据在B2:B40单元格中。 但你可以提供B2:B100甚至B2:B1000的范围,以备不时之需:) 例如,。
=FREQUENCY(B2:B1000,D2:D8)
根据汇总的数据做一个直方图
现在你有了一个用FREQUENCY或COUNTIFS函数计算的频率分布列表,创建一个通常的柱状图--选择频率,切换到 插入 选项卡,并点击2-D柱状图中的 图表 组。
条形图将被立即插入你的工作表中。
一般来说,你已经有了一个输入数据的直方图,尽管它肯定需要一些改进。 最重要的是,为了使你的Excel直方图易于理解,你需要用你的bin号码或范围来取代由序列号代表的水平轴的默认标签。
最简单的方法是输入 范围 在有频率公式的左边一列中,选择两列----。 范围 和 频率 - 这些范围将自动用于X轴标签,如下面的截图所示。
提示:如果Excel将你的时间间隔转换为日期(如 1-5 可以自动转换为 1月5日 ),然后输入带有一撇的间隔('),如 '1-5 如果你希望你的Excel直方图的标签显示为 仓位数 ,也要用前面的撇号来输入,例如: '5 , '10 撇号只是将数字转换为文本,在单元格和直方图上是看不见的。
如果你没有办法在工作表上输入所需的直方图标签,那么你可以直接在图表上输入这些标签,与工作表数据无关。 本教程的最后部分解释了如何做到这一点,并展示了可以对Excel直方图进行的其他几个改进。
如何用PivotChart制作柱状图
正如你在前面两个例子中注意到的,在Excel中创建直方图最耗时的部分是计算每个仓内的项目数量。 一旦源数据被分组,Excel直方图的绘制就相当容易了。
你可能知道,在Excel中自动总结数据的最快方法之一是PivotTable。 因此,让我们开始吧,为以下数据绘制直方图 交付 数据(B栏)。
1.创建一个透视表
要创建一个透视表,请到 插入 标签> 桌子 组,并点击 数据透视表(PivotTable 然后,移动 交付 字段到ROWS区域,而另一个字段( 订单号 在这个例子中)到VALUES区域,如下面的截图所示。
如果你还没有接触过Excel数据透视表,你可能会发现这个教程很有帮助:Excel数据透视表初学者教程。
2.通过计数来总结价值
默认情况下,PivotTable中的数字字段会被求和,我们的 订单号 列,这完全没有意义 :) 总之,因为对于直方图来说,我们需要一个计数而不是总和,右键单击任何顺序号单元格,并选择 通过以下方式总结价值 > 计数 .
现在,你更新的PivotTable应该是这样的。
3.创建区间(bins)
下一步是创建区间,或者说仓位。 为此,我们将使用 分组 右键单击下面的任何单元格 行标签 在你的数据透视表中,选择 集团 ...
在 分组 对话框,指定起始值和结束值(通常Excel会根据你的数据自动输入最小值和最大值),并在下面输入想要的增量(间隔长度)。 通过 箱子。
在这个例子中,最短的交货时间是1天,最长的是-40天,增量被设定为5天。
单击 "确定",你的数据透视表将显示指定的时间间隔。
4.绘制柱状图
还剩下最后一步--绘制柱状图。 要做到这一点,只需通过点击柱状透视图创建一个 枢轴图 关于 分析一下 标签在 透视表工具 组。
而默认列PivotChart将直接出现在你的工作表中。
现在,用一些修饰的方法来美化你的直方图。
- 删除图例的方法是:点击 图表元素 按钮 并将蜱虫从 传说 或者,选择直方图上的图例并按下 删除 键盘上的键。
- 替换默认的 共计 用更有意义的东西做标题。
- 可以选择在 图表样式 的小组。 透视图工具 > 设计 标签。
- 通过点击删除图表按钮 领域按钮 关于 透视图工具 > 分析一下 选项卡,在 显示/隐藏 组。
此外,你可能想实现一个传统的直方图外观,其中 杆件相互接触 你将在本教程的下一部分,也就是最后一部分中找到关于如何做到这一点的详细指导。
定制和改进你的Excel直方图
无论你是使用分析工具箱、Excel函数还是PivotChart创建直方图,你可能经常想根据自己的喜好定制默认的图表。 我们有一个关于Excel图表的专门教程,解释了如何修改图表标题、图例、坐标轴标题,改变图表颜色、布局和样式。 在这里,我们将讨论几个专门针对Excel的主要定制方法柱状图。
改变Excel柱状图上的轴标签
在Excel中用分析工具箱创建直方图时,Excel会根据你指定的仓位号添加横轴标签。 但是,如果在你的Excel直方图上,你想显示范围而不是仓位号呢? 为此,你需要通过执行以下步骤改变横轴标签。
- 右键单击X轴中的类别标签,并单击 选择数据...
移除棒子之间的间距
在Excel中制作直方图时,人们往往希望相邻的柱子能够相互接触,没有任何空隙。 这一点很容易解决。 要消除柱子之间的空隙,只需遵循以下步骤。
- 选择条形图,右键单击,并选择 格式化数据系列...
瞧,你已经绘制了一个柱状图,柱状图相互接触。
然后,你可以通过修改图表标题、坐标轴标题和改变图表风格或颜色来进一步美化你的Excel直方图。 例如,你的最终直方图可能看起来像这样。
这就是在Excel中绘制直方图的方法。 为了更好地理解本教程中讨论的例子,你可以下载带有源数据和直方图图表的Excel直方图样本表。 感谢你的阅读,希望下周能在我们的博客上见到你。