Reporting services SSRS-条形图-条形色标取决于数值
我创建了一个条形图,它有1个数据系列和大约8个条形图,数值范围在0-100%之间。不久前,我发现了一个关于如何为同一数据系列中的列生成不同颜色的教程,并尝试对其进行修改以满足我当前的需要,但我做了一些错误的事情 同一数据系列中的不同颜色的工作原理如下: 我编辑报告代码以添加以下功能:Reporting services SSRS-条形图-条形色标取决于数值,reporting-services,colors,charts,scale,bar-chart,Reporting Services,Colors,Charts,Scale,Bar Chart,我创建了一个条形图,它有1个数据系列和大约8个条形图,数值范围在0-100%之间。不久前,我发现了一个关于如何为同一数据系列中的列生成不同颜色的教程,并尝试对其进行修改以满足我当前的需要,但我做了一些错误的事情 同一数据系列中的不同颜色的工作原理如下: 我编辑报告代码以添加以下功能: Private colorPalette As String() = {"Green", "Blue", "Red", "Orange", "Aqua", "Teal", "Gold", "RoyalBlue",
Private colorPalette As String() = {"Green", "Blue", "Red", "Orange", "Aqua", "Teal", "Gold", "RoyalBlue", "#A59D93", "#B8341B", "#352F26", "#F1E7D6", "#E16C56", "#CFBA9B"}
Private count As Integer = 0
Private mapping As New System.Collections.Hashtable()
Public Function GetColor(ByVal groupingValue As String) As String
If mapping.ContainsKey(groupingValue) Then
Return mapping(groupingValue)
End If
Dim c As String = colorPalette(count Mod colorPalette.Length)
count = count + 1
mapping.Add(groupingValue, c)
Return c
End Function
现在,我有了可公开访问的函数GetColor,我在图表上数据系列颜色的公式中使用了该函数(系列属性“填充”选项卡):
=code.GetColor(字段!proc\u choroby.Value)
我试图修改原始函数,根据序列值返回颜色。我写了这段代码,但显然是错的:
Public Function GetColor(ByVal value As Single) As String
Dim color As String
If value < 0.4 Then
color = "FFFFCC"
ElseIf value > 0.4 And value < 0.6 Then
color = "FFFF00"
ElseIf value > 0.6 And value < 0.7 Then
color = "FFCC00"
ElseIf value > 0.7 And value < 0.8 Then
color = "FF9900"
ElseIf value > 0.8 And value < 0.9 Then
color = "993300"
Else: color = "800000"
End If
Return color
End Function
公共函数GetColor(ByVal值为Single)作为字符串
像字符串一样暗淡的颜色
如果值<0.4,则
color=“FFFFCC”
ElseIf值>0.4,然后值<0.6
color=“FFFF00”
ElseIf值>0.6,然后值<0.7
color=“FFCC00”
ElseIf值>0.7,然后值<0.8
color=“FF9900”
ElseIf值>0.8,然后值<0.9
color=“993300”
其他:color=“800000”
如果结束
返回颜色
端函数
我刚刚发现错误,返回的颜色值在开头缺少“#”。其余部分完全按照它应该的方式工作
我的问题已经解决了,但我还是要发布这个问题,以防将来有人想使用这个问题,而我在谷歌上找不到任何关于这个问题的信息。非常欢迎您发布自己的问答。我只是将您的答案从问题中提取出来,放到您的答案中。另外,请标记您的答案,以帮助其他用户。15个小时后,我才能回答自己的问题。谢谢