【发布时间】:2017-01-22 06:00:51
【问题描述】:
我有一个 CCC 热网格组件,其中数据“值”(下例中的交通灯)始终为 1、2、3 或空值 - 我想为热图单元格着色,以便所有 1 均为绿色,所有 2 都是黄色的,所有 3 都是红色的。我不能使用 CDE 中可用的“颜色”数组,因为如果我的数据集不包含其中一个可能的值,则会分配数组中的下一个颜色并且颜色会变得混乱。所以我想我需要用javascript来攻击它。
我尝试使用已在条形图上成功使用的 colorMap,但在 Heat Grid 中它似乎根本没有做任何事情 - 它只是继续使用默认配色方案,根据不同的颜色更改颜色数据集中有哪些数据。
我在 Heat Grid 组件的 Post-Fetch 中有以下代码:
function f() {
this.chartDefinition.colorMap = {
"1": "green",
"2": "yellow",
"3": "red"
};
}
数据集的输出样本如下:
competency_name full_name expiry_date traffic_light
Drilling Licence ACKERLEY NULL 3
Drivers Licence ACKERLEY NULL 3
Heavy Machinery ACKERLEY NULL 3
Project Management ACKERLEY NULL 3
Drilling Licence ALBRIGHT 2016-10-05 2
Heavy Machinery ALBRIGHT 2017-09-05 1
Project Management ALBRIGHT NULL 1
Project Management ANDERSON NULL 3
Heavy Machinery ARMSTRONG NULL 3
Drilling Licence BAILEY NULL 3
其他可能相关的 CDE 设置:
- crossTabMode = True
- seriesInRows = 假
- categoryRole = 类别
- seriesRole = category2
- sizeRole =
- colorRole = 值
- colorScaleType = 离散
我错过了什么吗?似乎有一些特定于热网格(或我的数据结构)的东西,我需要做不同的事情,但我无法弄清楚。
任何帮助表示赞赏。
我使用的是 Pentaho 5.2,运行 CDF、CDA、CDE 和 CGG 的 16.01.22 版
【问题讨论】:
标签: pentaho pentaho-cde pentaho-ctools