SSRS:堆积条形图的类别轴的自定义颜色

问题描述 投票:0回答:1

我有一个堆积条形图,只有5个类别(但类别的价值每年都在变化,这是一个滑动的5年窗口)。

我成功地将酒吧定制为我想要的颜色。

但现在我希望每个类别的标签与自定义条形颜色的颜色相同。

有没有办法做到这一点?

reportbuilder ssrs-2016 ssdt-bi
1个回答
1
投票

您可以使用自定义代码。

在报告属性中|代码,您可以粘贴以下代码:

Private colourPalette As String() = {"#418CF0", "#FCB441", "#DF3A02", "#056492", "#BFBFBF", "#1A3B69", "#FFE382", "#129CDD", "#CA6B4B", "#005CDB", "#F3D288", "#506381", "#F1B9A8", "#E0830A", "#7893BE"}
Private count As Integer = 0
Private mapping As New System.Collections.Hashtable()

Public Function GetColour(ByVal groupingValue As String) As String

    If mapping.ContainsKey(groupingValue) Then
                    Return mapping(groupingValue)
    End If

    Dim c As String = colourPalette(count Mod colourPalette.Length)

    count = count + 1

    mapping.Add(groupingValue, c)

    Return c

End Function

这将为您提供柔和的调色板选项。如果您想要其他颜色,只需将十六进制颜色代码替换为您选择的值。

要使用它,只需使用以下表达式:

=Code.GetColour(Fields!Thingy.Value)

在您的系列和标签填充表达式上使用此选项。这将确保两者都显示相同的颜色。如果您有多个具有相同值的图形,则还将确保多个图形中的相同数据系列始终具有相同的颜色。

© www.soinside.com 2019 - 2024. All rights reserved.