我在CDE中使用了CCC Heat Grid来创建一个带有不同颜色气泡的气泡图。我的数据集只有6个值:(1,1.1,2,2.1,3,3.1)。我有 sizeRole 属性到"值"因此,气泡的大小会根据这六个值的大小而变化。另外,我可以将 colorRole 属性设置为" value"。我设置了三种颜色:绿色(1),黄色(2)和红色(3)。
现在,我想要的是1为绿色,2为黄色,3为红色;最大的恒定尺寸为1.1,2.1和3.1。值1.1,2.1和3.1表示我的数据集中的警报,因此我希望它们具有最大尺寸的气泡或其他一些差异化的视觉元素。
我在预执行中尝试了以下但没有运气
function changeBubbles(){
var cccOptions = this.chartDefinition;
// For changing extension points, a little more work is required:
var eps = Dashboards.propertiesArrayToObject(cccOptions.extensionPoints);
// add extension points:
eps.bar_shape = function getShape(){
var val = this.scene.vars.value.value;
if(val == 1.1 || val == 2.1 || val == 3.1){
return 'cross';
}
else {}
};
// Serialize back eps into cccOptions
cccOptions.extensionPoints = Dashboards.objectToPropertiesArray(eps);
}
我们如何实现这一目标?
答案 0 :(得分:0)
我希望答案仍然相关,因为这是一个迟到的回应。
要使用气泡,您应该useShapes: true
。
您可以使用shape选项设置不同的常量形状。例如,shape: "cross"
。
要使气泡大小保持不变,您应将“sizeRole”设置为null:sizeRole: null
。气泡将采用所有可用的“细胞”大小。
然后,“value”列应该由“colorRole”选取,但要明确指出:colorRole: "value"
。
默认情况下,因为颜色角色将绑定到连续尺寸(“值”),所以颜色比例也将是连续的。
要使其成为离散比例,请将“值”维度更改为离散:
dimensions: {
"value": {isDiscrete: true}
}
最后,为确保将颜色映射到所需的值,请指定“colorMap”选项:
colorMap: {
"1": "green",
"2": "yellow",
"3": "red"
}
就是这样。我希望这可行: - )