ARGB 脚本和图表功能
ARGB() 用于在表达式中设置或评估图表对象的颜色属性,其中用红色成分 r、绿色成分 g 和蓝色成分 b,以及透明度系数(不透明度)alpha 定义颜色。
语法:
ARGB(alpha,
r, g,
b)
返回数据类型: 双
参数
|
alpha
|
介于 0 - 255 范围内的透明度值。0 对应完全透明,255 对应完全不透明。 |
|
r, g, b
|
红色,绿色和蓝色成分的值。颜色成分 0 对应无影响,其中一个 255 对应完全影响。 |
信息注释所有参数均必须为表达式,用于解算范围介于 0 至 255 之间的整数。
如果解释数值成分并以十六进制表示法格式化数值,则颜色成分的值比较明显。 例如,浅绿色的编号为 4 278 255 360,其十六进制表示法为 FF00FF00。 前两位 ‘FF’ (255) 表示 alpha 通道。 后面两位 ‘00’ 表示红色的数量、接下来两位 ‘FF’ 表示绿色 的数量,以及最后两位 ‘00’ 表示蓝色的数量.
请参阅 可视化着色,找到如何在可视化中使用颜色函数的示例,以及有关通过表达式支持颜色的可视化的更多信息。
示例 - 图表表达式
| 示例 |
结果 |
| ARGB(128, 0, 128, 0)
|
返回半透明的绿色。 |
示例 - ARGB 基本原理
概述
打开数据加载编辑器,并将下面的加载脚本添加到新部分。
加载脚本包含:
-
加载到名为 Example 的数据表中的数据集。
-
数据表中有以下字段:
加载脚本
Example:
LOAD * Inline [
Product, Sales
Product A, 200
Product B, 500
Product C, 100
Product D, 300
Product E, 700
];
结果
加载数据并打开工作表。创建新表并将该字段添加为维度:
创建以下度量:
在 Sum(Sales) 度量的属性面板中,输入以下表达式作为背景颜色表达式。这样将根据产品的销售额计算应用单元格颜色。
-
=If(Sales > 400, ARGB(128, 0, 128, 0), If(Sales >= 200 and Sales <= 400, ARGB(128, 255, 255, 0), ARGB(128, 255, 0, 0)) )
Results table
| Product |
Sum(Sales) |
| Product A |
200
|
| Product B |
500 |
| Product C |
100 |
| Product D |
300 |
| Product E |
700 |
在此示例中,请注意以下几点:
示例 - 在图表中突出显示利润数据
概述
数据集包含按客户分列的销售数据。我们希望分析数据,并根据利润率是低、中等还是高来突出显示利润率。
打开数据加载编辑器,并将下面的加载脚本添加到新部分。
加载脚本包含:
-
加载到名为 Example 的数据表中的数据集。
-
数据表中有以下字段:
-
Customer
-
SalesValue
-
Cost
-
ProfitMargin
加载脚本
Example:
LOAD * Inline [
Customer, SalesValue, Cost, ProfitMargin
Customer A, 500, 300, 40%
Customer B, 800, 750, 6.25%
Customer C, 400, 300, 25%
Customer D, 600, 550, 8.33%
Customer E, 900, 700, 22.22%
];
结果
加载数据并打开工作表。创建新表并将该字段添加为维度:
创建以下度量:
在 Sum(ProfitMargin) 度量的属性面板中,输入以下表达式作为背景颜色表达式。
If(ProfitMargin > 0.3, ARGB(128, 0, 128, 0), // Green for high-profit customers
If(ProfitMargin >= 0.1 and ProfitMargin <= 0.3, ARGB(128, 255, 165, 0), // Orange for moderate-profit customers
ARGB(128, 255, 0, 0) // Red for low-profit customers
)
)
在外观面板的演示下,关闭总计。
Results table
| Customer |
Sum(SalesValue) |
Sum(Cost) |
Sum(Profit Margin) |
| Customer A |
500 |
300 |
40.00% |
| Customer B |
800 |
750 |
6.25% |
| Customer C |
400 |
300 |
25.00% |
| Customer D |
600 |
550 |
8.33% |
| Customer E |
900 |
700 |
22.22% |
ARGB 函数的输出根据客户的利润率呈现以下颜色:
-
绿色,ARGB(128, 0, 128, 0) ,针对利润率高于 30% 的客户。
-
橙色,ARGB(128, 255, 165, 0) ,针对利润率在 10% 和 30% 之间的中等客户。
-
红色,ARGB(128, 255, 0, 0) ,针对利润率低于 10% 的客户。
示例 - ARGB 图表场景
概述
数据集包含按国家分列的实际和预计销售数据。销售经理希望在条形图中显示数据,并突出显示高于该期间预计值的销售数字。
打开数据加载编辑器,并将下面的加载脚本添加到新部分。
加载脚本包含:
-
加载到名为 Example 的数据表中的数据集。
-
数据表中有以下字段:
-
Country
-
ActualSales
-
ProjectedSales
加载脚本
Example:
Load * Inline
[Country, ActualSales, ProjectedSales
Sweden, 100000, 50000
Germany, 125000, 175000
Norway, 74850, 68500
Ireland, 45000, 48000
Sweden, 98000, 50000
Germany, 115000, 175000
Norway, 71850, 68500
Ireland, 31000, 48000
];
结果
加载数据并打开工作表。创建新条形图并将该字段添加为维度:
创建以下度量:
添加颜色表达式以比较实际销售额和预计销售额。在属性面板的外观 > 颜色和图例下,关闭颜色:自动切换到自定义,然后从列表中选择按表达式。输入以下表达式:
-
=If(Sum(ActualSales)>Sum(ProjectedSales),ARGB(128,0,128,0),ARGB(128,128,0,0)),以绿色突出显示实际销售额超过预计销售额的情况,以红色突出显示预计销售额超过实际销售额的情况。
结果:按国家分列的销售条形图
我们可以看到,对于那些销售额超过预计值的国家,条形图的颜色是绿色的,而那些销售额低于预期值的国家则显示为红色。例如,Sweden 是绿色的,因为 98,000 的销售值大于 50,000 的投影值。