GetObjectDimension - 圖表函數
GetObjectDimension() 會傳回維度名稱。Index 為選用整數,代表應傳回的維度。
您無法在下列位置的圖表中使用此功能:標題、子標題、頁尾、參考線運算式和最小/最大運算式。
您無法在使用 Object ID 的另一個物件中參考維度或量值名稱。
語法:
GetObjectDimension ([index])
傳回的資料類型: 字串
範例 | 結果 |
---|---|
GetObjectDimension ()
GetObjectDimension (0) |
傳回圖表中第一個維度的名稱。 |
GetObjectDimension (1) | 傳回圖表中第二個維度的名稱。 |
範例 - GetObjectDimension 基礎事項
概述
開啟資料載入編輯器並將下面的載入指令碼新增至新的區段。
載入指令碼包含:
-
載入到稱為 Example 之資料表格的資料集。
-
資料表格中的欄位如下:
-
TransactionDate
-
CustomerID
-
TransactionQuantity
-
載入指令碼
Example:
LOAD * INLINE [
TransactionDate, CustomerID, TransactionQuantity
2018/08/30, 049681, 13
2018/08/30, 203521, 6
2018/08/30, 203521, 21
];
結果
載入資料並開啟工作表。建立新的表格並將這些欄位新增為維度:
-
TransactionDate
-
CustomerID
-
TransactionQuantity
建立下列量值:
- =GetObjectDimension (),用來尋找表格中的第一個維度。
- =GetObjectDimension (0),用來尋找表格中的第一個維度。
- =GetObjectDimension (1),用來尋找表格中的第二個維度。
TransactionDate | CustomerID | TransactionQuantity | GetObjectDimension () | GetObjectDimension (0) | GetObjectDimension (1) |
---|---|---|---|---|---|
2018/08/30 | 049681 | 13 | TransactionDate | TransactionDate | CustomerID |
2018/08/30 | 203521 | 6 | TransactionDate | TransactionDate | CustomerID |
2018/08/30 | 203521 | 21 | TransactionDate | TransactionDate | CustomerID |
查看結果,您可以看到 GetObjectDimension 函數如何傳回函數參數中指示的維度名稱。
範例 - GetObjectDimension 進階使用情境
概述
此範例將 GetObjectDimension 函數與篩選選項組合使用。圖表物件中顯示的維度和量值計算會根據您選取的篩選條件而變更。
開啟資料載入編輯器並將下面的載入指令碼新增至新的區段。
載入指令碼包含:
-
載入到兩個內嵌資料表格 Sales 和 Filter 的資料集:第一個表格 Sales 包含銷售資料。第二個表格 Filter 包含將作為維度切換使用的欄位名稱清單。切換讓您可以在圖表中的維度之間切換,並自訂根據所選維度顯示的量值計算。
-
Sales 表格中的下列欄位:
-
Country
-
Salesperson
-
SalesValue
-
-
Filter 表格中的下列欄位:FilterField。
載入指令碼
Sales:
LOAD * INLINE [
Country, SalesPerson, SalesValue
USA, John, 500
USA, Alice, 700
Canada, Bob, 300
Canada, Carol, 400
Mexico, Dave, 200
];
Filter:
LOAD * INLINE [
FilterField
Country
SalesPerson
];
結果
-
載入資料並開啟工作表。建立新的篩選窗格並將此欄位新增為維度:
-
FilterField
-
-
在資產面板中,於欄位之下,用滑鼠右鍵按一下 FilterField 並選取欄位設定。選取永遠是單選值核取方塊,然後按一下儲存。
-
建立表格,然後輸入下列運算式以新增維度:
-
=$(= FilterField)
-
在標籤之下,輸入下列運算式,以定義維度的欄名稱:='$(= FilterField)'
-
-
建立下列量值:
-
=If(GetObjectDimension() = 'Country', Sum(SalesValue), Avg(SalesValue)),如果所選的維度是 Country,則用來加總銷售值,否則若所選的維度是 SalesPerson,則用來傳回平均銷售值。
-
在 Label 之下,輸入下列運算式,以根據篩選選項定義量值的欄名稱:=If(GetObjectDimension() = 'Country', 'Sum(SalesValue)', 'Avg(SalesValue)')
-
在分析模式下,若您在 FieldFilter 篩選條件中的 SalesPerson 和 Country 之間切換,表格會變更,以納入所選維度以及該維度的對應量值計算。例如,如果您在篩選條件中選取 Country,則表格會在第一欄顯示 Country 作為維度。然後,量值會使用 GetObjectDimension 函數,將其等同於 Country,並傳回 Sum(SalesValue)。
Country 的篩選窗格和表格結果

下表顯示了在 FilterField 篩選條件中選取 Country 時的結果。
Country | Sum(SalesValue) |
---|---|
Totals | 2100 |
Canada | 700 |
Mexico | 200 |
USA | 1200 |
下表顯示了在 FilterField 篩選條件中選取 SalesPerson 時的結果。
SalesPerson | Avg(SalesValue) |
---|---|
Totals | 420 |
Alice | 700 |
Bob | 300 |
Carol | 400 |
Dave | 200 |
John | 500 |