我们平时经常遇到包含上下区间的数据,如最高和最低气温及温差、最大和最小销量及差距等。比如图1所示的是某地的每月最低和最高气温,现在需要通过图表来展示最低和最高气温及温差数据,直接使用Excel 2019内置的堆积柱形图是无法正确地表达其含义的,而且从图表中可以看出显示的温度值明显是错误的,如7月份的最高气温成了62度(图1)。那么怎样才能制作准确、直观、鲜明的区间柱形图呢?下面笔者就为大家一一道来。
○另辟蹊径 使用涨/跌柱线表达区间数据
Excel 2019提供涨/跌柱线,利用它可以很好地对区间数据进行表达。对于类似上述的例子,首先选中需要制作图表的数据,接着依次点击“插入→图表→折线图”,然后切换到“图表工具→设计→添加图表元素→涨/跌柱线→涨/跌柱线”(图2)。
接下来把折线图隐藏起来,让图表只显示温差柱形图。依次选中最低气温和最高气温的折线,切换到“图表工具→格式→形状轮廓→无轮廓”即可。继续选中涨/跌柱线,依次点击“图表工具→格式→形状填充→黄色”,即可通过涨/跌柱表示最高和最低气温(图3)。
然后依次点击“图表工具→设计→添加图表元素→数据标签→右侧”,在涨/跌柱上添加温度数据。接着右击图表并选择“设置绘图区格式→水平坐标轴”,在右侧的窗格中选择“坐标轴选项→标签”,将“标签位置”设置为“低”,同时将纵坐标的最大值设置为40,并对图表背景等选项进行适当的设置。这样图表中涨/跌柱的上下缘即表示区间温度值,涨/跌柱的长短则表示温差数值,可以更清晰准确地看到7月的气温是最高的,而4月的温差则最大(图4)。
○用好辅助列 区间数据轻松表达
Excel内置的涨/跌柱图只能生成纵向排列的图表,如果横坐标轴中的名称较长,名称就会变为斜向排列,查看起来较为不便。而且涨/跌柱图是一个相对独立的整体,我们无法对每个柱形图进行更多的设置,比如将负值(如本例中的零下温度)填充为更醒目的绿色,或者将气温最高的七月的柱形单独填充为红色。不过从上述的制作过程可以看到,涨/跌柱图实际上就是最高和最低气温相减得到的部分柱形图,因此我们可以添加辅助列,使用堆积柱形图的方法进行制作,这可以有效地避免上述的不足。
定位到B1单元格,右击并选择“插入”,插入一个标题为“零下温度”的辅助列B。接着定位到B2单元格并输入公式“=IF(C2<0,C2,"")”,下拉填充公式到B13单元格。该公式表示使用IF函数对C列中的最低气温进行判断,如果气温小于0°则显示C列中的数值,否则显示为空。操作同上,插入辅助列D,在D2单元格中输入公式“=IF(C2<0,E2,E2-C2)”,下拉填充公式到D13单元格(图5)。
选中A1:E13区域,依次点击“插入→图表→堆积柱形图”,从插入的柱形图中可以看到,柱形图实际上是由零下温度、最低气温、温差、最高气温这四组数据组成的。如果包含零下温度,那么温差柱形图就由蓝色的柱形和灰色的柱形组成,否则只有灰色的柱形,这样我们只要将其中的黄色和红色的柱形设置为无填充,即可实现类似上述的涨/跌柱效果(图6)。
选中黄色的数据条,依次点击“图表工具→设计→添加图表元素→数据标签→轴内侧”,添加最高气温的数据。继续选中红色的数据条,依次点击“图表工具→设计→添加图表元素→数据标签→数据标签内”,添加最低气温的数据。由于在这里我们插入了辅助列数据,因此可以很方便地对每段柱形进行设置。比如在图表中选中蓝色的柱形,依次点击“图表工具→格式→形状填充→绿色”,将零下温度数值填充为绿色。接着将黄色和红色的柱形设置为无填充,4月柱形填充为棕色(表示温差最大),7月柱形填充为红色(表示气温最高),这样通过颜色对温度数据进行标识,看起来非常直观(图7)。
如果横坐标中的数据名称较长,如A2单元格中的数据是“XX市1月气温数据统计”字样,可以右击该图表并选择“更换图表类型”,选择“堆积条形图”,将图表转换为横向显示,这样更便于查看(图8)。