堆积折线图线条颜色与图例不匹配

堆积折线图线条颜色与图例不匹配

我制作了一个交互式图表,根据选中的 ActiveX 复选框显示不同的数据。我创建了一些表格,这些表格通过使用一些嵌套的 IF 语句显示不同的数据,例如:

=IF('Sheet1!$O$25;SUM(AV$2:AV8)/B8;IF('Sheet1'!$O$22;SUM(AK8;AL8;AT8;AU8);IF('Sheet1'!$P$22;AM8;IF('Sheet1'!$P$25;AQ8;NA()))))

Sheet1 中的 O 列从复选框中获取真值或假值。我可以在图表中显示三个不同的值。

现在,如果我尝试将图表类型从普通线更改为堆叠线,并且仅选中第一个和第三个复选框,则实际图形线和图例的颜色不一致。我将线条颜色设置为自动。看起来图表中的第一条线始终为蓝色,第二条线始终为绿色,第三条线始终为红色。

因此,如果我说“仅显示第 1 行和第 3 行”,图例会为第二个数据留出空白,表示数据 3 (PM) 为红色,但图表中的实际线为绿色。我仔细检查了一下,绿线确实是“PM”数据点。

我是不是做错了什么?是 Excel 中的一个错误,还是堆积折线图实际上是这样设计的?

参见此处的堆叠线

编辑:

您可以简单地复制此问题:

  • 在 A 列中粘贴随机值,在下面的示例中,我使用了 3
  • 在 B 列中粘贴随机值,在下面的示例中,我使用了 2
  • 在 C 列中粘贴随机值,在下面的示例中我使用了 1

现在制作一个堆积图。选择 B 列并清除值。

[参见此处的示例

如您所见,图例显示绿色和蓝色包含数据,但线条却是绿色和红色!

答案1

好的,我明白了这里发生了什么。由于这是一个堆积线图,任何不是最后一行但所有值为零或 NA() 的线都将位于第 3 行之上。通过在 VBA 中主动抑制无值线的可见性可以解决这个问题。我还没有找到任何其他解决方案来解决此行为。

答案2

以防有人对此更感兴趣 - 因为我没有找到更好的地方,也没有在整个互联网上找到答案:

使用手动图表设置(没有 VBA 代码)时,我也遇到了同样的问题。事实证明,图例的每个元素都可以独立于实际系列进行格式化 (*)。我将相应的图例元素符号(线条颜色)格式化为之前为系列选择的(自定义)线条颜色(但该颜色在图例中无法正确显示)。

当我后来改变系列的颜色时,从那时起,这种变化就神奇地正确地传递到了图例中。

我的假设是,尽管系列格式已自定义,但图例元素有时会保持其“线条样式”为“自动”(这里没有正确的英语本地化)。一旦手动将元素设置为“非自动”,它就会开始正确地遵循系列格式的(未来)变化(?)

(*)我的另一个假设是,微软竭尽全力用混合数据图表欺骗你的(他们自己的??)CEO(或者我找不到允许独立图例格式的更好理由……:))

答案3

文件 > 选项 > 高级 > 图表>

  • 取消选择“属性遵循当前工作簿的图表数据点”

  • 取消选择“所有新工作簿的属性遵循图表数据点”

相关内容