[英]SSRS Color Gradient
我已經能夠弄清楚如何使某些值成為我想要的某些 colors。 但是,我真的很想能夠創建一個顏色漸變,這樣每個值之間就可以逐漸變化。
0 = 白色
在 1 到 15 之間從白色到綠色,
16 到 25 之間從綠色到黃色的漸變,
以及從黃色到紅色的漸變,介於 26 和 35 之間,
任何高於 35 的都是紅色的。
這是我在背景填充表達式中的代碼:
=SWITCH(
(Sum(Fields!Total_Transaction_Count.Value) / CountDistinct(Fields!TransUserNumber.Value)) = 0, "White",
((Sum(Fields!Total_Transaction_Count.Value) / CountDistinct(Fields!TransUserNumber.Value)) >= 1 and
(Sum(Fields!Total_Transaction_Count.Value) / CountDistinct(Fields!TransUserNumber.Value)) <= 15), "Green",
((Sum(Fields!Total_Transaction_Count.Value) / CountDistinct(Fields!TransUserNumber.Value)) >= 16 and
(Sum(Fields!Total_Transaction_Count.Value) / CountDistinct(Fields!TransUserNumber.Value)) <= 25), "Yellow",
((Sum(Fields!Total_Transaction_Count.Value) / CountDistinct(Fields!TransUserNumber.Value)) >= 26 and
(Sum(Fields!Total_Transaction_Count.Value) / CountDistinct(Fields!TransUserNumber.Value))) <= 35, "Orange",
(Sum(Fields!Total_Transaction_Count.Value) / CountDistinct(Fields!TransUserNumber.Value)) > 35, "Red")
看看我不久前寫的這個答案。 這是一個圖表,但原理應該是一樣的。
基本思想是計算 SQL 中的顏色,然后用它來設置 SSRS 中的顏色屬性
將其全部保存在 SSRS 中
如果您想將其保留在報告中,您可以編寫 function 來進行計算。
對於一個非常簡單的紅色漸變,它可能看起來像這樣..
Public Function CalcRGB (minVal as double, maxVal as double, actualVal as double) as String
Dim RedValue as integer
Dim GreenValue as integer
Dim BlueValue as integer
RedValue = ((actualVal - minVal) / (maxVal - minVal)) * 256
GreenValue = 0
BlueValue = 0
dim result as string
result = "#" & RedValue.ToString("X2") & greenValue.ToString("X2") & BlueValue.ToString("X2")
Return result
End Function
在這個 function 中,我將綠色和藍色設置為 0,但這些也可以根據要求進行計算。
要將此 function 用作背景色,請將 Background Color 屬性設置為類似
=Code.CalcRGB(
MIN(Fields!myColumn.Value),
MAX(Fields!myColumn.Value),
Fields!myColumn.Value
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.