根据我 6 月份上一个问题的答案,我想使用 icCube HSL() 公式来定义 amChart 小部件中图表成员的颜色。
在标准模式销售中,我使用以下 MDX:
with
member [measures].[hue] as 16
member [measures].[saturation] as 1-indexof([Rubriek].[Rubriek].currentmember.siblings,[Rubriek].[Rubriek].currentmember)/30
member [measures].[lightness] as 0.2+ordinal(level([Rubriek].[Rubriek].currentmember))/10
member [measures].[color-hsl] as hsl([hue],[saturation],[lightness])
member [measures].[color-fixed] as "#FF0000"
SELECT
{ {[Measures].[Amount],[measures].[color-hsl],[measures].[color-fixed]} } ON COLUMNS,
{ [Product].[Product].firstNotAllLevel().allmembers } ON ROWS
FROM [Sales]
我添加了 2 个颜色字段:
color-hsl = HSL 定义的颜色,基于产品层次结构的级别深度和成员在其兄弟姐妹中的位置
color-fixed = 只是一个十六进制颜色,用于测试目的
现在,当我定义组合图表时,我可以在“高级属性”中设置颜色字段:
- [{"colorField":"color-hsl"}]
除了,这并没有给我计算出来的颜色。但是,如果我将 colorField 更改为颜色固定,它会给我定义的红色。
问题:
- 我怎样才能实现 color-hsl 的工作。我必须将其转换为十六进制字符串吗?我怎样才能做到这一点?
- 如何摆脱 color-hsl 的数据值。我只想将其用作定义颜色的字段,而不是我的 mdx 中的值(即“金额”)字段?