DAX:如何根据文本值分配颜色十六进制代码?
DAX: how to assign color hex code based on text value?
我正在尝试根据文本本身更改文本列的颜色:
- 非常好:绿色
- 好:浅绿色
- 一般:黄色
- 差:橙色
- 非常糟糕:红色
我写了下面的 DAX 表达式:
RAG =
VAR Category = SELECTEDVALUE('Data'[Text])
RETURN SWITCH(Category = "VERY GOOD", "#41AC4C",
Category = "GOOD", "#AFC236",
Category = "FAIR", "#FFD400",
Category = "BAD", "#E95A1A",
Category = "VERY BAD", "#E42925")
但是在Power BI中应用这个函数returns报错信息:
错误信息:
MdxScript(Model) (6, 148) 测量中的计算错误 'Data'[RAG]:
函数 'SWITCH' 不支持将类型 True/False 的值与文本类型的值进行比较。考虑使用 VALUE 或 FORMAT 函数转换其中一个值。
我做错了什么?
这些是我的版本详细信息:
Feedback Type:
Frown (Error)
Release:
September 2020
Product Version:
2.85.681.0 (20.09) (x64)
OS Version:
Microsoft Windows NT 10.0.18363.0 (x64 en-GB)
CLR Version:
4.7 or later [Release Number = 528040]
您没有正确使用 SWITCH 函数,请查看文档:SWITCH fuction DAX
SWITCH(<expression>, <value>, <result>[, <value>, <result>]…[, <else>])
应该这样写:
RAG =
VAR Category = SELECTEDVALUE('Data'[Text])
RETURN SWITCH(Category,
"VERY GOOD", "#41AC4C",
"GOOD", "#AFC236",
"FAIR", "#FFD400",
"BAD", "#E95A1A",
"VERY BAD", "#E42925"
)
我正在尝试根据文本本身更改文本列的颜色:
- 非常好:绿色
- 好:浅绿色
- 一般:黄色
- 差:橙色
- 非常糟糕:红色
我写了下面的 DAX 表达式:
RAG =
VAR Category = SELECTEDVALUE('Data'[Text])
RETURN SWITCH(Category = "VERY GOOD", "#41AC4C",
Category = "GOOD", "#AFC236",
Category = "FAIR", "#FFD400",
Category = "BAD", "#E95A1A",
Category = "VERY BAD", "#E42925")
但是在Power BI中应用这个函数returns报错信息:
错误信息: MdxScript(Model) (6, 148) 测量中的计算错误 'Data'[RAG]:
函数 'SWITCH' 不支持将类型 True/False 的值与文本类型的值进行比较。考虑使用 VALUE 或 FORMAT 函数转换其中一个值。
我做错了什么?
这些是我的版本详细信息:
Feedback Type:
Frown (Error)
Release:
September 2020
Product Version:
2.85.681.0 (20.09) (x64)
OS Version:
Microsoft Windows NT 10.0.18363.0 (x64 en-GB)
CLR Version:
4.7 or later [Release Number = 528040]
您没有正确使用 SWITCH 函数,请查看文档:SWITCH fuction DAX
SWITCH(<expression>, <value>, <result>[, <value>, <result>]…[, <else>])
应该这样写:
RAG =
VAR Category = SELECTEDVALUE('Data'[Text])
RETURN SWITCH(Category,
"VERY GOOD", "#41AC4C",
"GOOD", "#AFC236",
"FAIR", "#FFD400",
"BAD", "#E95A1A",
"VERY BAD", "#E42925"
)