HSL - 指令碼與圖表函數
HSL() 用在運算式中,以設定或評估圖表物件的顏色屬性,其中顏色由 0 與 1 之間的 hue、saturation 及 luminosity 值定義。
語法:
HSL (hue, saturation, luminosity)
傳回的資料類型: 雙值
| 引數 | 描述 |
|---|---|
| hue, saturation, luminosity | 介於 0 到 1 的 Hue、saturation 和 luminosity 元件值。 |
如果解譯數值元件並將其格式設為十六進位標記法,色彩元件的 RGB 值會更易於查看。例如,淺綠色有數字 4 278 255 360,其十六進位表示法為 FF00FF00 和 RGB (0,255,0)。這等同於 HSL (80/240, 240/240, 120/240) - HSL 的值 (0.33, 1, 0.5)。
請參閱 定義視覺化的色彩,以找出如何在視覺化中使用色彩函數的範例,以及有關以運算式支援色彩之視覺化的詳細資料。
| 範例 | 結果 |
|---|---|
| If(Sum(Sales)>Sum(Budget),HSL( 0.33, 1, 0.25),HSL(0, 1, 0.5)) | 根據 Sales 和 Budget 之間的比較值傳回紫色或紅色。 |
範例 - HSL 基礎事項
概述
開啟資料載入編輯器並將下面的載入指令碼新增至新的區段。
載入指令碼包含:
-
載入到稱為 Example 之資料表格的資料集。
-
資料表格中的欄位如下:
-
Product
-
Sales
-
載入指令碼
Example:
LOAD * Inline [
Product, Sales
Product A, 200
Product B, 500
Product C, 100
Product D, 300
Product E, 700
];結果
載入資料並開啟工作表。建立新的表格並將此欄位新增為維度:
-
Product
建立下列量值:
-
=Sum(Sales),用來計算銷售總和。
在 Sum(Sales) 量值的屬性面板中,輸入下列運算式作為背景色彩運算式。這將根據產品的銷售計算來套用儲存格顏色。
-
=If(Sales > 400, HSL(.33, 1, 0.25), If(Sales >= 200 and Sales <= 400, HSL(.167, 1, 0.5), HSL(0, 1, 0.5)) )
| Product | Sum(Sales) |
|---|---|
| Product A |
200 |
| Product B | 500 |
| Product C | 100 |
| Product D | 300 |
| Product E | 700 |
在此範例中,請觀察以下事項:
-
超過 400 的銷售值 (例如 Product B 和 E) 會以綠色背景醒目顯示。
-
200 和 400 之間的銷售值 (例如 Product A 和 D) 會以黃色背景醒目顯示。
-
所有其他銷售值會以紅色背景醒目顯示。
範例 - 在圖表中醒目顯示利潤資料
概述
資料集包含銷售數據。我們希望分析資料,並根據利潤是低、中或高來醒目顯示利潤。
開啟資料載入編輯器並將下面的載入指令碼新增至新的區段。
載入指令碼包含:
-
載入到稱為 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%
];結果
載入資料並開啟工作表。建立新的表格並將此欄位新增為維度:
-
Customer
建立下列量值:
-
=Sum(SalesValue),用來計算銷售總和。
-
=Sum(Cost),用來計算銷售成本總值。
-
=Sum(ProfitMargin),用來加總利潤。 若要將此值顯示為百分比,請在數字格式之下,選取數字 > 簡單格式 > 12.34%。
在 Sum(ProfitMargin) 量值的屬性面板中,輸入下列運算式作為背景色彩運算式。
If(ProfitMargin > 0.3, HSL( 0.33, 1, 0.25), // Green for high-profit customers
If(ProfitMargin >= 0.1 and ProfitMargin <= 0.3, HSL( 0.11, 1, 0.5), // Orange for moderate-profit customers
HSL(0, 1, 0.5) // Red for low-profit customers
)
)在外觀面板的呈現之下,關閉總計。
| 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% |
HSL 函數的輸出根據客戶的利潤呈現以下顏色:
-
綠色,HSL( 0.33, 1, 0.25),適用於利潤高於 30% 的客戶。
-
橘色,HSL( 0.11, 1, 0.5),適用於中等利潤介於 10% 和 30% 之間的客戶。
-
紅色,HSL(0, 1, 0.5),適用於利潤低於 10% 的客戶。
範例 - HSL 圖表使用情境
概述
資料集包含各國家的實際銷售資料和預測銷售資料。銷售經理希望以長條圖的形式顯示資料,並醒目顯示高於該期間預測值的銷售數據。
開啟資料載入編輯器並將下面的載入指令碼新增至新的區段。
載入指令碼包含:
-
載入到稱為 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
];結果
載入資料並開啟工作表。建立新的長條圖並將此欄位新增為維度:
-
Country
建立下列量值:
-
=Sum(ActualSales),用來計算該國家的銷售總值。
新增顏色運算式,以比較實際銷售額與預測銷售額。在屬性面板中的外觀 > 顏色和圖例之下,關閉顏色:自動,以切換至自訂,然後從清單中選取依運算式。輸入下列運算式:
-
=If(Sum(ActualSales)>Sum(ProjectedSales),HSL(1.2,1.0,0.25),HSL(0, 1.0, 0.25)),以綠色醒目顯示實際銷售額超過預測銷售額的情況,以紅色醒目顯示預測銷售額超過實際銷售額的情況。
結果:依國家劃分的銷售長條圖

我們可以看到,對於銷售額超過預測值的國家,長條顏色為綠色,而對於銷售額低於預測值的國家,則為紅色。例如,Sweden 為綠色,因為其銷售值 98,000 大於 50,000 的預測值。