圆环图必须有8个切片,每个切片的颜色必须与工作表中的值对应,如下图1所示。
图1
每个切片的颜色显示在图表左侧的工作表单元格区域内。根据单元格包含的字母“R”、“Y”或“G”将它们填充为红色、黄色和绿色。这在工作表中很容易做到,但在图表中没有像这样更改颜色的机制。
可以使用VBA来实现,但本文使用了工作表公式。
虽然这样的条件圆环图必须有八个可见的切片,但实际数量是这个数量的三倍,三分之二将被隐藏。示例数据如下图2所示。
图2
选择下方单元格区域中添加一个标题为“一”的列,其每个单元格的值均为1。然后,插入一个圆环图,如下图3所示。可以看到,“切片”列和“颜色”列用于类别和标签,而“一”列用于圆环切片值。图例中显示了类别标签,圆环切片大小相同,均为圆环周长的1/24。
图3
双击圆环切片,打开“设置数据系列格式”窗格,将“系列选项”中的“圆环图内径大小”由默认的75%修改为50%。单击图表右侧上方的加号,选取“数据标签”复选框。然后,双击任一标签,打开“设置数据标签格式”窗格,在“标签选项”下,选取“类别名称”,取消“值”选项,结果如下图4所示。
图4
下面,先将图表所有切片颜色变成灰色,以方便在填充颜色时查看位置。单击选择所有切片,填充颜色为灰色,如下图5所示。
图5
接着,逐切片填充颜色。在要着色的切片上单击两次选择该切片,然后填充相应的颜色,如下图6所示。
图6
我们可以使用技巧来快速填充这24个切片的颜色。单击两次选择第一个切片,填充红色,再按住Ctrl键的同时单击右箭头键三次,选择下一个要填充红色的切片,按F4键填充红色,重复这个过程使所有应该填充红色的切片填充红色。同样,填充黄色和绿色切片。结果如下图7所示。
图7
在更改图表数据源之前,必须应用“属性采用图表数据点”技巧。这意味着,如果自定义了绘制的数据,然后更改数据以便重新格式化元素(图表系列或数据标签)引用不同的单元格区域,那么部分或全部格式将恢复为其默认值。
单击左上角的“文件”,选择“选项”命令,在“Excel选项”对话框中单击左侧的“高级”选项卡,在右侧找到“图表”部分,你会看到“属性采用所有新工作簿的图表数据点”和“属性采用当前工作簿的图表数据点”选项,如下图8所示。
图8
取消选取“属性采用当前工作簿的图表数据点”前的复选框,如下图9所示。
图9
目前的图表已完全格式化了,我们只需要创建公式来根据上方数据显示和隐藏切片。
在下方的数据右侧添加两列,输入标题“标签”和“值”。现在,只是在单元格区域F13:F36中输入公式:
=IF(INDEX(C3:C10,B13)=C13,1,0)
结果由0和1组成的一列数字,基于单元格区域C3:C10中指定的颜色,每个切片数字都有2个0和1个1。
单击图表并注意工作表中突出显示的单元格区域。拖动蓝色区域的边缘,使突出显示包括“值”列而不是“一”列。如下图10所示。
图10
注意,现在圆环图的八个扇区中的每个扇区只有一个可见切片,并且这些切片根据单元格区域C3:C10中的值着色。但是,有一堆我们不想要的重叠标签。
这些标签对应于仍在图表中的隐藏切片。我们需要另一个公式来让我们只显示可见的切片编号。在单元格区域E13:E36中输入公式:
=IF(F13=1,B13,"")
现在选择饼图切片(全部或一个),拖动紫色高亮区域的任意角使其占据一列,然后拖动紫色高亮的边缘使其包括“标签”列。此时,无关的标签消失了,我们只能看到切片编号。如下图11所示。
图11
这就是我们创建的条件圆环图。
你可以选择下方的数据区域并将其拖到图表的一侧,甚至可以将其剪切并粘贴到另一个工作表上,而是将图表移近它间接反映的数据区域,如下图12所示。
图12
当在工作表中更改每个切片的颜色时,图表也相应地反映了该变化,如下图13所示。
图13
再次修改工作表中的颜色,图表也相应更新,如下图14、图15所示
图14
图15
注:本文学习整理自peltiertech.com,供学习参考。