

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 在 Amazon Quick Sight 中視覺化、分析和共用資料與分析、儀表板和報告
<a name="quick-bi"></a>

Amazon Quick Sight 是一項全方位的商業智慧服務，可讓您透過互動式視覺化、儀表板和報告，將原始資料轉換為有意義的洞見。無論您是連線到資料庫、準備資料集、建立分析，還是與利益相關者共用儀表板，Amazon Quick Sight 都會提供進行資料驅動型決策所需的工具。

本節涵蓋從初始資料連線到最終報告共用的完整 Amazon Quick Sight 工作流程。您將了解如何連線到各種資料來源、準備和轉換資料、建立吸引人的視覺化效果、建置互動式儀表板，以及利用生成式 BI 功能來加速分析工作流程。每個主題都以先前的主題為基礎，提供全方位的指南，讓您充分利用 Amazon Quick Sight 的強大功能。

**Topics**
+ [

# 連線至 Amazon Quick Sight 中的資料
](working-with-data.md)
+ [

# 在 Amazon Quick Sight 中重新整理資料
](refreshing-data.md)
+ [

# 在 Amazon Quick Sight 中準備資料
](preparing-data.md)
+ [

# 分析和報告：在 Amazon Quick Sight 中視覺化資料
](working-with-visuals.md)
+ [

# 使用儀表板和報告共用和訂閱 Amazon Quick Sight 中的資料
](working-with-dashboards.md)
+ [

# 探索 Amazon Quick Sight 中的互動式儀表板
](using-dashboards.md)
+ [

# 在 Amazon Quick Sight 中使用機器學習 (ML) 取得洞見
](making-data-driven-decisions-with-ml-in-quicksight.md)
+ [

# 具有 Quick Sight 的生成式 BI
](quicksight-gen-bi.md)
+ [

# Amazon Quick Sight 故障診斷
](troubleshooting.md)
+ [

# 使用 Amazon Quick Sight 進行開發
](quicksight_dev.md)

# 連線至 Amazon Quick Sight 中的資料
<a name="working-with-data"></a>

許多不同角色的人都使用 Amazon Quick Sight 來協助他們進行分析和進階計算、設計資料儀表板、內嵌分析，以及做出更明智的決策。在發生上述任何情況之前，了解您資料的人員需要將其新增至 [Quick Sight 資料集](https://docs.aws.amazon.com/quicksuite/latest/userguide/creating-data-sets)。Quick Sight 支援從各種[資料來源](https://docs.aws.amazon.com/quicksuite/latest/userguide/working-with-data-sources)進行直接連線和上傳。**功能與使用案例**

**Amazon Quick Standard 版本功能**  
在 Quick Standard Edition 中提供您的資料之後，您可以執行下列動作：  
+ 使用欄位格式設定、階層結構、資料類型轉換和計算來轉換資料集。
+ 根據新建立的資料集，建立一或多個資料分析。
+ 與其他人共用您的分析，以便他們可以協助進行設計。
+ 在資料分析中新增圖表、圖形、更多資料集和多個頁面 (稱為工作表)。
+ 透過自訂格式和佈景主題建立有吸引力的視覺效果。
+ 使用參數、控制項、篩選器和自訂作業使它們具有互動性。
+ 合併來自多個來源的資料，然後建置向下鑽研的新層次結構，以及僅在分析期間可用的計算，例如彙總、視窗函數等。
+ 將分析發布為互動式資料儀表板。
+ 共用儀表板，以便其他人可以使用儀表板，即使他們不使用儀表板所依據的分析也是如此。
+ 新增更多資料以建立更多分析和儀表板。

**Amazon Quick** **Enterprise Edition 功能**  
在 Quick Enterprise Edition 中提供您的資料之後，您可以根據角色執行不同的動作。如果您可以建置資料集、設計分析和發布儀表板，就能完成標準版使用者可以執行的所有動作。  
此外，以下是您可以完成的其他任務的範例：  
+ 建立使用 Quick Sight 洞察的分析，包括機器學習 (ML) 支援的預測洞察、異常和極端值偵測，以及關鍵驅動因素識別。
+ 利用文字、顏色、影像和計算來設計敘述洞見。
+ 使用靜態資料加密功能，從虛擬私有雲端 (VPC) 和內部部署資料來源新增資料。
+ 透過新增資料列和資料欄層級的安全防範措施來控制資料集的存取。
+ 每小時重新整理匯入的資料集。
+ 分享透過電子郵件寄送的報告。

**應用程式開發**  
如果您開發應用程式或使用 AWS SDKs和 AWS Command Line Interface (AWS CLI)，您可以執行下列操作等等：  
+ 向網站和應用程式新增內嵌的分析和互動式儀表板。
+ 使用 API 作業來管理資料來源和資料集。
+ 使用資料擷取 API 作業，更頻繁地重新整理匯入的資料。
+ 使用 API 作業從分析和儀表板編寫指令碼、傳輸和製作範本。
+ 根據系統管理員所管理的設定，以程式設計方式將人員指派給安全角色。

**Quick 中的管理函數**  
如果您在 Quick 中執行管理函數，您可以執行下列操作等等：  
+ 使用共用資料夾管理安全性，以整理團隊的工作並協助他們使用儀表板、分析和資料集展開協作。
+ 將 Quick Sight 新增至您的 VPC，以允許存取 VPC 和內部部署資料來源中的資料。
+ 透過對 AWS 資料來源的精細定義的存取控制來保護敏感資料。
+ 手動將人員指派給快速撰寫安全角色，以便他們可以每月固定成本準備資料集、設計分析和發佈資料儀表板。
+ 手動將人員指派給快速讀取器安全角色，以便他們可以根據pay-per-session安全地與已發佈的資料儀表板互動。

**儀表板訂閱**  
如果訂閱儀表板，您可以執行以下動作：  
+ 使用並訂閱由您的專家團隊設計的互動式儀表板。
+ 享受簡化整潔的介面。
+ 在電子郵件中檢視儀表板快照。
+ 專注於利用手邊的資料做出決策。

連線到或匯入資料後，您可以建立資料集來產生和準備要共用和重複使用的資料。您可以在 **Amazon** Quick Sight 開始頁面上選擇**資料**，在資料頁面上檢視可用的資料集。您可以在建立資料集頁面上檢視可用的資料來源並建立新的**資料集**，方法是在**資料**頁面上選擇**建立**然後**新增資料集**。

**Topics**
+ [

# 支援的資料來源
](supported-data-sources.md)
+ [

# 使用整合和資料集連線至您的資料
](connecting-to-data-examples.md)
+ [

# 資料來源配額
](data-source-limits.md)
+ [

# 支援的資料類型和值
](supported-data-types-and-values.md)
+ [

# 使用資料集
](working-with-datasets.md)
+ [

# 在 Amazon Quick Sight 中使用資料來源
](working-with-data-sources.md)

# 支援的資料來源
<a name="supported-data-sources"></a>

Amazon Quick Sight 支援各種資料來源，您可以用來提供資料進行分析。支援下列資料來源。

## 連線至關聯式資料
<a name="relational-data-sources"></a>

您可以使用下列任何關聯式資料存放區做為 Amazon Quick Sight 的資料來源：
+ Amazon Athena
+ Amazon Aurora
+ AWS Glue 您可以使用 AWS Glue 資料目錄相容的服務存取資料目錄，例如 Athena 或 Redshift Spectrum
+ Amazon OpenSearch Service
+ Amazon Redshift
+ Amazon Redshift Spectrum
+ Amazon S3
+ Amazon S3 分析
+ Apache Impala
+ Apache Spark 2.0 或更新版本
+ AWS IoT Analytics
+ Spark 1.6 或更新版本 (最高 3.0 版) 上的 Databricks (僅限 E2 平台) 
+ Exasol 7.1.2 或更新版本
+ Google BigQuery
+ MariaDB 10.0 或更新版本
+ Microsoft SQL Server 2012 或更新版本
+ MySQL 5.7 或更新版本
**注意**  
自 2023 年 10 月起，MySQL 社群已不支援 MySQL 5.7 版。這表示 Amazon Quick Sight 將不再支援 MySQL 5.7 的新功能、增強功能、錯誤修正或安全修補程式。我們將盡最大努力支援現有的查詢工作負載。Quick Sight 客戶仍然可以使用 MySQL 5.7 資料集搭配 Quick Sight，但我們鼓勵客戶將其 MySQL 資料庫 (DB) 升級至主要版本 8.0 或更高版本。若要查看 Amazon RDS 提供的陳述式，請參閱 [Amazon RDS Extended Support opt-in behavior is changing. Upgrade your Amazon RDS for MySQL 5.7 database instances before February 29, 2024 to avoid potential increase in charges](https://repost.aws/articles/ARHdQg4IelQS2uyXkNrINw-A/announcement-amazon-rds-extended-support-opt-in-behavior-is-changing-upgrade-your-amazon-rds-for-mysql-5-7-database-instances-before-february-29-2024-to-avoid-potential-increase-in-charges) 一文。  
Amazon RDS 已更新 Amazon RDS MySQL 8.3 的安全設定。根據預設，從 Quick Sight 到 Amazon RDS MySQL 8.3 的任何連線都會啟用 SSL。這是 MySQL 8.3. 連線的唯一可用選項。  
TLS 1.2 for MySQL 連線需要 MySQL 5.7.28 版或更新版本。對於低於 5.7.28 的 MySQL 版本，Quick Sight 會回復為 TLS 1.1。如果您的安全需求要求 TLS 1.2，請確定您的 MySQL 或 Aurora MySQL 資料庫正在執行 5.7.28 版或更新版本。
+ Oracle 12c 或更新版本
+ PostgreSQL 9.3.1 或更新版本
**注意**  
下列連接器支援從 Amazon Quick Sight 對 PostgreSQL 進行 SCRAM 型身分驗證：RDS 託管 PostgreSQL、Aurora PostgreSQL 和 Vanilla PostgreSQL。如果使用適當的 PostgreSQL 引擎版本，且已設定 PostgreSQL for SCRAM 中的正確組態，則 Quick Sight 中不需要額外的組態。如果您在從 Quick Sight 建立對 PostgreSQL 的 SCRAM 身分驗證時仍遇到問題，請建立支援票證。
+ Presto 0.167 或更新版本
+ Snowflake
+ Starburst
+ Trino
+ Teradata 14.0 或更新版本
+ Timestream

**注意**  
您可以透過支援的資料來源連結或匯入未列在此處的其他資料來源，以存取這些資料來源。

Amazon Redshift 叢集、Amazon Athena 資料庫和 Amazon RDS 執行個體都必須位於 AWS中。其他資料庫執行個體必須位於下列其中一個環境中，才能從 Amazon Quick Sight 存取：
+ Amazon EC2
+ 本地 (內部部署) 資料庫
+ 資料在資料中心或其他可從網際網路存取的環境

如需詳細資訊，請參閱[Amazon Quick 中的基礎設施安全性](infrastructure-and-network-access.md)。

## 匯入檔案資料
<a name="file-data-sources"></a>

您可以使用 Amazon S3 或本地 (內部部署) 網路上的檔案作為資料來源。Quick Sight 支援下列格式的檔案：
+ CSV 和 TSV – 逗號分隔和製表符分隔的文字檔案
+ ELF 和 CLF – 擴充和通用日誌格式檔案
+ JSON – 一般或半結構化資料檔案
+ XLSX – Microsoft Excel 檔案

Quick Sight 支援 UTF-8 檔案編碼，但不支援 UTF-8 （使用 BOM)。

Amazon S3 中以 zip 或 gzip ([www.gzip.org](http://www.gzip.org)) 壓縮的檔案可以依現狀匯入。如果您對 Amazon S3 的檔案使用其他壓縮程式，或者檔案位在本機網路，請先移除壓縮再匯入檔案。

### JSON 資料
<a name="json-data-sources"></a>

Amazon Quick Sight 原生支援 JSON 平面檔案和 JSON 半結構化資料檔案。

您可以上傳 JSON 檔案，或連線至包含 JSON 資料的 Amazon S3 儲存貯體。Amazon Quick Sight 會自動對 JSON 檔案和內嵌 JSON 物件執行結構描述和類型推論。然後其會將 JSON 扁平化，讓您可以分析和視覺化應用程式產生的資料。

JSON 一般檔案資料的基本支援包括：
+ 推論結構描述
+ 決定資料類型
+ 扁平化資料
+ 從一般檔案剖析 JSON (JSON 內嵌物件)

JSON 檔案結構 (.json) 的支援包括：
+ 具有結構的 JSON 記錄
+ 以根元素作為陣列的 JSON 記錄

您也可以使用 `parseJson` 函數，從文字檔中的 JSON 物件擷取值。例如，如果您的 CSV 檔案有 JSON 物件內嵌在其中一個欄位中，您可以從指定的索引鍵值組 (KVP) 擷取值。如需如何執行此作業的資訊，請參閱 [parseJson](parseJson-function.md)。

不支援以下 JSON 功能：
+ 讀取具有記錄清單結構的 JSON
+ JSON 記錄內的清單屬性和清單物件；匯入過程中會略過這些內容
+ 自訂上傳或組態設定
+ 適用於 SQL 和分析 parseJSON 函數
+ 用於無效 JSON 的錯誤訊息
+ 從 JSON 結構擷取 JSON 物件
+ 讀取分隔的 JSON 記錄

在資料準備期間，您可以使用 `parseJson` 函數來剖析一般檔案。此函數從有效的 JSON 結構和清單中擷取元素。

支援下列 JSON 值：
+ JSON 物件
+ 字串 (以雙引號括住)
+ 數字 (整數和浮點數)
+ Boolean
+ NULL

## 軟體即服務 (SaaS) 資料
<a name="service-data-sources"></a>

Quick Sight 可以直接連線或使用開放授權 (OAuth) 來連線至各種軟體即服務 (SaaS) 資料來源。

支援直接連線的 SaaS 來源包括：
+ Jira
+ ServiceNow

使用 OAuth 的 SaaS 來源要求您在 SaaS 網站上授權連線。為此，Quick Sight 必須能夠透過網路存取 SaaS 資料來源。這些來源包括：
+ Adobe Analytics
+ GitHub
+ Salesforce

  您可以在下列版本的 Salesforce 中使用報告或物件做為 Amazon Quick Sight 的資料來源：
  + 企業版本
  + 無限制版本
  + 開發人員版本

## 本機資料來源
<a name="local-data-sources"></a>

若要連線至內部部署資料來源，您需要將資料來源和快速特定網路界面新增至 Amazon Virtual Private Cloud (Amazon VPC)。如果設定正確，以 Amazon VPC 為基礎的 VPC 非常近似於您在自有資料中心內運作的傳統網路。透過它，您可以保護和隔離資源之間的流量。您可以根據自己的需求定義和控制網路元素，同時仍能享受雲端網路和 AWS可擴展基礎架構的優勢。

如需詳細資訊，請參閱 [Amazon Quick 中的基礎設施安全性](infrastructure-and-network-access.md)。

# 使用整合和資料集連線至您的資料
<a name="connecting-to-data-examples"></a>

您可以將 Amazon Quick Sight 連線至不同類型的資料來源。這包括位於軟體即服務 (SaaS) 應用程式中的資料、存放在 Amazon S3 儲存貯體中的平面檔案、來自 Salesforce 等第三方服務的資料，以及來自 Athena 的查詢結果。下列範例可幫助進一步了解連線至特定資料來源的要求。

**Topics**
+ [

# 使用 Amazon Athena 資料建立資料集
](create-a-data-set-athena.md)
+ [

# 搭配 Amazon Quick Sight 使用 Amazon OpenSearch Service
](connecting-to-os.md)
+ [

# 使用 Amazon S3 檔案建立資料集
](create-a-data-set-s3.md)
+ [

# 使用 Apache Spark 建立資料來源
](create-a-data-source-spark.md)
+ [

# 在 Quick Sight 中使用 Databricks
](quicksight-databricks.md)
+ [

# 使用 Google BigQuery 建立資料集
](quicksight-google-big-query.md)
+ [

# 使用 Google 試算表資料來源建立資料集
](create-a-dataset-google-sheets.md)
+ [

# 使用 Apache Impala 資料來源建立資料集
](create-a-dataset-impala.md)
+ [

# 使用 Microsoft Excel 檔案建立資料集
](create-a-data-set-excel.md)
+ [

# 使用 Presto 建立資料來源
](create-a-data-source-presto.md)
+ [

# 搭配 Amazon Quick Sight 使用 Snowflake
](connecting-to-snowflake.md)
+ [

# 搭配 Amazon Quick Sight 使用 Starburst
](connecting-to-starburst.md)
+ [

# 從 SaaS 來源建立資料來源和資料集
](connecting-to-saas-data-sources.md)
+ [

# 從 Salesforce 建立資料集
](create-a-data-set-salesforce.md)
+ [

# 搭配 Amazon Quick Sight 使用 Trino
](connecting-to-trino.md)
+ [

# 使用本機文字檔案建立資料集
](create-a-data-set-file.md)
+ [

# 搭配 Amazon Quick Sight 使用 Amazon Timestream 資料
](using-data-from-timestream.md)

# 使用 Amazon Athena 資料建立資料集
<a name="create-a-data-set-athena"></a>

請依下列程序建立連線至 Amazon Athena 資料或 Athena 聯合查詢資料的新資料集。

**若要連線至 Amazon Athena**

1. 首先建立新的資料集。從左側的導覽窗格中選擇**資料**。

1. 選擇**建立**，然後選擇**新增資料集**。

1. 

   1. 若要使用現有的 Athena 連線設定檔 （常見），請選擇您要使用的現有資料來源的卡片。選擇**選取**。

      卡片會標示 Athena 資料來源圖示，以及建立連線的人員所提供的名稱。

   1. 若要建立新的 Athena 連線設定檔 (較不通用)，請完成下列步驟：

      1. 選擇**新增資料來源**，然後選擇 **Athena** 資料來源卡。

      1. 選擇**下一步**。

      1. 對於**資料來源名稱**，輸入描述性名稱。

      1. 對於 **Athena 工作群組**，選擇您的工作群組。

      1. 選擇**驗證連線**以測試連線。

      1. 選擇 **Create data source (建立資料來源)**。

      1. (選用) 為要執行的查詢選取 IAM 角色 ARN。

1. 在**選擇資料表**畫面上，執行下列作業：

   1. 對於**型錄**，選擇以下選項之一：
      + 如果您使用的是 Athena 聯合查詢，選擇要使用的型錄。
      + 否則，選擇 **AwsDataCatalog**。

   1. 選擇下列其中一項：
      + 若要撰寫 SQL 查詢，選擇**使用自訂 SQL**。
      + 若要選擇資料庫和資料表，從**型錄**下拉式選單中選擇包含您的資料庫的型錄。然後，從**資料庫**下拉式選單中選擇資料庫，然後從為您的資料庫顯示的**資料表**清單中選擇資料表。

   如果您沒有正確的許可，會收到下列錯誤訊息：「您沒有足夠的許可，無法連線至此資料集或執行此查詢。」 如需協助，請聯絡您的快速管理員。如需詳細資訊，請參閱[授權連線到 Amazon Athena](athena.md)。

1. 選擇**編輯/預覽資料**。

1. 選擇**視覺化**以使用資料表建立資料集並分析資料。如需詳細資訊，請參閱[分析和報告：在 Amazon Quick Sight 中視覺化資料](working-with-visuals.md)。

# 搭配 Amazon Quick Sight 使用 Amazon OpenSearch Service
<a name="connecting-to-os"></a>

您可以在下面找到如何使用 Amazon Quick Sight 連線至 Amazon OpenSearch Service 資料。

## 為 OpenSearch Service 建立新的 Quick Sight 資料來源連線
<a name="create-connection-to-es"></a>

您可以在下文中了解如何連線至 OpenSearch Service

在您可以繼續之前，Amazon Quick Sight 需要獲得授權才能連線至 Amazon OpenSearch Service。如果未啟用連線，您會在嘗試連線時收到錯誤訊息。Quick Sight 管理員可以授權與 AWS 資源的連線。

**授權 Quick Sight 啟動 OpenSearch Service 的連線**

1. 按一下右上角的設定檔圖示開啟選單，然後選擇**管理快速**。如果您在設定檔功能表中沒有看到**管理快速**選項，請向 Amazon Quick 管理員尋求協助。

1. 選擇**安全和許可**、**新增或移除**。

1. 啟用 **OpenSearch** 的選項。

1. 選擇**更新**。

在可以存取 OpenSearch Service 之後，您可以建立資料來源，讓使用者可以使用指定的域。

**若要連線至 OpenSearch Service**

1. 首先建立新的資料集。從左側導覽窗格中選擇**資料**，然後選擇**建立**和**新增資料集**。

1. 選擇 **Amazon OpenSearch** 資料來源卡片。

1. 對於**資料來源名稱**，為 OpenSearch Service 資料來源連線輸入一個描述性名稱，例如 `OpenSearch Service ML Data`。因為您可以透過與 OpenSearch Service 的連線建立許多資料集，因此最好保持名稱簡單。

1. 對於**連線類型**，選擇您要使用的網路。這可以是以 Amazon 虛擬私有雲端 (VPC) 或公有網路為基礎的 VPC。VPC 清單包含 VPC 連線的名稱，而不是 VPC ID。這些名稱由快速管理員定義。

1. 在**域**中，選擇您要連線的 OpenSearch Service 域。

1. 選擇**驗證連線**，檢查您是否可以成功連線至 OpenSearch Service。

1. 選擇**建立資料來源**。

1. 對於**資料表**，選擇您要使用的資料表，然後選擇**選取**以繼續。

1. 執行下列作業之一：
   + 若要將資料匯入 Quick Sight 記憶體內引擎 （稱為 SPICE)，請選擇**匯入至 SPICE 以加快分析**速度。如需如何啟用匯入 OpenSearch 資料的詳細資訊，請參閱 [授權連線到 Amazon OpenSearch Service](opensearch.md)。
   + 若要允許 Quick Sight 在每次重新整理資料集或使用分析或儀表板時針對您的資料執行查詢，請選擇**直接查詢您的資料**。

     若要在使用 OpenSearch Service 資料的已發布儀表板上啟用自動重新整理，OpenSearch Service 資料集必須使用直接查詢。

1. 選擇**編輯/預覽**，然後選擇**儲存**以儲存資料集並將其關閉。

## 管理 OpenSearch Service 資料的許可
<a name="dataset-permissions-for-es"></a>

下列程序說明如何檢視、新增及撤銷許可，以允許存取相同的 OpenSearch Service 資料來源。您新增的人員必須是 Quick Sight 中的作用中使用者，才能新增他們。

**若要編輯資料來源的許可**

1. 選擇左側**的資料**，然後向下捲動以尋找 Amazon OpenSearch Service 連線的資料來源卡。`US Amazon OpenSearch Service Data` 可能是一個範例。

1. 選擇 **Amazon OpenSearch** 資料集。

1. 在開啟的資料集詳細資訊頁面上，選擇**許可**標籤。

   此時將顯示目前的許可清單。

1. 若要新增許可，請選擇**新增使用者與群組**，然後依下列步驟作業：

   1. 新增使用者或群組，以允許他們使用相同的資料集。

   1. 當您完成新增所有想要新增的人員時，請選擇要套用至他們的**許可**。

1. (選用) 若要編輯許可，您可以選擇**檢視者**或**擁有者**。
   + 選擇**檢視者**以允許讀取存取權。
   + 選擇**擁有者**以允許該使用者編輯、共用或刪除此 Quick Sight 資料集。

1. (選用) 若要撤銷許可，請選擇**撤銷存取權**。撤銷一個人的存取權後，他們就無法從此資料來源建立新的資料集。但是，其現有資料集仍可存取此資料來源。

1. 完成後，請選擇**關閉**。

## 為 OpenSearch Service 新增 Quick Sight 資料集
<a name="create-dataset-using-es"></a>

當您有 OpenSearch Service 的現有資料來源連線之後，可以建立 OpenSearch Service 資料集以用於分析。

**若要使用 OpenSearch Service 建立資料集**

1. 從開始頁面，選擇**資料**、**建立**、**新資料集**。

1. 向下捲動至 OpenSearch Service 連線的資料來源卡片。如果您有許多資料來源，可以使用頁面頂端的搜尋列來尋找名稱部分相符的資料來源。

1. 選擇 **Amazon OpenSearch** 資料來源卡片，然後選擇**建立資料集**。

1. 對於**資料表**，選擇您要使用的 OpenSearch Service 索引。

1. 選擇**編輯/預覽**。

1. 選擇**儲存**以儲存並關閉資料集。

## 新增 OpenSearch Service 資料至分析
<a name="open-analysis-add-dataset-for-es"></a>

在您有可用的 OpenSearch Service 資料集之後，您可以將其新增至 Quick Sight 分析。開始之前，請確定您已有資料集，其中包含您要使用的 OpenSearch Service 資料。

**若要新增 OpenSearch Service 資料至分析**

1. 選擇左側的**分析**。

1. 執行以下任意一項：
   + 若要建立新分析，選擇右側的**新建分析**。
   + 若要新增至現有分析，開啟要編輯的分析。
     + 選擇左上角附近的鉛筆圖示。
     + 選擇**新增資料集**。

1. 選擇您要新增的 OpenSearch Service 資料集。

   如需有關在視覺化中使用 OpenSearch Service 的資訊，請參閱 [使用 OpenSearch Service 的限制](#limitations-for-es)。

1. 如需詳細資訊，請參閱[使用分析](https://docs.aws.amazon.com/quicksight/latest/user/working-with-analyses.html)。

## 使用 OpenSearch Service 的限制
<a name="limitations-for-es"></a>

下列限制會套用至使用 OpenSearch Service 資料集：
+ OpenSearch Service 資料集支援一部分視覺效果類型、排序選項和篩選選項。
+ 若要在使用 OpenSearch Service 資料的已發布儀表板上啟用自動重新整理，OpenSearch Service 資料集必須使用直接查詢。
+ 不支援多個子查詢作業。為了避免在視覺化過程中發生錯誤，請勿將多個欄位新增至欄位區，每次視覺化使用一個或兩個欄位，並避免使用**顏色**欄位區。
+ 不支援自訂 SQL。
+ 不支援跨資料集聯結和自我聯結。
+ 不支援計算欄位。
+ 不支援文字欄位。
+ 不支援「其他」類別。如果您使用具有支援「其他」類別之視覺化的 OpenSearch Service 資料集，請使用視覺效果上的選單停用「其他」類別。

# 使用 Amazon S3 檔案建立資料集
<a name="create-a-data-set-s3"></a>

若要從 Amazon S3 使用一或多個文字檔案 (.csv、.tsv、.clf 或 .elf) 建立資料集，請建立 Quick Sight 的資訊清單。Quick Sight 使用此資訊清單來識別您要使用的檔案，以及匯入檔案所需的上傳設定。使用 Amazon S3 建立資料集時，檔案資料會自動匯入到 [SPICE](spice.md)。

您必須授予 Quick Sight 存取任何要從中讀取檔案的 Amazon S3 儲存貯體。如需授予 Quick Sight AWS 資源存取權的詳細資訊，請參閱 [設定 AWS Amazon Quick Sight 對資料來源的存取](access-to-aws-resources.md)。

**Topics**
+ [

# 支援的 Amazon S3 清單檔案格式
](supported-manifest-file-format.md)
+ [

# 建立 Amazon S3 資料集
](create-a-data-set-s3-procedure.md)
+ [

# 在另一個 AWS 帳戶中使用 S3 檔案的資料集
](using-s3-files-in-another-aws-account.md)

# 支援的 Amazon S3 清單檔案格式
<a name="supported-manifest-file-format"></a>

您可以使用 JSON 資訊清單檔案來指定 Amazon S3 中的檔案，以匯入 Quick Sight。這些 JSON 資訊清單檔案可以使用以下所述的 Quick Sight 格式或《Amazon Redshift 資料庫開發人員指南》中的[使用資訊清單來指定資料檔案](https://docs.aws.amazon.com/redshift/latest/dg/loading-data-files-using-manifest.html)中所述的 Amazon Redshift 格式。 **您不需要使用 Amazon Redshift 來使用 Amazon Redshift 清單檔案格式。

如果您使用 Quick Sight 資訊清單檔案，它必須具有 .json 副檔名，例如 `my_manifest.json`。如果您使用 Amazon Redshift 清單檔案，它可以有任何副檔名。

如果您使用 Amazon Redshift 資訊清單檔案，Quick Sight 會像 Amazon Redshift 一樣處理選用`mandatory`選項。如果找不到相關聯的檔案，Quick Sight 會結束匯入程序並傳回錯誤。

您選取匯入的檔案必須是分隔的文字 (例如，.csv 或 .tsv)、日誌 (.clf) 或延伸日誌 (.elf) 格式，或 JSON (.json)。一個資訊清單檔案中識別的所有個檔案，必須使用相同的檔案格式。另外，它們必須具有相同數量和類型的資料欄。Quick Sight 支援 UTF-8 檔案編碼，但不支援具有位元組順序標記 (BOM) 的 UTF-8。如果您要匯入 JSON 檔案，則對於 `globalUploadSettings`，請指定 `format`，而不是 `delimiter`、`textqualifier` 和 `containsHeader`。

請確定您指定的任何檔案都位於您已授予 Quick Sight 存取權的 Amazon S3 儲存貯體中。如需授予 Quick Sight AWS 資源存取權的詳細資訊，請參閱 [設定 AWS Amazon Quick Sight 對資料來源的存取](access-to-aws-resources.md)。

## Quick Sight 的資訊清單檔案格式
<a name="quicksight-manifest-file-format"></a>

Quick Sight 資訊清單檔案使用以下 JSON 格式。

```
{
    "fileLocations": [
        {
            "URIs": [
                "uri1",
                "uri2",
                "uri3"
            ]
        },
        {
            "URIPrefixes": [
                "prefix1",
                "prefix2",
                "prefix3"
            ]
        }
    ],
    "globalUploadSettings": {
        "format": "JSON",
        "delimiter": ",",
        "textqualifier": "'",
        "containsHeader": "true"
    }
}
```

使用 `fileLocations` 元素中的欄位以指定要匯入的檔案，使用 `globalUploadSettings` 元素中的欄位以指定這些檔案的匯入設定，例如欄位分隔符號。

資訊清單檔案元素如下所述：
+ **fileLocations** – 此元素用於指定要匯入的檔案。您可以使用 `URIs` 和 `URIPrefixes` 陣列其中一個或兩個都用來這樣做。您至少必須在其中之一指定一個值。
  + **URI** – 此陣列用於列出要匯入之特定檔案的 URI。

    Quick Sight 可以存取任何 中的 Amazon S3 檔案 AWS 區域。不過，如果您的 Amazon S3 儲存貯體與 Quick 帳戶所使用的區域不同，您必須使用識別 Amazon S3 儲存貯 AWS 體區域的 URI 格式。

    支援下列格式的 URI。  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-manifest-file-format.html)
  + **URIPrefixes** – 此陣列用於列出 S3 儲存貯體和資料夾的 URI 前綴。指定儲存貯體或資料夾中的所有檔案都會匯入。Quick Sight 會以遞迴方式從子資料夾擷取檔案。

    Quick Sight 可以存取任何 中的 Amazon S3 儲存貯體或資料夾 AWS 區域。 AWS 區域 如果 S3 儲存貯體與您的快速帳戶使用不同，請務必使用識別 S3 儲存貯體的 URI 字首格式。

    支援下列格式的 URI 前綴。  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-manifest-file-format.html)
+ **globalUploadSettings** – (選用) 此元素用於指定 Amazon S3 檔案的匯入設定，例如欄位分隔符號。如果未指定此元素，Quick Sight 會使用本節中欄位的預設值。
**重要**  
對於日誌 (.clf) 和延伸日誌 (.elf) 檔案，此區段中只有 **format** 欄位適用，因此您可以略過其他欄位。如果您選擇包含它們，則會忽略它們的值。
  + **format** – (選用) 指定要匯入的檔案的格式。有效格式為 **CSV**、**TSV**、**CLF**、**ELF** 和 **JSON**。預設值為 **CSV**。
  + **delimiter** – (選用) 指定檔案欄位分隔符號。這必須映射到 `format` 欄位中指定的檔案類型。有效格式為 .csv 檔案的逗號 (**,**) 和 .tsv 檔案的製表符 (**\$1t**)。預設值為逗號 (**,**)。
  + **textqualifier** – (選用) 指定檔案文字限定詞。有效格式為單引號 (**'**)、雙引號 (**\$1"**)。對於 JSON 中的雙引號，前導反斜線是必要的逸出字元。預設值為雙引號 (**\$1"**)。如果您的文字不需要文字限定詞，請勿加入此屬性。
  + **containsHeader** – (選用) 指定檔案是否有標題列。有效格式為 **true** 或 **false**。預設值為 **true**。

### Quick Sight 的資訊清單檔案範例
<a name="quicksight-manifest-file-examples"></a>

以下是已完成 Quick Sight 資訊清單檔案的一些範例。

以下範例顯示的資訊清單檔案中識別兩個要匯入的特定 .csv 檔案。這些檔案使用雙引號作為文字限定詞。因為可接受預設值，所以略過 `format`、`delimiter` 和 `containsHeader` 欄位。

```
{
    "fileLocations": [
        {
            "URIs": [
                "https://yourBucket.s3.amazonaws.com/data-file.csv",
                "https://yourBucket.s3.amazonaws.com/data-file-2.csv"
            ]
        }
    ],
    "globalUploadSettings": {
        "textqualifier": "\""
    }
}
```

以下範例顯示的資訊清單檔案，可識別一個要匯入的特定 .tsv 檔案。此檔案還包含位在另一個 AWS 區域的儲存貯體，內含要匯入的其他 .tsv 檔案。因為可接受預設值，所以略過 `textqualifier` 和 `containsHeader` 欄位。

```
{
    "fileLocations": [
        {
            "URIs": [
                "https://s3.amazonaws.com/amzn-s3-demo-bucket/data.tsv"
            ]
        },
        {
            "URIPrefixes": [
                "https://s3-us-east-1.amazonaws.com/amzn-s3-demo-bucket/"
            ]
        }
    ],
    "globalUploadSettings": {
        "format": "TSV",
        "delimiter": "\t"
    }
}
```

以下範例識別的兩個儲存貯體包含要匯入的 .clf 檔案。一個與 Quick 帳戶 AWS 區域 位於相同的 ，另一個位於不同的 AWS 區域。因為 `delimiter`、`textqualifier` 和 `containsHeader` 欄位不適用於日誌檔，所以會略過。

```
{
    "fileLocations": [
        {
            "URIPrefixes": [
                "https://amzn-s3-demo-bucket1.your-s3-url.com",
                "s3://amzn-s3-demo-bucket2/"
            ]
        }
    ],
    "globalUploadSettings": {
        "format": "CLF"
    }
}
```

以下範例使用 Amazon Redshift 格式來標識要匯入的 .csv 檔案。

```
{
    "entries": [
        {
            "url": "https://amzn-s3-demo-bucket.your-s3-url.com/myalias-test/file-to-import.csv",
            "mandatory": true
        }
    ]
}
```

以下範例使用 Amazon Redshift 格式來標識兩個要匯入的 JSON 檔案。

```
{
    "fileLocations": [
        {
            "URIs": [
                "https://yourBucket.s3.amazonaws.com/data-file.json",
                "https://yourBucket.s3.amazonaws.com/data-file-2.json"
            ]
        }
    ],
    "globalUploadSettings": {
        "format": "JSON"
    }
}
```

# 建立 Amazon S3 資料集
<a name="create-a-data-set-s3-procedure"></a>

**若要建立 Amazon S3 資料集**

1. 檢查 [資料來源配額](data-source-limits.md) 以確保您的目標檔案集不超過資料來源配額。

1. 使用[支援的 Amazon S3 清單檔案格式](supported-manifest-file-format.md)指定的其中一種格式建立資訊清單檔案，以識別您想要匯入的文字檔案。

1. 請將清單檔案儲存到本機目錄，或上傳到 Amazon S3。

1. 在快速入門頁面上，選擇**資料**。

1. 在**資料**頁面上，選擇**建立**然後**新增資料集**。

1. 選擇 Amazon S3 圖示，然後選擇**下一步**。

1. 針對 **Data source name (資料來源名稱)**，輸入資料來源的描述。此名稱應該協助您區分此資料來源和其他資料來源。

1. 針對 **Upload a manifest file (上傳資訊清單檔案)**，執行以下其中一個動作：
   + 若要使用本機資訊清單檔案，請選擇 **Upload (上傳)**，然後選擇 **Upload a JSON manifest file (上傳 JSON 資訊清單檔案)**。針對 **Open (開啟)**，選擇檔案，然後選擇 **Open (開啟)**。
   + 若要使用 Amazon S3 的清單檔案，請選擇 **URL**，並輸入清單檔案的 URL。若要在 Amazon S3 主控台尋找既有清單檔案的 URL，請瀏覽到適當的檔案並選擇。這時會顯示屬性面板，包含連結 URL。您可以複製 URL 並將其貼到 Quick Sight 中。

1. 選擇**連線**。

1. 為了確保連線完成，請選擇 **Edit/Preview data (編輯/預覽資料)**。否則，請選擇**視覺化**，以直接依資料現狀來建立分析。

   如果選擇**編輯/預覽資料**，您可以在準備資料時指定資料集名稱。否則，資料集名稱將與清單檔案的名稱相符。

   如要進一步了解資料準備，請參閱[在 Amazon Quick Sight 中準備資料](preparing-data.md)。

## 根據多個 Amazon S3 檔案建立資料集
<a name="data-sets-based-on-multiple-s3-files"></a>

您可以使用數種方法之一，在 Quick Sight 中合併或合併來自 Amazon S3 儲存貯體的檔案：
+ **使用清單檔案來結合檔案** – 在這種情況下，檔案必須有相同的欄位 (資料欄) 數量。在檔案中相同位置的欄位之間，資料類型必須相符。例如，每個檔案中的第一個欄位必須是相同的資料類型。第二個欄位、第三個欄位，以此類推，也都必須如此。Quick Sight 會從第一個檔案取得欄位名稱。

  資訊清單中必須明確列出檔案。不過，檔案不需要在相同的 Amazon S3 儲存貯體內。

  此外，檔案必須遵循[支援的 Amazon S3 清單檔案格式](supported-manifest-file-format.md)中所述的規則。

  如需有關使用資訊清單來結合檔案的詳細資訊，請參閱[使用 Amazon S3 檔案建立資料集](create-a-data-set-s3.md)。
+ **在不使用清單檔案的情況下合併檔案** – 若要將多個檔案合併成一個檔案，而不必在清單檔案中將其逐個列出，您可以使用 Athena。如果使用這個方法，您可以直接查詢文字檔案，就像在資料庫的表格中一樣。如需詳細資訊，請參閱大數據部落格中的文章：[Analyzing data in Amazon S3 using Athena](https://aws.amazon.com/blogs/big-data/analyzing-data-in-s3-using-amazon-athena/)。
+ **匯入之前使用指令碼來附加檔案** – 您可以使用為了上傳之前合併檔案而設計的指令碼。

# 在另一個 AWS 帳戶中使用 S3 檔案的資料集
<a name="using-s3-files-in-another-aws-account"></a>

使用本節來了解如何設定安全性，以便您可以使用 Quick Sight 存取另一個 AWS 帳戶中的 Amazon S3 檔案。

為了讓您存取另一個帳戶中的檔案，另一個帳戶的擁有者必須先設定 Amazon S3 來授予您讀取檔案的許可。然後，在 Quick Sight 中，您必須設定與您共用的儲存貯體存取權。在這兩個步驟完成之後，您可以使用清單檔案來建立資料集。

**注意**  
 若要存取公開共用的檔案，您不需要設定任何特殊的安全性。不過，您仍然需要資訊清單檔案。

**Topics**
+ [

## 設定 Amazon S3 以允許從不同的快速帳戶存取
](#setup-S3-to-allow-access-from-a-different-quicksight-account)
+ [

## 設定 Quick Sight 以存取另一個 AWS 帳戶中的 Amazon S3 檔案
](#setup-quicksight-to-access-S3-in-a-different-account)

## 設定 Amazon S3 以允許從不同的快速帳戶存取
<a name="setup-S3-to-allow-access-from-a-different-quicksight-account"></a>

使用本節了解如何在 Amazon S3 檔案中設定許可，以便 Quick Sight 可以存取另一個 AWS 帳戶中的許可。

如需從您的 Quick Sight 帳戶存取另一個帳戶的 Amazon S3 檔案的資訊，請參閱 [設定 Quick Sight 以存取另一個 AWS 帳戶中的 Amazon S3 檔案](#setup-quicksight-to-access-S3-in-a-different-account)。如需 S3 許可的詳細資訊，請參閱[管理 Amazon S3 資源的存取許可](https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html)和[如何設定物件的許可？](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/set-object-permissions.html)

您可以使用下列程序從 S3 主控台來設定此存取。或者，您可以使用 AWS CLI 或編寫指令碼來授予許可。如果您有許多檔案要分享，您可改以在 `s3:GetObject` 動作上建立 S3 儲存貯體政策。若要使用儲存貯體政策，請將政策新增到儲存貯體許可，而不是檔案許可。如需有關儲存貯體政策的資訊，請參閱《Amazon S3 開發人員指南》**中的[儲存貯體政策範例](https://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html)。

**從 S3 主控台的不同快速帳戶設定存取權**

1. 取得您要與其共用之 AWS 帳戶電子郵件的電子郵件地址。或者，您可以取得及使用正式的使用者 ID。如需有關正式使用者 ID 的詳細資訊，請參閱**《AWS 一般參考》中的 [AWS 帳戶識別符](https://docs.aws.amazon.com/general/latest/gr/acct-identifiers.html)。

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/) 開啟 Amazon S3 主控台。

1. 尋找您要與 Quick Sight 共用的 Amazon S3 儲存貯體。選擇**許可**。

1. 選擇**新增帳戶**，然後為您要共用 AWS 的帳戶輸入電子郵件地址，或貼上正式使用者 ID。此電子郵件地址應該是 AWS 帳戶的主要地址。

1. 對於**讀取儲存貯體許可**和**列出物件**，選擇**是**。

   選擇 **Save (儲存)** 以確認。

1. 找到您要共享的檔案，並開啟檔案的許可設定。

1. 輸入您要與其共用之 AWS 帳戶的電子郵件地址或正式使用者 ID。此電子郵件地址應該是 AWS 帳戶的主要電子郵件地址。

1. 為 Quick Sight 需要存取的每個檔案啟用**讀取物件**許可。

1. 通知 Quick 使用者檔案現已可供使用。

## 設定 Quick Sight 以存取另一個 AWS 帳戶中的 Amazon S3 檔案
<a name="setup-quicksight-to-access-S3-in-a-different-account"></a>

使用本節了解如何設定 Quick Sight，以便您可以存取另一個 AWS 帳戶中的 Amazon S3 檔案。如需允許其他人從其快速帳戶存取 Amazon S3 檔案的資訊，請參閱 [設定 Amazon S3 以允許從不同的快速帳戶存取](#setup-S3-to-allow-access-from-a-different-quicksight-account)。

使用下列程序，從 Quick Sight 存取另一個帳戶的 Amazon S3 檔案。另一個 AWS 帳戶中的使用者必須與您共用其 Amazon S3 儲存貯體中的檔案，您才能使用此程序。

**從 Quick Sight 存取另一個帳戶的 Amazon S3 檔案**

1. 確認其他 AWS 帳戶中的使用者已將您的帳戶讀取和寫入許可授予有問題的 S3 儲存貯體。

1. 選擇您的設定檔圖示，然後選擇**管理 Quick Sight**。

1. 選擇**安全和許可**。

1. 在 **Quick Sight 存取 AWS 服務**下，選擇**管理**。

1. 選擇**選取 S3 儲存貯體**。

1. 在**選取 Amazon S3 儲存貯體**畫面，選擇**您在整個 AWS內可以存取的 S3 儲存貯體**標籤。

   預設標籤名為**連結至 Quick Sight 帳戶的 S3 儲存貯**體。它會顯示您的快速帳戶可存取的所有儲存貯體。

1. 執行以下任意一項：
   + 如果要新增您有權使用的所有儲存貯體，請選擇**從其他 AWS 帳戶選擇可存取的儲存貯體**。
   + 如果您有一或多個要新增的 Amazon S3 儲存貯體，請輸入其名稱。它必須完全符合 Amazon S3 儲存貯體的唯一名稱。

     如果您沒有適當的許可，您會看到此訊息：「我們無法連線至此 S3 儲存貯體。請確定您指定的任何 S3 儲存貯體都與用來建立此 Quick AWS 帳戶的帳戶相關聯。」 如果您沒有帳戶許可或 Quick Sight 許可，則會顯示此錯誤訊息。
**注意**  
若要使用 Amazon Athena，Quick Sight 需要存取 Athena 使用的 Amazon S3 儲存貯體。  
您可以在此處逐一新增它們，或使用**從其他 AWS 帳戶選擇可存取的儲存貯**體選項。

1. 選擇 **Select buckets (選取儲存貯體)** 以確認您的選擇。

1. 根據 Amazon S3 建立新的資料集，並上傳您的清單檔案。如需 Amazon S3 資料集的詳細資訊，請參閱 [使用 Amazon S3 檔案建立資料集](create-a-data-set-s3.md)。

# 使用 Apache Spark 建立資料來源
<a name="create-a-data-source-spark"></a>

您可以使用 Quick Sight 直接連線至 Apache Spark，也可以透過 Spark SQL 連線至 Spark。您可以使用查詢結果，或直接連結至資料表或檢視，在 Quick Sight 中建立資料來源。您可以透過 Spark 直接查詢資料，或將查詢結果匯入 [SPICE](spice.md)。

使用 Quick Sight 搭配 Spark 產品之前，您必須設定 Spark for Quick Sight。

Quick Sight 需要使用 LDAP 來保護和驗證您的 Spark 伺服器，這適用於 Spark 2.0 版或更新版本。如果 Spark 設定為允許未經驗證的存取，Quick Sight 會拒絕與伺服器的連線。若要使用 Quick Sight 做為 Spark 用戶端，您必須設定 LDAP 身分驗證以使用 Spark。

Spark 文件包含如何這樣設定的相關資訊。若要開始，您需要設定它來啟用透過 HTTPS 的前端 LDAP 驗證。如需 Spark 的一般資訊，請參閱 [Apache Spark 網站](http://spark.apache.org/)。如需 Spark 和安全性的具體資訊，請參閱 [Spark 安全性文件](http://spark.apache.org/docs/latest/security.html)。

若要確定您已為 Quick Sight 存取設定伺服器，請遵循 中的指示[網路和資料庫組態需求](configure-access.md)。

# 在 Quick Sight 中使用 Databricks
<a name="quicksight-databricks"></a>

使用本節了解如何從 Quick Sight 連線至 Databricks。

**若要連線至 Databricks**

1. 首先建立新的資料集。從左側的導覽窗格中選擇**資料**。

1. 選擇**建立**，然後選擇**新資料集**。

1. 選擇 **Databricks** 資料來源卡片。

1. 對於**資料來源名稱**，為 Databricks 資料來源連線輸入一個描述性名稱，例如 `Databricks CS`。因為您可以透過與 Databricks 的連線建立許多資料集，因此最好保持名稱簡單。

1. 對於**連線類型**，選取您正在使用的網路類型。
   + **公共網路** – 如果您的資料是公開共用的。
   + **VPC** – 如果您的資料位於 VPC 內。
**注意**  
如果您正在使用 VPC，但沒有看到它列出，請洽詢管理員。

1.  對於**資料庫伺服器**，輸入 Databricks 連線詳細資訊中指定的**工作區主機名稱**。

1.  對於 **HTTP 路徑**，輸入 Databricks 連線詳細資訊中指定的 **spark 執行個體的部分 URL**。

1.  在**連接埠**中，輸入 Databricks 連線詳細資訊中指定的**連接埠**。

1.  在**使用者名稱**和**密碼**中，輸入您的連線憑證。

1.  若要驗證連線是否正常運作，請按一下**驗證連線**。

1.  若要完成並建立資料來源，請按一下**建立資料來源**。

## 新增 Databricks 的 Quick Sight 資料集
<a name="quicksight-databricks-create-dataset"></a>

當您有 Databricks 資料的現有資料來源連線之後，可以建立 Databricks 資料集以用於分析。

**若要使用 Databricks 建立資料集**

1. 選擇左側**的資料**，然後向下捲動以尋找 Databricks 連線的資料來源卡。如果您有許多資料來源，可以使用頁面頂端的搜尋列來尋找名稱部分相符的資料來源。

1. 選擇 **Databricks** 資料來源卡片，然後選擇**建立資料集**。

1. 若要指定要連線到的資料表，請先選取要使用的型錄和結構描述。接下來，在**資料表**中選取您要使用的資料表。如果您想使用自己的 SQL 陳述式，請選取**使用自訂 SQL**。

1. 選擇**編輯/預覽**。

1. (選用) 若要新增更多資料，請執行下列步驟：

   1. 選擇右上角的**新增資料**。

   1. 若要連線到不同的資料，請選擇**切換資料來源**，然後選擇不同的資料集。

   1. 依照 UI 提示完成新增資料。

   1. 將新資料新增至相同的資料集後，選擇**設定此聯結** (兩個紅點)。為每個額外的資料表設定一個聯結。

   1. 若要新增計算欄位，選擇**新增計算欄位**。

   1. 若要從 SageMaker AI 新增模型，選擇**使用 SageMaker 擴增**。此選項僅適用於 Quick Enterprise Edition。

   1. 清除要省略之任何欄位的核取方塊。

   1. 更新要變更的任何資料類型。

1. 完成後，選擇**儲存**以儲存並關閉資料集。

## 連接 Databricks 的 Quick Sight 管理員指南
<a name="quicksight-databricks-administration-setup"></a>

您可以使用 Amazon Quick Sight 連線到 Databricks AWS。無論您透過 AWS Marketplace 還是 Databricks 網站 AWS 註冊 ，都可以連線到 Databricks。

在您可以連線到 Databricks 之前，請先建立或識別連線所需的現有資源。使用本節協助您收集從 Quick Sight 連線到 Databricks 所需的資源。
+ 若要了解如何獲取 Databricks 連線詳細資訊，請參閱 [Databricks ODBC 和 JDBC 連線](https://docs.databricks.com/integrations/jdbc-odbc-bi.html#get-server-hostname-port-http-path-and-jdbc-url)。
+ 若要了解如何取得 Databricks 憑證 (個人存取權杖或使用者名稱和密碼) 以進行驗證，請參閱 [Databricks 文件](https://docs.databricks.com/index.html)中的[身分驗證要求](https://docs.databricks.com/integrations/bi/jdbc-odbc-bi.html#authentication-requirements)。

  若要連線至 Databricks 叢集，您需要 `Can Attach To` 和 `Can Restart` 許可。這些許可在資料庫中管理。如需詳細資訊，請參閱 [Databricks 文件](https://docs.databricks.com/index.html)中的[許可要求](https://docs.databricks.com/integrations/jdbc-odbc-bi.html#permission-requirements)。
+ 如果您要設定 Databricks 的私有連線，您可以進一步了解如何設定 VPC 以搭配 Quick Sight 使用，請參閱 Quick Sight 文件中的[使用 Amazon Quick Sight 連線至 VPC](https://docs.aws.amazon.com/quicksight/latest/user/working-with-aws-vpc.html)。如果連線不可見，請與系統管理員確認網路是否已開啟 [Amazon Route 53 的傳入端點](https://docs.aws.amazon.com/quicksight/latest/user/vpc-route-53.html)。如果 Databricks 工作區的主機名稱使用公用 IP，則對於 Route 53 安全群組，需要有 DNS TCP 和 DNS UDP 傳入及傳出規則，才能允許流量通過 DNS 連接埠 53。系統管理員需要建立具有 2 個傳入規則的安全群組：一個用於連接埠 53 到 VPC CIDR 的 DNS(TCP)，另一個用於連接埠 53 到 VPC CIDR 的 DNS(UDP)。

  如需使用 PrivateLink 而非公有連線的 Databricks 相關詳細資訊，請參閱 [Databricks 文件](https://docs.databricks.com/index.html)中的 [Enable AWS PrivateLink](https://docs.databricks.com/administration-guide/cloud-configurations/aws/privatelink.html)。

# 使用 Google BigQuery 建立資料集
<a name="quicksight-google-big-query"></a>

**注意**  
當 Quick Sight 使用和傳輸從 接收的資訊時Google APIs，會遵守 [Google API Services 使用者資料政策](https://developers.google.com/terms/api-services-user-data-policy)。

Google BigQuery 是客戶可用來管理與分析其資料的全受管無伺服器資料倉儲。Google BigQuery 客戶可使用 SQL 來查詢其資料，無需管理任何基礎設施。

## 建立與 Google BigQuery 的資料來源連線
<a name="quicksight-google-big-query-connect"></a>

**先決條件**

開始之前，請確定您擁有下列項目。這些都是建立與 Google BigQuery 的資料來源連線所需的項目：
+ **專案 ID**：與您 Google 帳戶相關聯的專案 ID。若要尋找，請導覽至 Google Cloud主控台，然後選擇您要連線至 Quick Sight 的專案名稱。複製顯示在新視窗中的專案 ID，並記錄以供日後使用。
+ **資料集區域**：Google BigQuery 專案所在的 Google 區域。若要尋找資料集區域，請導覽至至 Google BigQuery 主控台，然後選擇 **Explorer**。找到並展開您要連線的專案，然後選擇您想要使用的資料集。資料集區域會顯示在開啟的快顯視窗中。
+ **Google 帳戶登入憑證**：Google 帳戶的登入憑證。如果您沒有這項資訊，請聯絡您的 Google 帳戶管理員。
+ **Google BigQuery 許可** – 若要將Google您的帳戶與 Quick Sight 連線，請確定Google您的帳戶具有下列許可：
  + 在 `Project` 層級的 `BigQuery Job User`。
  + 在 `Dataset` 或 `Table` 層級的 `BigQuery Data Viewer`。
  + 在 `Project` 層級的 `BigQuery Metadata Viewer`。

如需如何擷取先前先決條件資訊的資訊，請參閱[使用 Google Cloud BigQuery和 Quick Sight 釋放統一商業智慧的力量](https://aws.amazon.com/blogs/business-intelligence/unlock-the-power-of-unified-business-intelligence-with-google-cloud-bigquery-and-amazon-quicksight/)。

使用下列程序將您的 Quick 帳戶與您的Google BigQuery資料來源連線。

**從 Quick Sight 建立新的Google BigQuery資料來源連線**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 從左側導覽窗格中，選擇**資料**。

1. 選擇**建立**，然後選擇**新資料集**

1. 選擇 **Google BigQuery** 圖磚。

1. 新增您先前在先決條件步驟中記錄的資料來源詳細資訊：
   + **資料來源名稱**：資料來源的名稱。
   + **專案 ID**：Google Platform 專案 ID。此欄位區分大小寫。
   + **資料集區域**：您想要連線之專案的 Google 雲端平台資料集區域。

1. 選擇**登入**。

1. 在開啟的新視窗中，輸入您想要連線之 Google 帳戶的登入憑證。

1. 選擇**繼續**將 Quick Sight 存取權授予 Google BigQuery。

1. 建立新的資料來源連線後，請繼續下列程序中的 [Step 4](#gbq-step-4)。

## 為 新增 Quick Sight 資料集 Google BigQuery
<a name="quicksight-google-big-query-create"></a>

使用 Google BigQuery 建立資料來源連線後，您可以建立 Google BigQuery 資料集，以進行分析。使用 Google BigQuery 的資料集只能存放在 SPICE 中。

**使用 Google BigQuery 建立資料集**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 從開始頁面，選擇**資料**。

1. 選擇**建立**，然後選擇**新資料集**

1. 選擇**Google BigQuery**圖磚，然後選擇**建立資料集**。

1. <a name="gbq-step-4"></a>對於**資料表**，請執行下列其中一項操作：
   + 選擇您想要使用的資料表。
   + 選擇**使用自訂 SQL**，以使用您自己的個人 SQL 陳述式。如需在 Quick Sight 中使用自訂 SQL 的詳細資訊，請參閱 [使用 SQL 自訂資料](adding-a-SQL-query.md)。

1. 選擇**編輯/預覽**。

1. (選用) 在開啟的**資料準備**頁面中，您可以使用計算欄位、篩選條件和聯結，將自訂新增至資料。

1. 完成變更後，選擇**儲存**以儲存，並關閉資料集。

# 使用 Google 試算表資料來源建立資料集
<a name="create-a-dataset-google-sheets"></a>

Google 試算表是 Web 型試算表應用程式，可讓使用者即時建立、編輯資料並進行協作。它具備一套完整的函數和公式，可作為商業智慧和分析的強大資料來源。使用者可以有效率地組織、分析和分享洞察，而其無縫協作功能，使其成為處理資料驅動專案團隊的理想平台。

## Amazon Quick 中的管理員組態
<a name="google-sheets-admin-config"></a>

Amazon Quick 管理員需要執行一次性設定，才能將 Google Sheets 啟用為資料來源。如需詳細說明和重要考量，請參閱[部落格](https://aws.amazon.com//blogs/business-intelligence/transform-your-google-sheets-data-into-powerful-analytics-with-amazon-quicksight/)。

## 使用 Google 試算表資料來源建立資料集
<a name="google-sheets-create-dataset"></a>

依照下列程序，以 Google 試算表資料來源建立資料集。

**使用 Google 試算表資料來源建立資料集**

1. 在快速入門頁面中，選擇**資料集**。

1. 在**資料集**頁面上，選擇**新資料集**。

1. 選擇 **Google 工作表**。

1. 選擇資料來源的名稱，然後選擇**連線**。

1. 系統將您重新導向至 Google 的登入頁面時，請執行下列動作：

   1. 輸入您的 Google 帳戶憑證，然後選擇**下一步**。

   1. 檢閱許可以授權 AWS 您的帳戶與 Google Sheets 連線，然後選擇**繼續**。

1. 在**選擇資料表**選單中，找到您的資料。選單會顯示 Google 帳戶中的所有資料夾、子資料夾、工作表和索引標籤。若要顯示索引標籤，請從顯示的清單中選取工作表。

1. 選取您想要使用的索引標籤。

1. 選擇**編輯/預覽資料**以導覽至資料準備頁面。選擇**新增資料**以包含任何其他索引標籤。

1. 設定聯結，然後選取**發佈和視覺化**，以 Quick Sight 分析您的 Google Sheets 資料。

**注意**  
此連接器僅支援 SPICE 功能。
如果您的 OAuth 權杖過期 (於擷取錯誤報告中或在建立新資料集時顯示)，請在資料來源上選擇**編輯**並更新以重新授權。

# 使用 Apache Impala 資料來源建立資料集
<a name="create-a-dataset-impala"></a>

Apache Impala 是一種高效能的大量平行處理 (MPP) SQL 查詢引擎，旨在於 Apache Hadoop 上原生執行。使用以下程序在 Quick Sight 和 Apache Impala 之間建立安全連線。

Quick Sight 和 Apache Impala 之間的所有流量都會使用 SSL 加密。Quick Sight 支援 Impala 連線的標準使用者名稱和密碼身分驗證。

若要建立連線，您需要在 Impala 執行個體中設定 SSL 設定、準備身分驗證憑證、使用 Impala 伺服器詳細資訊在 Quick Sight 中設定連線，以及驗證連線以確保安全的資料存取。

**使用 Apache Impala 資料來源建立資料集**

1. 在快速入門頁面上，選擇**資料**。

1. 在**資料**頁面上，選擇**建立**。

1. 選擇**資料來源**。

1. 選擇 **Impala**，然後選擇**下一步**。

1. 輸入資料來源的名稱。

1. 對於公有連線：

   1. 輸入**資料庫伺服器**、**HTTP 路徑**、**連接埠**、**使用者名稱**和**密碼**的連線詳細資訊。

   1. 驗證成功後，請選擇**建立資料來源**。

1. 對於私有連線：

   1. 與您的管理員溝通，在輸入連線詳細資訊之前設定 VPC 連線。

     您或您的管理員可以在 [Quick 中設定 VPC 連線](vpc-creating-a-connection-in-quicksight.md)。依預設會啟用 SSL，以確保安全的資料傳輸。如果您遇到連線驗證錯誤，請驗證您的連線與 VPC 詳細資訊。

     如果問題持續發生，請洽詢您的管理員，以確認您的憑證授權單位包含在 Quick Sight 的[核准憑證清單中](configure-access.md#ca-certificates)。

1. 在**選擇資料表**選單中，您可以：

   1. 選擇特定的結構描述或資料表，然後選擇**選取**。

   1. 選擇**使用自訂 SQL**，以寫入自己的 SQL 查詢。

1. 完成選取後，系統會將您重新導向至資料準備頁面。對資料進行任何調整，然後選擇**發佈和視覺化**，以在 Quick Sight 中分析 Impala 資料。

**注意**  
此連接器支援：  
使用者名稱和密碼身分驗證
公有與私有連線
資料表探索和自訂 SQL 查詢
擷取期間的完整資料重新整理
僅限 SPICE 儲存空間

# 使用 Microsoft Excel 檔案建立資料集
<a name="create-a-data-set-excel"></a>

若要使用 Microsoft Excel 檔案資料來源建立資料集，請從本機或網路磁碟機上傳 .xlsx 檔案。資料會匯入 [SPICE](spice.md)。

 如需使用 Amazon S3 資料來源建立新的 Amazon S3 資料集的詳細資訊，請參閱 [使用現有的 Amazon S3 資料來源建立資料集](create-a-data-set-existing.md#create-a-data-set-existing-s3) 或 [使用 Amazon S3 檔案建立資料集](create-a-data-set-s3.md)。

**以 Excel 檔案為基礎建立資料集**

1. 檢查 [資料來源配額](data-source-limits.md) 以確保您的目標檔案不超過資料來源配額。

1. 在快速入門頁面上，選擇**資料**。

1. 在**資料**頁面上，選擇**建立**然後**新增資料集**。

1. 選擇 **Upload a file (上傳檔案)**。

1. 在 **Open (開啟)** 對話方塊中，選擇檔案，然後選擇 **Open (開啟)**。

   檔案必須等於或小於 1 GB，才能上傳至 Quick Sight。

1. 如果 Excel 檔案包含多個工作表，請選擇要匯入的工作表。這可以在稍後準備資料時再變更。

1. 
**注意**  
在接下來的畫面中，您有很多次機會可準備資料。每次都會帶您前往 **Prepare Data (準備資料)** 畫面。此畫面與您在資料匯入完成後可存取的畫面相同。即使上傳已完成，此畫面仍可讓您變更上傳設定。

    選擇 **Select (選取)** 以確認您的設定。或者，您可以選擇 **Edit/Preview data (編輯/預覽資料)** 立即準備資料。

   下個畫面會顯示資料預覽。您無法直接變更資料預覽。

1. 如果資料標題和內容看起來不正確，請選擇**編輯設定和準備資料**，以更正檔案上傳設定。

   否則請選擇 **Next (下一步)**。/

1. 在 **Data Source Details (資料來源詳細資訊)** 畫面，您可以選擇 **Edit/Preview data (編輯/預覽資料)**。您可以在**準備資料**畫面上指定資料集名稱。

   如果您不需要準備資料，您可以選擇直接依資料現狀來建立分析。選擇 **Visualize (視覺化)**。這樣做會以來源檔案的相同名稱來命名資料集，並帶您前往**分析**畫面。若要進一步了解資料準備和 excel 上傳設定，請參閱[在 Amazon Quick Sight 中準備資料](preparing-data.md)。

**注意**  
如果您在任何時候想要變更檔案，例如新增欄位，您必須在 Microsoft Excel 中進行變更，並使用 Quick Sight 中的更新版本建立新的資料集。如需有關變更資料集可能產生之影響的詳細資訊，請參閱 [編輯資料集時應考量的事項](edit-a-data-set.md#change-a-data-set)。

# 使用 Presto 建立資料來源
<a name="create-a-data-source-presto"></a>

Presto (或 PrestoDB) 是開放原始碼的分散式 SQL 查詢引擎，可對任何規模的資料進行快速的分析查詢。支援非關聯式和關聯式資料來源。支援的非關聯式資料來源包括 Hadoop 分散式檔案系統 (HDFS)、Amazon S3、Cassandra、MongoDB 和 HBase。支援的關聯式資料來源包括 MySQL、PostgreSQL、Amazon Redshift、Microsoft SQL Server 和 Teradata。

如需 Presto 的詳細資訊，請參閱以下內容：
+ [Presto 簡介](https://aws.amazon.com/big-data/what-is-presto/)，網站上 Presto 的描述 AWS 。
+ 《Amazon EMR 發布指南》**中的[使用 Amazon 彈性 MapReduce (EMR) 建立 Presto 叢集](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-presto.html)。
+ 如需 Presto 的一般資訊，請參閱 [Presto 文件](https://trino.io/docs/current/)。

您透過 Presto 查詢引擎執行的查詢結果可以轉換為 Quick Sight 資料集。Presto 會在後端資料庫處理分析查詢。然後，它會將結果傳回給 Quick Sight 用戶端。您可以透過 Presto 直接查詢資料，或者將查詢結果匯入 SPICE。

使用 Quick Sight 做為 Presto 用戶端來執行查詢之前，請務必設定資料來源設定檔。對於您要存取的每個 Presto 資料來源，您需要 Quick Sight 中的資料來源描述檔。使用下列程序建立對 Presto 的連線。

**從 Amazon Quick Sight （主控台） 建立新的 Presto 資料來源連線**

1. 在 Amazon Quick Sight 開始頁面上，選擇左側**的資料**。

1. 選擇**建立**然後**新增資料集**。

1. 選擇 **Presto** 磚。
**注意**  
在大部分的瀏覽器中，您可以使用 Ctrl-F 或 Cmd-F 開啟搜尋方塊，然後輸入 **presto** 開始尋找。

1. 新增新資料來源的設定：
   + ****資料來源名稱**** – 輸入資料來源連線的描述性名稱。此名稱會出現在**資料集**畫面底部的**現有資料來源**區段中。
   + ****連線類型**** – 選擇連線到 Presto 需要使用的連線類型。

     若要透過公有網路連線，請選擇 **Public network (公有網路)**。

     如果使用公有網絡，即必須使用輕量型目錄存取通訊協定 (LDAP) 保護並驗證您的 Presto 伺服器。如需設定 Presto 使用 LDAP 的資訊，請參閱 Presto 文件中的 [LDAP 身分驗證](https://trino.io/docs/current/security/ldap.html)。

     若要透過虛擬私有連線進行連線，請從 **VPC connections (VPC 連線)** 清單中選擇適當的 VPC 名稱。

     如果您的 Presto 伺服器允許未經驗證的存取， AWS 會要求您使用私有 VPC 連線安全地連接到它。如需設定新 VPC 的資訊，請參閱[在 Amazon Quick Sight 中設定 VPC 連線](working-with-aws-vpc.md)。
   + ****資料庫伺服器**** – 資料庫伺服器的名稱。
   + ****連接埠**** – 伺服器用來接受來自 Amazon Quick Sight 傳入連線的連接埠 
   + ****型錄**** – 您要使用的型錄名稱。
   + ****需要身分驗證**** – (選用) 只有當您選擇 VPC 連線類型時，才會顯示此選項。如果您要連線的 Presto 資料來源不需要驗證，請選擇**否**。否則，請維持預設設定 (**是**)。
   + ****使用者名稱**** – 輸入用於連線到 Presto 的使用者名稱。Quick Sight 會將相同的使用者名稱和密碼套用至使用此資料來源設定檔的所有連線。如果您想要與其他帳戶分開監控 Quick Sight，請為每個 Quick Sight 資料來源設定檔建立 Presto 帳戶。

     您使用的 Presto 帳戶必須能夠存取資料庫，並至少能對一份資料表執行 `SELECT` 陳述式。
   + ****密碼**** – 與 Presto 使用者名稱搭配使用的密碼。Amazon Quick Sight 會加密您在資料來源設定檔中使用的所有登入資料。如需詳細資訊，請參閱[Amazon Quick 中的資料加密](data-encryption.md)。
   + ****啟用 SSL**** – SSL 預設啟用。

1. 選擇 **Validate connection (驗證連線)** 測試設定。

1. 驗證設定後，請選擇 **Create data source (建立資料來源)** 完成連線。

# 搭配 Amazon Quick Sight 使用 Snowflake
<a name="connecting-to-snowflake"></a>

Snowflake 是一種 AI 資料雲端平台，提供包含資料倉儲和協作與資料科學和生成式 AI 的資料解決方案。Snowflake 是具有多個 AWS 認證的[AWS 合作夥伴](https://partners.amazonaws.com/partners/001E000000d8qQcIAI/Snowflake)，其中包括生成式 AI、Machine Learning、資料和分析和零售中的 AWS ISV 能力。

Amazon Quick Sight 提供兩種連線至 Snowflake 的方式：使用您的 Snowflake 登入憑證或 OAuth 用戶端憑證。參閱下列各節，了解這兩種連線方法。

**Topics**
+ [

## 使用登入憑證建立與 Snowflake 的 Quick Sight 資料來源連線
](#create-connection-to-snowflake)
+ [

## 使用OAuth用戶端憑證建立與 Snowflake 的 Quick Sight 資料來源連線
](#create-connection-to-snowflake-oauth-credentials)

## 使用登入憑證建立與 Snowflake 的 Quick Sight 資料來源連線
<a name="create-connection-to-snowflake"></a>

 使用本節了解如何使用 Snowflake 登入憑證在 Quick Sight 和 Snowflake 之間建立連線。Quick Sight 和 Snowflake 之間的所有流量都由 SSL 啟用。

**在 Quick Sight 和 Snowflake 之間建立連線**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 從左側導覽窗格中，選擇**資料**，然後選擇**建立**，然後選擇**新資料集**。

1. 選擇 **Snowflake** 資料來源卡片。

1. 在顯示的快顯視窗中，輸入下列資訊：

   1. 對於**資料來源名稱**，輸入 Snowflake 資料來源連線的描述性名稱。因為您可以透過與 Snowflake 的連線建立許多資料集，因此最好保持名稱簡單。

   1. 對於**連線類型**，選擇您正在使用的網路類型。如果您的資料是公開共用的，選擇**公共網路**。如果您的資料位於 VPC 內，選擇 **VPC**。若要在 Quick Sight 中設定 VPC 連線，請參閱 [在 Amazon Quick 中管理 VPC 連線](vpc-creating-a-connection-in-quicksight.md)。

   1. 對於**資料庫伺服器**，輸入 Snowflake 連線詳細資訊中指定的主機名稱。

1. 對於**資料庫名稱和倉儲**，輸入您想要連線的相應 Snowflake 資料庫和倉儲。

1. 對於**使用者名稱**和**密碼**，輸入您的 Snowflake 憑證。

在 Quick Sight 和 Snowflake 帳戶之間成功建立資料來源連線後，您就可以開始[建立資料集](creating-data-sets.md)包含 Snowflake 資料。

## 使用OAuth用戶端憑證建立與 Snowflake 的 Quick Sight 資料來源連線
<a name="create-connection-to-snowflake-oauth-credentials"></a>

您可以使用OAuth用戶端登入資料，透過 Quick Sight [ APIs](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_CreateDataSource.html) 將 Quick Sight 帳戶與 Snowflake 連線。 *OAuth* 是一種標準授權通訊協定，通常用於具有進階安全需求的應用程式。當您使用 OAuth 用戶端登入資料連線到 Snowflake 時，您可以使用 Quick Sight APIs 和 Quick Sight UI 建立包含 Snowflake 資料的資料集。如需有關在 Snowflake 中設定 OAuth 的詳細資訊，請參閱 [Snowflake OAuth overview](https://docs.snowflake.com/en/user-guide/oauth-snowflake-overview)。

Quick Sight 支援`client credentials`OAuth授予類型。 OAuth用戶端登入資料用於取得machine-to-machine通訊的存取字符。此方法適用於用戶端需要存取託管在伺服器上的資源，而不需使用者介入的情形。

在 OAuth 2.0 的用戶端憑證流程中，有數種用戶端身分驗證機制可用來透過授權伺服器驗證用戶端應用程式。Quick Sight 支援以 Snowflake OAuth 為基礎的用戶端憑證，適用於下列兩種機制：
+ **權杖 (用戶端機密型 OAuth)**：密碼型用戶端身分驗證機制會與用戶端憑證搭配使用，以授予流程，進而使用授權伺服器進行身分驗證。此身分驗證機制需要將 OAuth 用戶端應用程式的 `client_id` 和 `client_secret` 儲存在 Secrets Manager 中。
+ **X509 (用戶端私有金鑰 JWT 型 OAuth)**：X509 憑證金鑰型解決方案為 OAuth 機制提供額外的安全層，其中包含用於身分驗證的用戶端憑證，而非用戶端機密。此方法主要由私有用戶端使用，私有用戶端可在兩個服務之間具有高度信任時，使用此方法對授權伺服器進行身分驗證。

Quick Sight 已驗證與下列身分提供者的OAuth連線：
+ OKTA
+ PingFederate

### 將 OAuth 憑證儲存至 Secrets Manager 中
<a name="create-connection-to-snowflake-oauth-store-credentials"></a>

OAuth 用戶端憑證適用於機器對機器的使用案例，並非為了互動而設計。若要在 Quick Sight 和 Snowflake 之間建立資料來源連線，請在 Secrets Manager 中建立新的秘密，其中包含用戶端OAuth應用程式的登入資料。使用新秘密建立的秘密 ARN 可用於在 Quick Sight 中建立包含 Snowflake 資料的資料集。如需在 Quick Sight 中使用 Secrets Manager 金鑰的詳細資訊，請參閱 [在 Quick 中使用 AWS Secrets Manager 秘密而非資料庫登入資料](secrets-manager-integration.md)。

您需要儲存在 Secrets Manager 中的憑證由您使用的 OAuth 機制決定。X509 型 OAuth 機密需要下列鍵值對：
+ `username`：連線至 Snowflake 時使用的 Snowflake 帳戶使用者名稱
+ `client_id`：OAuth 用戶端 ID
+ `client_private_key`：OAuth 用戶端私有金鑰
+ `client_public_key`：OAuth 用戶端憑證公有金鑰及其加密演算法 (例如 `{"alg": "RS256", "kid", "cert_kid"}`)

權杖型 OAuth 機密需要下列鍵值對：
+ `username`：連線至 Snowflake 時使用的 Snowflake 帳戶使用者名稱
+ `client_id`：OAuth 用戶端 ID
+ `client_secret`：OAuth 用戶端機密

### 使用 Quick Sight APIs 建立 Snowflake OAuth連線
<a name="create-connection-to-snowflake-oauth-example"></a>

在 Secrets Manager 中建立包含 Snowflake OAuth憑證的秘密，並將您的 Quick 帳戶連線至 Secrets Manager 之後，您可以使用 Quick Sight APIs 和 SDK 在 Quick Sight 和 Snowflake 之間建立資料來源連線。下列範例會使用字符OAuth用戶端憑證建立 Snowflake 資料來源連線。

```
{
    "AwsAccountId": "AWSACCOUNTID",
    "DataSourceId": "UNIQUEDATASOURCEID",
    "Name": "NAME",
    "Type": "SNOWFLAKE",
    "DataSourceParameters": {
        "SnowflakeParameters": {
            "Host": "HOSTNAME",
            "Database": "DATABASENAME",
            "Warehouse": "WAREHOUSENAME",
            "AuthenticationType": "TOKEN",
            "DatabaseAccessControlRole": "snowflake-db-access-role-name",
            "OAuthParameters": {
              "TokenProviderUrl": "oauth-access-token-endpoint", 
              "OAuthScope": "oauth-scope",
              "IdentityProviderResourceUri" : "resource-uri",
              "IdentityProviderVpcConnectionProperties" : {
                "VpcConnectionArn": "IdP-VPC-connection-ARN" 
             }
        }
    },
    "VpcConnectionProperties": {
        "VpcConnectionArn": "VPC-connection-ARN-for-Snowflake"
    }
    "Credentials": {
        "SecretArn": "oauth-client-secret-ARN"
    }
}
```

如需有關 CreateDatasource API 操作的詳細資訊，請參閱 [CreateDataSource](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_CreateDataSource.html)。

建立 Quick Sight 和 Snowflake 之間的連線並使用 Quick Sight APIs 或 SDK 建立資料來源後，新的資料來源會顯示在 Quick Sight 中。Quick Sight 作者可以使用此資料來源來建立包含 Snowflake 資料的資料集。顯示的資料表取決於 `CreateDataSource` API 呼叫傳遞的 `DatabaseAccessControlRole` 參數中所使用的角色。如果在建立資料來源連線時未定義此參數，則會使用預設的 Snowflake 角色。

在 Quick Sight 和 Snowflake 帳戶之間成功建立資料來源連線後，您就可以開始[建立資料集](creating-data-sets.md)包含 Snowflake 資料。

# 搭配 Amazon Quick Sight 使用 Starburst
<a name="connecting-to-starburst"></a>

Starburst 是功能齊全的資料湖分析服務，建置在大量平行處理 (MPP) 查詢引擎 Trino 之上。使用本節了解如何從 Amazon Quick Sight 連線至 Starburst。Quick Sight 和 Starburst 之間的所有流量都由 SSL 啟用。如果您要連線至 Starburst Galaxy，您可以登入 Starburst Galaxy 帳戶，然後選擇 **Partner Connect**，然後選擇 **Quick Sight**，以取得必要的連線詳細資訊。您應能夠看到主機名稱和連接埠等資訊。Amazon Quick Sight 支援 Starburst 的基本使用者名稱和密碼身分驗證。

Quick Sight 提供兩種連線至 Starburst 的方式：使用 Starburst 登入資料或OAuth用戶端登入資料。參閱下列各節，了解這兩種連線方法。

**Topics**
+ [

## 使用登入憑證建立與 Starburst 的 Quick Sight 資料來源連線
](#create-connection-to-starburst)
+ [

## 使用OAuth用戶端憑證建立與 Starburst 的 Quick Sight 資料來源連線
](#create-connection-to-starburst-oauth)

## 使用登入憑證建立與 Starburst 的 Quick Sight 資料來源連線
<a name="create-connection-to-starburst"></a>

1. 首先建立新的資料集。從左側導覽窗格中，選擇**資料**，然後選擇**建立**，然後選擇**新資料集**。

1. 選擇 **Starburst** 資料來源卡片。

1. 選擇 Starburst 產品類型。為內部部署 Starburst 執行個體選擇 **Starburst Enterprise**。為託管執行個體選擇 **Starburst Galaxy**。

1. 對於**資料來源名稱**，輸入 Starburst 資料來源連線的描述性名稱。因為您可以透過與 Starburst 的連線建立許多資料集，因此最好保持名稱簡單。

1. 對於**連線類型**，選取您正在使用的網路類型。如果您的資料是公開共用的，選擇**公共網路**。如果您的資料位於 VPC 內，選擇 **VPC**。若要在 Amazon Quick Sight 中設定 VPC 連線，請參閱[在 Amazon Quick Sight 中設定 VPC 連線](https://docs.aws.amazon.com/quicksight/latest/user/vpc-creating-a-connection-in-quicksight.html)。此連線類型不適用於 Starburst Galaxy。

1. 對於**資料庫伺服器**，輸入 Starburst 連線詳細資訊中指定的主機名稱。

1. 對於**型錄**，輸入 Starburst 連線詳細資訊中指定的型錄。

1. 對於**連接埠**，輸入 Starburst 連線詳細資訊中指定的連接埠。Starburst Galaxy 的預設值為 443。

1. 在**使用者名稱**和**密碼**中，輸入您的 Starburst 連線憑證。

1. 若要驗證連線是否正常運作，選擇**驗證連線**。

1. 若要完成並建立資料來源，選擇**建立資料來源**。

**注意**  
Amazon Quick Sight 和 Starburst 之間的連線已使用 Starburst 420 版進行驗證。

在 Quick Sight 和 Starburst 帳戶之間成功建立資料來源連線後，您就可以開始[建立資料集](creating-data-sets.md)包含 Starburst 資料。

## 使用OAuth用戶端憑證建立與 Starburst 的 Quick Sight 資料來源連線
<a name="create-connection-to-starburst-oauth"></a>

您可以使用OAuth用戶端登入資料，透過 Quick Sight [ APIs](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_CreateDataSource.html) 將您的 Quick Sight 帳戶與 Starburst 連線。 *OAuth* 是一種標準授權通訊協定，通常用於具有進階安全需求的應用程式。當您使用OAuth用戶端登入資料連線到 Starburst 時，您可以使用 Quick Sight APIs 和 Quick Sight UI 建立包含 Starburst 資料的資料集。如需在 Starburst 中設定 OAuth 的詳細資訊，請參閱《OAuth 2.0 身分驗證》[https://docs.starburst.io/latest/security/oauth2.html](https://docs.starburst.io/latest/security/oauth2.html)。

Quick Sight 支援`client credentials`OAuth授予類型。 OAuth用戶端登入資料用於取得machine-to-machine通訊的存取字符。此方法適用於用戶端需要存取託管在伺服器上的資源，而不需使用者介入的情形。

在 OAuth 2.0 的用戶端憑證流程中，有數種用戶端身分驗證機制可用來透過授權伺服器驗證用戶端應用程式。Quick Sight 支援以 Starburst OAuth 為基礎的用戶端憑證，適用於下列兩種機制：
+ **權杖 (用戶端機密型 OAuth)**：密碼型用戶端身分驗證機制會與用戶端憑證搭配使用，以授予流程，進而使用授權伺服器進行身分驗證。此身分驗證機制需要將 OAuth 用戶端應用程式的 `client_id` 和 `client_secret` 儲存在 Secrets Manager 中。
+ **X509 (用戶端私有金鑰 JWT 型 OAuth)**：X509 憑證金鑰型解決方案為 OAuth 機制提供額外的安全層，其中包含用於身分驗證的用戶端憑證，而非用戶端機密。此方法主要由私有用戶端使用，私有用戶端可在兩個服務之間具有高度信任時，使用此方法對授權伺服器進行身分驗證。

Quick Sight 已驗證與下列身分提供者的OAuth連線：
+ OKTA
+ PingFederate

### 將 OAuth 憑證儲存至 Secrets Manager 中
<a name="create-connection-to-starburst-oauth-store-credentials"></a>

OAuth 用戶端憑證適用於機器對機器的使用案例，並非為了互動而設計。若要在 Quick Sight 和 Starburst 之間建立資料來源連線，請在 Secrets Manager 中建立新的秘密，其中包含用戶端OAuth應用程式的登入資料。使用新秘密建立的秘密 ARN 可用於在 Quick Sight 中建立包含 Starburst 資料的資料集。如需在 Quick Sight 中使用 Secrets Manager 金鑰的詳細資訊，請參閱 [在 Quick 中使用 AWS Secrets Manager 秘密而非資料庫登入資料](secrets-manager-integration.md)。

您需要儲存在 Secrets Manager 中的憑證由您使用的 OAuth 機制決定。X509 型 OAuth 機密需要下列鍵值對：
+ `username`：連線至 Starburst 時使用的 Starburst 帳戶使用者名稱
+ `client_id`：OAuth 用戶端 ID
+ `client_private_key`：OAuth 用戶端私有金鑰
+ `client_public_key`：OAuth 用戶端憑證公有金鑰及其加密演算法 (例如 `{"alg": "RS256", "kid", "cert_kid"}`)

權杖型 OAuth 機密需要下列鍵值對：
+ `username`：連線至 Starburst 時使用的 Starburst 帳戶使用者名稱
+ `client_id`：OAuth 用戶端 ID
+ `client_secret`：OAuth 用戶端機密

### 使用 Quick Sight APIs 建立 Starburst OAuth連線
<a name="create-connection-to-starburst-oauth-example"></a>

在 Secrets Manager 中建立包含 Starburst OAuth登入資料的秘密，並將您的 Quick 帳戶連線至 Secrets Manager 之後，您可以使用 Quick Sight APIs 和 SDK 在 Quick Sight 和 Starburst 之間建立資料來源連線。下列範例使用權杖 OAuth 用戶端憑證建立 Starburst 資料來源連線。

```
{
    "AwsAccountId": "AWSACCOUNTID",
    "DataSourceId": "DATASOURCEID",
    "Name": "NAME",
    "Type": "STARBURST",
    "DataSourceParameters": {
        "StarburstParameters": {
            "Host": "STARBURST_HOST_NAME",
            "Port": "STARBURST_PORT",
            "Catalog": "STARBURST_CATALOG",
            "ProductType": "STARBURST_PRODUCT_TYPE",     
            "AuthenticationType": "TOKEN",
            "DatabaseAccessControlRole": "starburst-db-access-role-name",
            "OAuthParameters": {
              "TokenProviderUrl": "oauth-access-token-endpoint", 
              "OAuthScope": "oauth-scope",
              "IdentityProviderResourceUri" : "resource-uri",
              "IdentityProviderVpcConnectionProperties" : {
                "VpcConnectionArn": "IdP-VPC-connection-ARN"
            }
        }
    },
    "VpcConnectionProperties": {
        "VpcConnectionArn": "VPC-connection-ARN-for-Starburst"
    },
    "Credentials": {
        "SecretArn": "oauth-client-secret-ARN"
    }
}
```

如需有關 CreateDatasource API 操作的詳細資訊，請參閱 [CreateDataSource](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_CreateDataSource.html)。

建立 Quick Sight 和 Starburst 之間的連線並使用 Quick Sight APIs 或 SDK 建立資料來源後，新的資料來源會顯示在 Quick Sight 中。Quick Sight 作者可以使用此資料來源來建立包含 Starburst 資料的資料集。顯示的資料表取決於 `CreateDataSource` API 呼叫傳遞的 `DatabaseAccessControlRole` 參數中所使用的角色。如果在建立資料來源連線時未定義此參數，則會使用預設的 Starburst 角色。

在 Quick Sight 和 Starburst 帳戶之間成功建立資料來源連線後，您就可以開始[建立資料集](creating-data-sets.md)包含 Starburst 資料。

# 從 SaaS 來源建立資料來源和資料集
<a name="connecting-to-saas-data-sources"></a>

若要分析和報告來自軟體即服務 (SaaS) 應用程式的資料，您可以使用 SaaS 連接器直接從 Quick Sight 存取您的資料。SaaS 連接器使用 OAuth 簡化存取第三方應用程式來源的方式，不需要將資料匯出到中繼資料存放區。

您可以使用雲端或伺服器型的 SaaS 應用程式執行個體。若要連線到公司網路上執行的 SaaS 應用程式，請確定 Quick Sight 可以透過網路存取應用程式的網域名稱系統 (DNS) 名稱。如果 Quick Sight 無法存取 SaaS 應用程式，則會產生不明的主機錯誤。

以下是一些 SaaS 資料使用範例：
+ 使用 Jira 追蹤問題和錯誤的工程團隊可以報告開發人員效率和待處理的錯誤。
+ 行銷組織可以將 Quick Sight 與 Adobe Analytics 整合，以建置合併儀表板，將其線上和 Web 行銷資料視覺化。

請依下列程序連線至透過軟體即服務 (SaaS) 取得的來源，建立資料來源和資料集。在此程序中，我們以連線到 GitHub 作為範例。其他 SaaS 資料來源遵循相同的程序，但畫面 (特別是 SaaS 畫面) 可能不同。

**透過 SaaS 連線至來源以建立資料來源和資料集**

1. 在快速入門頁面上，選擇**資料**。

1. 在**資料**頁面上，選擇**建立**，然後選擇**新增資料集**。

1. 選擇代表您要使用的 SaaS 來源的圖示。例如，您可能選擇 Adobe Analytics 或 GitHub。

   針對使用 OAuth 的來源，連接器會先引導您到 SaaS 網站授權連線，然後您才能建立資料來源。

1. 選擇並輸入資料來源的名稱。如果出現更多的畫面提示，請輸入適當的資訊。然後選擇 **Create data source (建立資料來源)**。

1. 在 SaaS 登入頁面輸入您的登入資料 (如果提示您這樣做)。

1. 出現提示時，請授權 SaaS 資料來源與 Quick Sight 之間的連線。

   下列範例顯示 Quick Sight 的授權，以存取 Quick Sight 文件的 GitHub 帳戶。
**注意**  
Quick Sight 文件現可於 GitHub 取得。如要變更此使用者指南，可以使用 GitHub 直接編輯。

   （選用） 如果您的 SaaS 帳戶是組織帳戶的一部分，在授權 Quick Sight 的過程中，您可能需要請求組織存取權。如果您想要這樣做，請遵循 SaaS 畫面上的提示，然後選擇授權 Quick Sight。

1. 授權完成後，請選擇要連接的表格或物件。然後選擇**選取**。

1. 在**完成資料集建立**畫面上，選擇下列選項之一：
   + 若要儲存資料來源和資料集，請選擇**編輯/預覽資料**。然後，從頂端功能表列選擇 **Save (儲存)**。
   + 若要依資料現況建立資料集和分析，請選擇**視覺化**。此選項會自動儲存資料來源和資料集。

     在建立分析之前，您也可以選擇 **Edit/Preview data (編輯/預覽資料)** 來準備資料。這會開啟資料準備畫面。如需資料準備的詳細資訊，請參閱[準備資料集範例](preparing-data-sets.md)。

以下為目前的限制：
+ SaaS 來源必須支援 Quick Sight 的 REST API 操作，才能與其連線。
+ 如果您要連線至 Jira，URL 必須是公有地址。
+ 如果您沒有足夠的 [SPICE](spice.md) 容量，請選擇 **Edit/Preview data (編輯/預覽資料)**。在資料準備畫面，您可以從資料集移除欄位，以降低其大小，或套用篩選器，以減少傳回的資料列數。如需資料準備的詳細資訊，請參閱[準備資料集範例](preparing-data-sets.md)。

# 從 Salesforce 建立資料集
<a name="create-a-data-set-salesforce"></a>

請依下列程序連線至 Salesforce，並選取報告或物件來提供資料，以建立資料集。

**從報告或物件使用 Salesforce 建立資料集**

1. 檢查 [資料來源配額](data-source-limits.md) 以確定您的目標報告或物件不超過資料來源配額。

1. 在快速入門頁面上，選擇**資料**。

1. 在**資料**頁面上，選擇**建立**然後**新增資料集**。

1. 選擇 **Salesforce** 圖示。

1. 輸入資料來源的名稱，然後選擇 **Create data source (建立資料來源)**。

1. 在 Salesforce 登入頁面，輸入您的 Salesforce 登入資料。

1. 針對 **Data elements: contain your data (資料元素：包含您的資料)**，請選擇 **Select (選取)**，然後選擇 **REPORT (報告)** 或 **OBJECT (物件)**。
**注意**  
不支援聯結的報告做為 Quick Sight 資料來源。

1. 請選擇下列其中一個選項：
   + 若要在建立分析之前準備資料，您可以選擇 **Edit/Preview data (編輯/預覽資料)** 來開啟資料準備。如需資料準備的詳細資訊，請參閱[準備資料集範例](preparing-data-sets.md)。
   + 否則，請選擇報告或物件，然後選擇 **Select (選取)**。

1. 請選擇下列其中一個選項：
   + 若要依資料現況建立資料集和分析，請選擇**視覺化**。
**注意**  
如果您沒有足夠的 [SPICE](spice.md) 容量，請選擇 **Edit/Preview data (編輯/預覽資料)**。在資料準備中，您可以從資料集移除欄位，以降低其大小，或套用篩選器，以減少傳回的資料列數。如需資料準備的詳細資訊，請參閱[準備資料集範例](preparing-data-sets.md)。
   + 若要在建立分析之前準備資料，您可以選擇 **Edit/Preview data (編輯/預覽資料)**，以針對所選的報告或物件開啟資料準備。如需資料準備的詳細資訊，請參閱[準備資料集範例](preparing-data-sets.md)。

**注意**  
內嵌主控台部署中不支援 Salesforce 連接器，其中使用者透過命名空間隔離進行身分驗證。OAuth 身分驗證流程需要直接存取 Amazon Quick Sight 主控台才能完成登入程序。

# 搭配 Amazon Quick Sight 使用 Trino
<a name="connecting-to-trino"></a>

Trino 是一個大量平行處理 (MPP) 查詢引擎，專為快速查詢具有 PB 級資料的資料湖而設計。使用本節了解如何從 Amazon Quick Sight 連線至 Trino。SSL 會啟用 Amazon Quick Sight 和 Trino 之間的所有流量。Amazon Quick Sight 支援對 Trino 進行基本使用者名稱和密碼身分驗證。

## 為 Trino 建立資料來源連線
<a name="create-connection-to-trino"></a>

1. 首先建立新的資料集。從左側導覽窗格中，選擇**資料**。選擇**建立**，然後選擇**新資料集**。

1. 選擇 **Trino** 資料來源卡片。

1. 對於**資料來源名稱**，輸入 Trino 資料來源連線的描述性名稱。因為您可以透過與 Trino 的連線建立許多資料集，因此最好保持名稱簡單。

1. 對於**連線類型**，選取您正在使用的網路類型。如果您的資料是公開共用的，選擇**公共網路**。如果您的資料位於 VPC 內，選擇 **VPC**。若要在 Amazon Quick Sight 中設定 VPC 連線，請參閱[在 Amazon Quick Sight 中設定 VPC 連線](https://docs.aws.amazon.com/quicksight/latest/user/vpc-creating-a-connection-in-quicksight.html)。

1. 對於**資料庫伺服器**，輸入 Trino 連線詳細資訊中指定的主機名稱。

1. 對於**型錄**，輸入 Trino 連線詳細資訊中指定的型錄。

1. 對於**連接埠**，輸入 Trino 連線詳細資訊中指定的連接埠。

1. 對於**使用者名稱**和**密碼**，輸入您的 Trino 連線憑證。

1. 若要驗證連線是否正常運作，選擇**驗證連線**。

1. 若要完成並建立資料來源，選擇**建立資料來源**。

## 為 Trino 新增 Amazon Quick Sight 資料集
<a name="create-dataset-using-trino"></a>

完成 Trino 的[資料來源建立程序](https://docs.aws.amazon.com/create-connection-to-starburst.html)之後，您可以建立 Trino 資料集以用於分析。您可以從新的或現有的 Trino 資料來源建立新資料集。當您建立新的資料來源時，Amazon Quick Sight 會立即引導您建立資料集，這是下面的步驟 3。如果您使用現有的資料來源建立新資料集，請從下面的步驟 1 開始。

若要使用 Trino 資料來源建立資料集，請參閱下列步驟。

1. 從開始頁面，選擇**資料**。選擇**建立**然後**新增資料集**。

1. 選擇您建立的 Trino 資料來源。

1. 選擇 **Create data set (建立資料集)**。

1. 若要指定想要連線的資料表，請選擇結構描述。若您不想選擇結構描述，也可以使用自己的 SQL 陳述式。

1. 若要指定要連線到的資料表，請先選取要使用的**結構描述**。接下來，在**資料表**中選擇您要使用的資料表。如果您想使用自己的 SQL 陳述式，請選取**使用自訂 SQL**。

1. 選擇**編輯/預覽**。

1. (選用) 若要新增更多資料，請執行下列步驟：

1. 選擇右上角的**新增資料**。

1. 若要連線到不同的資料，請選擇**切換資料來源**，然後選擇不同的資料集。

1. 依照提示完成新增資料。

1. 將新資料新增至相同的資料集後，選擇**設定此聯結** (兩個紅點)。為每個額外的資料表設定一個聯結。

1. 若要新增計算欄位，選擇**新增計算欄位**。

1. 清除要省略之任何欄位的核取方塊。

1. 更新要變更的任何資料類型。

1. 完成後，選擇**儲存**以儲存並關閉資料集。

**注意**  
Quick Sight 和 Trino 之間的連線已使用 Trino 410 版進行驗證。

# 使用本機文字檔案建立資料集
<a name="create-a-data-set-file"></a>

若要使用本機文字檔案資料來源建立資料集，請識別檔案的位置，然後上傳檔案。在建立資料集的過程中，檔案資料會自動匯入 [SPICE](spice.md)。

**以本機文字檔案為基礎建立資料集**

1. 檢查 [資料來源配額](data-source-limits.md) 以確保您的目標檔案不超過資料來源配額。

   支援的檔案類型包括 .csv、.tsv、.json、.clf 或 .elf 檔案。

1. 在快速入門頁面上，選擇**資料**。

1. 選擇**建立**然後**新增資料集**。

1. 選擇 **Upload a file (上傳檔案)**。

1. 在 **Open (開啟)** 對話方塊中，瀏覽到檔案，選取檔案，然後選擇 **Open (開啟)**。

   檔案必須等於或小於 1 GB，才能上傳至 Quick Sight。

1. 若要在建立資料集之前準備資料，請選擇**編輯/預覽資料**。否則，請選擇**視覺化**，以直接依資料現狀來建立分析。

   如果選擇前者，您可以在準備資料時指定資料集名稱。如果選擇後者，則會以來源檔案的相同名稱建立資料集。如要進一步了解資料準備，請參閱[在 Amazon Quick Sight 中準備資料](preparing-data.md)。

# 搭配 Amazon Quick Sight 使用 Amazon Timestream 資料
<a name="using-data-from-timestream"></a>

您可以在下面找到如何使用 Amazon Quick Sight 連線至 Amazon Timestream 資料。如需簡短概觀，請參閱 YouTube 上的 [Amazon Timestream 和 Amazon QuickSight 入門](https://youtu.be/TzW4HWl-L8s)視訊教學課程。

## 為 Timestream 資料庫建立新的 Amazon Quick Sight 資料來源連線
<a name="create-connection-to-timestream"></a>

您可以在下面找到如何從 Amazon Quick Sight 連線至 Amazon Timestream。

在您可以繼續之前，Amazon Quick Sight 需要獲得授權才能連線至 Amazon Timestream。如果未啟用連線，您會在嘗試連線時收到錯誤訊息。Quick Sight 管理員可以授權與 AWS 資源的連線。若要授權，請按一下右上角的設定檔圖示以開啟選單。選擇**管理 QuickSight**、**安全和許可**、**新增或移除**。接下來啟用 Amazon Timestream 的核取方塊，然後選擇**更新**以確認。如需詳細資訊，請參閱[設定 AWS Amazon Quick Sight 對資料來源的存取](access-to-aws-resources.md)。

**若要連線至 Amazon Timestream**

1. 首先建立新的資料集。從左側的導覽窗格中選擇**資料**。

1. 選擇**建立**，然後選擇**新資料集**。

1. 選擇 Timestream 資料來源卡片。

1. 對於**資料來源名稱**，為 Timestream 資料來源連線輸入一個描述性名稱，例如 `US Timestream Data`。因為您可以透過與 Timestream 的連線建立許多資料集，因此最好保持名稱簡單。

1. 選擇**驗證連線**，檢查您是否可以成功連線至 Timestream。

1. 選擇**建立資料來源**。

1. 對於**資料庫**，選擇**選取**以檢視可用選項的清單。

1. 選擇您要使用的選項，然後選擇**選取**以繼續。

1. 執行以下任意一項：
   + 若要將資料匯入 Quick Sight 的記憶體內引擎 （稱為 SPICE)，請選擇**匯入至 SPICE 以加快分析**速度。
   + 若要允許 Quick Sight 在每次重新整理資料集或使用分析或儀表板時針對您的資料執行查詢，請選擇**直接查詢您的資料**。

   如果您想要在使用 Timestream 資料的已發布儀表板上啟用自動重新整理，則 Timestream 資料集需要使用直接查詢。

1. 選擇**編輯/預覽**，然後選擇**儲存**以儲存資料集並將其關閉。

1. 針對您要在資料集中開啟的 Timestream 並行直接連線數量，重複這些步驟。例如，假設您想要在 Quick Sight 資料集中使用四個資料表。目前，Quick Sight 資料集一次只能從 Timestream 資料來源連線至一個資料表。若要在相同的資料集中使用四個資料表，您需要在 Quick Sight 中新增四個資料來源連線。

## 管理 Timestream 資料的許可
<a name="dataset-permissions-for-timestream"></a>

下列程序說明如何檢視、新增及撤銷許可，以允許存取相同的 Timestream 資料來源。您新增的人員必須是 Quick Sight 中的作用中使用者，才能新增他們。

**若要編輯資料集的許可**

1. 選擇左側**的資料**，然後向下捲動以尋找 Timestream 連線的資料集。`US Timestream Data` 可能是一個範例。

1. 選擇 **Timestream** 資料集以開啟它。

1. 在開啟的資料集詳細資訊頁面上，選擇**許可**標籤。

   此時將顯示目前的許可清單。

1. 若要新增許可，請選擇**新增使用者與群組**，然後依下列步驟作業：

   1. 新增使用者或群組，以允許他們使用相同的資料集。

   1. 當您完成新增所有想要新增的人員時，請選擇要套用至他們的**許可**。

1. (選用) 若要編輯許可，您可以選擇**檢視者**或**擁有者**。
   + 選擇**檢視者**以允許讀取存取權。
   + 選擇**擁有者**以允許該使用者編輯、共用或刪除此 Quick Sight 資料來源。

1. (選用) 若要撤銷許可，請選擇**撤銷存取權**。存取權經撤銷後，使用者就無法建立、編輯、共用或刪除資料集。

1. 完成後，請選擇**關閉**。

## 為 Timestream 新增 Quick Sight 資料集
<a name="create-dataset-using-timestream"></a>

當您有 Timestream 資料的現有資料來源連線之後，可以建立 Timestream 資料集以用於分析。

目前，您只能將 Timestream 連線用於資料集中的單一資料表。若要從單一資料集中的多個 Timestream 資料表新增資料，請為每個資料表建立額外的 Quick Sight 資料來源連線。

**若要使用 Amazon Timestream 建立資料集**

1. 選擇左側**的資料**，然後向下捲動以尋找 Timestream 連線的資料來源卡。如果您有許多資料來源，可以使用頁面頂端的搜尋列來尋找名稱部分相符的資料來源。

1. 選擇 **Timestream** 資料來源卡片，然後選擇**建立資料集**。

1. 對於**資料庫**，選擇**選取**以檢視可用資料庫的清單，然後選擇您要使用的資料庫。

1. 接下來，在**資料表**中選擇您要使用的資料表。

1. 選擇**編輯/預覽**。

1. (選用) 若要新增更多資料，請執行下列步驟：

   1. 選擇右上角的**新增資料**。

   1. 若要連線到不同的資料，請選擇**切換資料來源**，然後選擇不同的資料集。

   1. 依照 UI 提示完成新增資料。

   1. 將新資料新增至相同的資料集後，選擇**設定此聯結** (兩個紅點)。為每個額外的資料表設定一個聯結。

   1. 若要新增計算欄位，選擇**新增計算欄位**。

   1. 若要從 SageMaker AI 新增模型，選擇**使用 SageMaker 擴增**。此選項僅適用於 Amazon Quick Enterprise Edition。

   1. 清除要省略之任何欄位的核取方塊。

   1. 更新要變更的任何資料類型。

1. 完成後，選擇**儲存**以儲存並關閉資料集。

## 新增 Timestream 資料至分析
<a name="open-analysis-add-dataset-for-timestream"></a>

您可以在下面找到如何將 Amazon Timestream 資料集新增至 Quick Sight 分析。開始之前，請確定您已有資料集，其中包含您要使用的 Timestream 資料。

**若要新增 Amazon Timestream 資料至分析**

1. 選擇左側的**分析**。

1. 執行以下任意一項：
   + 若要建立新分析，選擇右側的**新建分析**。
   + 若要新增至現有分析，開啟要編輯的分析。
     + 選擇左上角附近的鉛筆圖示。
     + 選擇**新增資料集**。

1. 選擇您要新增的 Timestream 資料集。

如需詳細資訊，請參閱[使用分析](https://docs.aws.amazon.com/quicksight/latest/user/working-with-analyses.html)。

# 資料來源配額
<a name="data-source-limits"></a>

搭配 Amazon Quick Sight 使用的資料來源必須符合下列配額。

**Topics**
+ [

## 匯入資料的 SPICE 配額
](#spice-limits)
+ [

## 直接 SQL 查詢的配額
](#query-limits)

## 匯入資料的 SPICE 配額
<a name="spice-limits"></a>

當您在 Amazon Quick Sight 中建立新的資料集時， 會[SPICE](spice.md)限制您可以新增至資料集的資料列數。您可以從查詢或檔案將資料擷取至 SPICE。每個檔案最多可有 2,000 個資料欄。每個欄位名稱最多可有 127 個 Unicode 字元。每個欄位最多可有 2，047 個 Unicode 字元。如果您使用新的資料準備體驗來建立 SPICE 資料集，每個欄位最多可有 65，534 個 Unicode 字元。

若要從較大的集合擷取部分資料，您可以取消選取欄位或套用篩選條件，以減少資料的大小。如果您要從 Amazon S3 匯入，每份清單檔案最多可指定 1,000 個檔案。

SPICE 的配額如下：
+  每個欄位 2，047 個 Unicode 字元。(65，534 個 Unicode 字元，具有新的資料準備體驗） 
+ 每個欄位名稱為 127 個 Unicode 字元
+ 每個檔案 2,000 個資料欄
+ 每份資訊清單為 1,000 個檔案
+ 對於標準版，每個資料集 2,500 萬個資料列或 25 GB
+ 對於企業版，每個資料集有 20 億 (2，000，000，000) 個資料列或 2 TB

所有配額也會套用於採資料列層級安全技術的 SPICE 資料集。

在極少數情況下，如果您要擷取大型資料列到 SPICE，在達到資料列配額之前，可能會達到每個資料集的 GB 配額。大小是以擷取至 SPICE 後資料所佔的 SPICE 容量為基礎。

## 直接 SQL 查詢的配額
<a name="query-limits"></a>

如果不將資料匯入 SPICE，則會套用不同的空間和時間配額。至於連線、資料集取樣資料和產生視覺效果等作業，可能會發生逾時。在某些情況下，這些是來源資料庫引擎設定的逾時配額。在其他情況下，例如視覺化，Amazon Quick Sight 會在 2 分鐘後產生逾時。

不過，並非所有資料庫驅動程式都會對 2 分鐘逾時做出反應，例如 Amazon Redshift。在這些情況下，查詢只要能傳回回應就會一直執行，這會導致資料庫長時間執行查詢。發生這種情況時，您可以從資料庫伺服器取消查詢，以釋出資料庫資源。請依照您的資料庫伺服器說明執行此作業。例如，如需有關如何在 Amazon Redshift 中取消查詢的詳細資訊，請參閱《Amazon Redshift 資料庫開發人員指南》**中的[在 Amazon Redshift 中取消查詢](https://docs.aws.amazon.com/redshift/latest/dg/cancel_query.html)和[在 Amazon Redshift 中實作工作負載管理](https://docs.aws.amazon.com/redshift/latest/dg/cm-c-implementing-workload-management.html)。

直接查詢的每個結果集最多可有 2,000 個資料欄。每個欄位名稱最多可有 127 個 Unicode 字元。如果您想要從較大的表格擷取資料，有幾種方法可讓您降低資料的大小。您可以取消選取欄位，或套用篩選條件。在 SQL 查詢，您也可以使用述詞，例如 `WHERE`、`HAVING`。如果您的視覺效果在直接查詢期間逾時，您可以簡化查詢以最佳化執行時間，或將資料匯入 SPICE。

查詢的配額如下：
+ 每個欄位名稱為 127 個 Unicode 字元。
+ 每個資料集 2,000 個資料欄。
+ 產生視覺效果有 2 分鐘的配額，或使用選用的資料集範例。
+ 套用資料來源逾時配額 (每個資料庫引擎各不相同)。

# 支援的資料類型和值
<a name="supported-data-types-and-values"></a>

Amazon Quick Sight 目前支援下列基本資料類型：`Date`、`Integer`、 `Decimal`和 `String`。SPICE 中支援下列資料類型：`Date`、`Decimal-fixed`、`Decimal-float`、`Integer` 和 `String`。Quick Sight 透過將布林值提升為整數來接受布林值。它也可以推導出地理空間資料類型。地理空間資料類型使用中繼資料來解譯實體資料類型。緯度和經度為數字。所有其他地理空間類別為字串。

請確保用作資料來源的任何資料表或檔案，僅包含可隱含轉換為這些資料類型的欄位。Amazon Quick Sight 會略過任何無法轉換的欄位或資料欄。如果收到「欄位因為使用不受支援的資料類型而被略過」的錯誤訊息，請變更您的查詢或資料表，以移除或重新轉換不受支援的資料類型。

## 字串與文字資料
<a name="strings"></a>

包含字元的欄位或資料欄稱為*字串*。具有 `STRING` 資料類型的欄位一開始可以包含幾乎任何類型的資料。範例包括名稱、描述、電話號碼、帳戶號碼、JSON 資料、城市、郵遞區號、日期以及可用於計算的數字。這些類型有時在一般意義上被稱為文字資料，但在技術意義上並非如此。Quick Sight 不支援資料集欄中的二進位和字元大型物件 (BLOBs)。在 Quick Sight 文件中，「文字」一詞一律表示「字串資料」。

第一次查詢或匯入資料時，Quick Sight 會嘗試解譯其識別為其他類型的資料，例如日期和數字。驗證指派給欄位或資料欄的資料類型是否正確是很好的做法。

對於匯入資料中的每個字串欄位，Quick Sight 會使用 8 個位元組的欄位長度加上 UTF-8 編碼字元長度。Amazon Quick Sight 支援 UTF-8 檔案編碼，但不支援 UTF-8 （使用 BOM)。

## 日期和時間資料
<a name="dates"></a>

資料類型為 `Date` 的欄位也包括時間資料，也稱為 `Datetime` 欄位。Quick Sight 支援使用[支援日期格式](#supported-date-formats)的日期和時間。

Quick Sight 使用 UTC 時間來查詢、篩選和顯示日期資料。當日期資料未指定時區時，Quick Sight 會假設 UTC 值。當日期資料確實指定時區時，Quick Sight 會將其轉換為以 UTC 時間顯示。例如，時區位移為 的日期欄位**2015-11-01T03:00:00-08:00**會轉換為 UTC，並在 Amazon Quick Sight 中顯示為 **2015-11-01T15:30:00**。

對於匯入資料中的每個`DATE`欄位，Quick Sight 會使用 8 個位元組的欄位長度。Quick Sight 支援 UTF-8 檔案編碼，但不支援 UTF-8 （使用 BOM)。

## 數值資料
<a name="numeric"></a>

數字資料包括整數和小數。資料類型為 `INT` 的整數是不帶小數位的負數或正數。Quick Sight 無法區分大整數和小整數。值超過 `9007199254740991` 或 `2^53 - 1` 的整數可能無法在視覺效果中完全或正確顯示。

資料類型為 `Decimal` 的小數為負數或正數，其在小數點前後至少包含一位小數。當您選擇「直接查詢」模式時，所有非整數小數類型都被標示為 `Decimal`，底層引擎會根據資料來源支援的行為處理資料點的精確度。如需支援的資料來源類型的詳細資訊，請參閱 [支援的資料類型和值](#supported-data-types-and-values)。

當您將資料集存放在 時SPICE，您可以選擇將小數值儲存為 `fixed`或`float`小數類型。 `Decimal-fixed`資料類型使用小數 (`18,4`) 格式，允許總計 18 位數，小數點後最多 4 位數。 `Decimal-fixed` 資料類型是執行精確數學操作的理想選擇，但 Quick Sight 會在將值擷取到 時，將值四捨五入到最接近的一萬位SPICE。

`Decimal-float` 資料類型為值提供大約 16 位有效數字的精確度。有效數字可以位於小數點任何一側，以支援同時具有多個小數位和更高位數的數字。例如，`Decimal-float` 資料類型支援數字 `12345.1234567890` 或 `1234567890.12345`。如果您使用接近 `0` 的非常小的數字，則 `Decimal-float` 資料類型支援小數點右側最多 15 位數字，例如 `0.123451234512345`。這種資料類型支援的最大值是 `1.8 * 10^308`，可最大限度地降低資料集出現溢出錯誤的可能性。

`Decimal-float` 資料類型不精確，有些值儲存為近似值而不是實際值。當您儲存並傳回某些特定值時，這可能會導致輕微的偏差。下列考量會套用於 `Decimal-float` 資料類型。
+ 如果您使用的資料集來自 Amazon S3 資料來源，SPICE 會將 `Decimal-float` 小數類型指派給所有數值格式的小數值。
+ 如果您使用的資料集來自資料庫，SPICE 使用在資料庫中指派值的小數類型。例如，如果該值在資料庫中被指派為定點數值，值將是 SPICE 中的 `Decimal-fixed` 類型。

對於包含可轉換為 `Decimal-float` 資料類型的欄位的現有 SPICE 資料集，**編輯資料集**頁面中會出現一個快顯視窗。若要將現有資料集的欄位轉換為 `Decimal-float` 資料類型，選擇**更新欄位**。如果您不想加入，請選擇**不更新欄位**。每次您開啟**編輯資料集**頁面時，**更新欄位**都會出現，直到資料集儲存並發布。

## 來自外部資料來源的受支援資料類型
<a name="supported-data-types"></a>

下表列出搭配 Amazon Quick Sight 使用下列資料來源時支援的資料類型。


****  

| 資料庫引擎或來源 | 數值資料類型 | 字串資料類型 | 日期時間資料類型 | 布林值資料類型 | 
| --- | --- | --- | --- | --- | 
|   **Amazon Athena、Presto、Starburst、Trino**  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  | 
|  **Amazon Aurora**、**MariaDB** 和 **MySQL**  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  | 
|   **Amazon OpenSearch Service**  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  | 
|  **Oracle**  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html) | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html) | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html) | bit | 
|   **PostgreSQL**   |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  | 
|   **Apache Spark**  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  | 
|   **Snowflake**   |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  | 
|   **Microsoft SQL Server**   |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  | 

### 支援的日期格式
<a name="supported-date-formats"></a>

Amazon Quick Sight 支援本節所述的日期和時間格式。將資料新增至 Amazon Quick Sight 之前，請檢查您的日期格式是否相容。如果需要使用不受支援的格式，請參閱 [使用不支援的日期或自訂日期](using-unsupported-dates.md)。

根據資料來源類型不同，支援的格式也不同，如下所示：


| 資料來源 | 時鐘 | 日期格式 | 
| --- | --- | --- | 
|  檔案上傳 Amazon S3 來源 Athena Salesforce  |  24 小時和 12 小時制  |  Joda API 文檔中描述了受支援的日期和時間格式。 如需 Joda 日期格式的完整清單，請參閱 Joda 網站上的 [Class DateTimeFormat](http://www.joda.org/joda-time/apidocs/org/joda/time/format/DateTimeFormat.html)。 對於儲存在記憶體 (SPICE) 中的資料集，Amazon Quick Sight 支援下列範圍內的日期： `Jan 1, 0001 00:00:00 UTC`到 `Dec 31, 9999, 23:59:59 UTC`。  | 
|  關聯式資料庫來源  |  僅 24 小時制  |  下列資料和時間格式： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/supported-data-types-and-values.html)  | 

### 資料中不支援的值
<a name="unsupported-data-values"></a>

如果欄位包含的值不符合 Amazon Quick Sight 指派給欄位的資料類型，則會略過包含這些值的資料列。以下列來源資料為例。

```
Sales ID    Sales Date    Sales Amount
--------------------------------------
001        10/14/2015        12.43
002        5/3/2012          25.00
003        Unknown           18.17
004        3/8/2009          86.02
```

Amazon Quick Sight 會解譯**Sales Date**為日期欄位，並捨棄包含非日期值的資料列，因此只會匯入下列資料列。

```
Sales ID    Sales Date    Sales Amount
--------------------------------------
001        10/14/2015        12.43
002        5/3/2012          25.00
004        3/8/2009          86.02
```

在某些情況下，資料庫欄位可能包含 JDBC 驅動程式無法解譯的來源資料庫引擎值。在這種情況下，無法解譯的值會替換為 null，以便匯入資料列。已知此問題只發生於值全部為零的 MySQL date、datetime 和 timestamp 欄位，例如 **0000-00-00 00:00:00**。以下列來源資料為例。

```
Sales ID    Sales Date                Sales Amount
---------------------------------------------------
001        2004-10-12 09:14:27        12.43
002        2012-04-07 12:59:03        25.00
003        0000-00-00 00:00:00        18.17
004        2015-09-30 01:41:19        86.02
```

在此情況下會匯入下列資料。

```
Sales ID    Sales Date                Sales Amount
---------------------------------------------------
001        2004-10-12 09:14:27        12.43
002        2012-04-07 12:59:03        25.00
003        (null)                     18.17
004        2015-09-30 01:41:19        86.02
```

# 使用資料集
<a name="working-with-datasets"></a>

資料集是 Quick Sight 分析的基礎，做為為您的分析和儀表板提供支援的預備和結構化資料來源。從資料來源建立資料集之後，您需要在整個生命週期中有效管理資料集，以確保可靠、安全且協作的分析。

本節涵蓋完整的資料集管理工作流程，從編輯和版本控制資料集，到與團隊成員共用及實作安全控制。您將了解如何維護資料集完整性，同時支援協作分析、追蹤哪些分析取決於您的資料集，以及實作資料列層級和資料欄層級安全性來保護敏感資訊。無論您是準備資料集以供團隊使用、疑難排解分析問題，還是實作資料控管政策，這些主題都會提供 Quick Sight 中有效資料集管理的基本知識。

**Topics**
+ [

# 建立資料集
](creating-data-sets.md)
+ [

# 編輯資料集
](edit-a-data-set.md)
+ [

# 將資料集還原回先前發布的版本
](dataset-versioning.md)
+ [

# 複製資料集
](duplicate-a-data-set.md)
+ [

# 共用資料集
](sharing-data-sets.md)
+ [

# 追蹤使用資料集的儀表板和分析
](track-analytics-that-use-dataset.md)
+ [

# 在 Amazon Quick 中使用資料集參數
](dataset-parameters.md)
+ [

# 在 Amazon Quick 中使用資料列層級安全性
](row-level-security.md)
+ [

# 使用資料欄層級安全，限制對資料集的存取
](restrict-access-to-a-data-set-using-column-level-security.md)
+ [

# 在 Amazon Quick 中以 IAM 角色執行查詢
](datasource-run-as-role.md)
+ [

# 刪除資料集
](delete-a-data-set.md)
+ [

# 將資料集新增至分析
](adding-a-data-set-to-an-analysis.md)

# 建立資料集
<a name="creating-data-sets"></a>

 您可以從 Amazon Quick 中的新資料來源或現有資料來源建立資料集。您可以使用各種資料庫資料來源，將資料提供給 Amazon Quick。這包括亞 Amazon RDS 執行個體和 Amazon Redshift 群集。還包括您的組織、Amazon EC2 或類似環境中的 MariaDB、Microsoft SQL Server、MySQL、Oracle 和 PostgreSQL 執行個體。

**Topics**
+ [

# 使用新的資料來源建立資料集
](creating-data-sets-new.md)
+ [

# 使用現有資料來源建立資料集
](create-a-data-set-existing.md)
+ [

# 使用 Amazon Quick 中的現有資料集建立資料集
](create-a-dataset-existing-dataset.md)

# 使用新的資料來源建立資料集
<a name="creating-data-sets-new"></a>

當您根據 Amazon RDS、Amazon Redshift 或 Amazon EC2 等 AWS 服務建立資料集時，從該來源取用資料時，可能會產生資料傳輸費用。這些費用也可能有所不同，取決於該 AWS 資源是否位於您為 AWS 區域 Amazon Quick 帳戶選擇的家中。如需定價的詳細資訊，請參閱該服務的定價頁面。

當建立新的資料庫資料集時，您可以選取一個資料表、聯結數個資料表或建立 SQL 查詢，以擷取您要的資料。您也可以變更資料集是使用直接查詢，還是將資料儲存在 [SPICE](spice.md) 中。

**建立新資料集**

1. 若要建立資料集，請在**資料**頁面上選擇**新增資料集**。然後，您可以根據現有資料集或資料來源建立資料集，或連線至新的資料來源並以該資料來源作為資料集的基礎。

1. 提供資料來源的連線資訊：
   + 如果是本機文字檔或 Microsoft Excel 檔案，您只需識別檔案位置並上傳檔案。
   + 如果是 Amazon S3，請提供清單檔案，以識別您想要使用的檔案或儲存貯體，同時匯入目標檔案的設定。
   + 對於 Amazon Athena，會傳回您 AWS 帳戶的所有 Athena 資料庫。不需額外的登入資料。
   + 如果是 Salesforce，請提供連線時所需的登入資料。
   + 如果是 Amazon Redshift、Amazon RDS、Amazon EC2 或其他資料庫資料來源，請提供託管資料的伺服器和資料庫資訊。同時請提供該資料庫執行個體的有效憑證。

# 從資料庫建立資料集
<a name="create-a-database-data-set"></a>

以下程序逐步引導您連線到資料庫資料來源和建立資料集。若要從 Amazon Quick 帳戶自動探索的 AWS 資料來源建立資料集，請使用 [從自動探索的 Amazon Redshift 叢集或 Amazon RDS 執行個體建立資料集](#create-a-data-set-autodiscovered)。若要從任何其他資料庫資料來源建立資料集，請使用 [使用非自動探索之資料庫建立資料集](#create-a-data-set-database)。

## 從自動探索的 Amazon Redshift 叢集或 Amazon RDS 執行個體建立資料集
<a name="create-a-data-set-autodiscovered"></a>

請依下列程序建立到自動探索之 AWS 資料來源的連線。

**建立與自動探索 AWS 資料來源的連線**

1. 檢查 [資料來源配額](data-source-limits.md)，確保您的目標資料表或查詢不超過資料來源配額。

1. 確認您打算使用的資料庫登入資料具有[所需的許可](required-permissions.md)中所述的適當許可。

1. 請遵循 中的指示，確定您已設定叢集或執行個體進行 Amazon Quick 存取[網路和資料庫組態需求](configure-access.md)。

1. 在 Amazon Quick Start 頁面上，選擇**資料**。

1. 選擇**建立**，然後選擇**新增資料集**。

1. 根據您要連線 AWS 的服務，選擇 **RDS** **或 Redshift 自動探索**圖示。

1. 輸入資料來源的連線資訊，如下所示：
   + 針對**資料來源名稱**，輸入資料來源的名稱。
   + 針對 **Instance ID (執行個體 ID)**，選擇您想要連線的執行個體或叢集名稱。
   + **資料庫名稱**會顯示叢集或執行個體的**執行個體 ID** 的預設資料庫。若要在該叢集或執行個體上使用不同的資料庫，請輸入其名稱。
   + 對於**使用者名稱**，輸入有權執行下列動作之使用者帳戶的使用者名稱：
     + 存取目標資料庫。
     + 讀取想要使用之資料庫中的任何資料表 (即對其執行 `SELECT` 陳述式)。
   + 對於**密碼**，輸入您剛才輸入的帳戶之密碼。

1. 選擇 **Validate connection (驗證連線)** 來驗證您的連線資訊是否正確。

1. 如果連線有效，請選擇 **Create data source (建立資料來源)**。否則，請更正連線資訊，然後嘗試再次驗證。
**注意**  
Amazon Quick 使用 Secure Sockets Layer (SSL) 自動保護與 Amazon RDS 執行個體和 Amazon Redshift 叢集的連線。您不須採取任何行動即可啟用它。

1. 選擇下列其中一項：
   + **自訂 SQL**

     在下一個畫面上，您可以選擇透過 **Use custom SQL (使用自訂 SQL)** 選項來編寫查詢。這樣做會開啟名為 **Enter custom SQL query (輸入自訂 SQL 查詢)** 的畫面，您可以在這裡輸入查詢的名稱，再輸入 SQL。如需最佳結果，請在 SQL 編輯器中編寫查詢，然後將它貼至這個視窗。在您命名並輸入查詢之後，您可以選擇 **Edit/Preview data (編輯/預覽資料)** 或 **Confirm query (確認查詢)**。選擇 **Edit/Preview data (編輯/預覽資料)**，來立即前往資料準備。選擇 **Confirm query (確認查詢)**，來驗證 SQL 並確保沒有錯誤。
   + **選擇表格**

     若要連線到特定的資料表，對於**結構描述：包含資料表集**，選擇**選取**，然後選擇結構描述。在某些情況下，資料庫中只有一個結構描述，這時會自動選擇該結構描述，不會顯示結構描述選擇選項。

     若要在建立分析之前準備資料，您可以選擇 **Edit/Preview data (編輯/預覽資料)** 來開啟資料準備。如果想要聯結到多個資料表，請使用此選項。

     否則，在選擇資料表之後，選擇 **Select (選取)**。

1. 請選擇下列其中一個選項：
   + 在建立分析前準備資料。若要執行此作業，請選擇 **Edit/Preview data (編輯/預覽資料)**，為所選表格開啟資料準備。如需資料準備的詳細資訊，請參閱[準備資料集範例](preparing-data-sets.md)。
   + 依資料表資料現況建立資料集和分析，並將資料集資料匯入 SPICE，以改善效能 (建議)。若要執行此作業，請檢查資料表大小和 SPICE 指示器，查看您是否有足夠的容量。

     如果有足夠的 SPICE 容量，請選擇**匯入至 SPICE 以進行更快速的分析**，然後選擇**視覺化**以建立分析。
**注意**  
如果想要使用 SPICE，但沒有足夠的空間，請選擇**編輯/預覽資料**。在準備資料期間，您可以移除資料集中的欄位，以減少其大小。您也可以套用篩選條件或編寫 SQL 查詢，減少傳回的列或欄數。如需資料準備的詳細資訊，請參閱[準備資料集範例](preparing-data-sets.md)。
   + 若要依資料表資料現況建立資料集和分析，並直接從資料庫查詢資料，請選擇**直接查詢您的資料**選項。然後選擇 **Visualize (視覺化)** 建立分析。

## 使用非自動探索之資料庫建立資料集
<a name="create-a-data-set-database"></a>

請依下列程序建立到除自動探索之 Amazon Redshift 叢集或 Amazon RDS 執行個體以外的任意資料庫的連線。這類資料庫包括位於不同 的 Amazon Redshift 叢集和 Amazon RDS 執行個體， AWS 區域 或與不同 AWS 帳戶相關聯。還包括在內部部署、在 Amazon EC2 中或其他可存取的環境中的 MariaDB、Microsoft SQL Server、MySQL、Oracle 和 PostgreSQL 執行個體。

**建立到非自動探索之 Amazon Redshift 叢集或 RDS 執行個體的資料庫的連線**

1. 檢查 [資料來源配額](data-source-limits.md)，確保您的目標資料表或查詢不超過資料來源配額。

1. 確認您打算使用的資料庫登入資料具有[所需的許可](required-permissions.md)中所述的適當許可。

1. 請遵循 中的指示，確定您已設定叢集或執行個體進行 Amazon Quick 存取[網路和資料庫組態需求](configure-access.md)。

1. 在 Amazon Quick Start 頁面上，選擇**管理資料**。

1. 選擇**建立**，然後選擇**新增資料集**。

1. 如果您想要連接到另一個 中的 Amazon Redshift 叢集 AWS 區域 或與不同的 AWS 帳戶相關聯，請選擇 **Redshift 手動連線**圖示。或者，選擇適當的資料庫管理系統圖示，以連線到 Amazon Aurora、MariaDB、Microsoft SQL Server、MySQL、Oracle 或 PostgreSQL 的執行個體。

1. 輸入資料來源的連線資訊，如下所示：
   + 針對**資料來源名稱**，輸入資料來源的名稱。
   + 針對**資料庫伺服器**，輸入下列其中一個值：
     + 對於 Amazon Redshift 叢集或 Amazon RDS 執行個體，請輸入叢集或執行個體的端點 (不含連接埠號碼)。例如，如果端點值為 `clustername.1234abcd.us-west-2.redshift.amazonaws.com:1234`，則輸入 `clustername.1234abcd.us-west-2.redshift.amazonaws.com`。您可以從叢集上的**端點**欄位或 AWS 主控台中的執行個體詳細資訊頁面取得端點值。
     + 對於 MariaDB、Microsoft SQL Server、MySQL、Oracle 或 PostgreSQL 的 Amazon EC2 執行個體，請輸入公有 DNS 地址。您可以在 Amazon EC2 主控台的執行個體詳細資訊窗格，從**公有 DNS** 欄位取得公有 DNS 值。
     + 對於 MariaDB、Microsoft SQL Server、MySQL、Oracle 或 PostgreSQL 的非 Amazon EC2 執行個體，請輸入資料庫伺服器的主機名稱或公有 IP 地址。如果您使用 Secure Sockets Layer (SSL) 建立安全連線 (建議)，您可能需要提供主機名稱以符合 SSL 憑證所需的資訊。如需公認憑證的清單，請參閱 [Amazon Quick SSL 和 CA 憑證](configure-access.md#ca-certificates)。
   + 針對**連接埠**，輸入叢集或執行個體用於連線的連接埠。
   + 針對**資料庫名稱**，輸入您要使用的資料庫名稱。
   + 對於**使用者名稱**，輸入有權執行下列動作之使用者帳戶的使用者名稱：
     + 存取目標資料庫。
     + 讀取想要使用之資料庫中的任何資料表 (即對其執行 `SELECT` 陳述式)。
   + 對於**密碼**，請輸入與您輸入之帳戶關聯的密碼。

1. (選用) 如果您連線的不是 Amazon Redshift 叢集，而且*不*想要安全連線，請務必清除**啟用 SSL**。「強烈建議維持勾選」**，因為不安全的連線很可能遭到破壞。

   如需有關目標執行個體如何使用 SSL 保護連線的詳細資訊，請參閱目標資料庫管理系統的文件。Amazon Quick 不接受自我簽署的 SSL 憑證為有效。如需公認憑證的清單，請參閱 [Amazon Quick SSL 和 CA 憑證](configure-access.md#ca-certificates)。

   Amazon Quick 會使用 SSL 自動保護與 Amazon Redshift 叢集的連線。您不須採取任何行動即可啟用它。

   有些資料庫，例如 Presto 和 Apache Spark，必須符合其他要求，Amazon Quick 才能連線。如需詳細資訊，請參閱[使用 Presto 建立資料來源](create-a-data-source-presto.md)或[使用 Apache Spark 建立資料來源](create-a-data-source-spark.md)。

1. (選用) 選擇 **Validate connection (驗證連線)** 來驗證您的連線資訊是否正確。

1. 如果連線有效，請選擇 **Create data source (建立資料來源)**。否則，請更正連線資訊，然後嘗試再次驗證。

1. 選擇下列其中一項：
   + **自訂 SQL**

     在下一個畫面上，您可以選擇透過 **Use custom SQL (使用自訂 SQL)** 選項來編寫查詢。這樣做會開啟名為 **Enter custom SQL query (輸入自訂 SQL 查詢)** 的畫面，您可以在這裡輸入查詢的名稱，再輸入 SQL。如需最佳結果，請在 SQL 編輯器中編寫查詢，然後將它貼至這個視窗。在您命名並輸入查詢之後，您可以選擇 **Edit/Preview data (編輯/預覽資料)** 或 **Confirm query (確認查詢)**。選擇 **Edit/Preview data (編輯/預覽資料)**，來立即前往資料準備。選擇 **Confirm query (確認查詢)**，來驗證 SQL 並確保沒有錯誤。
   + **選擇表格**

     若要連線到特定的資料表，對於**結構描述：包含資料表集**，選擇**選取**，然後選擇結構描述。在某些情況下，資料庫中只有一個結構描述，這時會自動選擇該結構描述，不會顯示結構描述選擇選項。

     若要在建立分析之前準備資料，您可以選擇 **Edit/Preview data (編輯/預覽資料)** 來開啟資料準備。如果想要聯結到多個資料表，請使用此選項。

     否則，在選擇資料表之後，選擇 **Select (選取)**。

1. 請選擇下列其中一個選項：
   + 在建立分析前準備資料。若要執行此作業，請選擇 **Edit/Preview data (編輯/預覽資料)**，為所選表格開啟資料準備。如需資料準備的詳細資訊，請參閱[準備資料集範例](preparing-data-sets.md)。
   + 依資料表資料現況建立資料集和分析，並將資料集資料匯入 SPICE，以改善效能 (建議)。若要執行此作業，請檢查資料表大小和 SPICE 指示器，查看您是否有足夠的空間。

     如果有足夠的 SPICE 容量，請選擇**匯入至 SPICE 以進行更快速的分析**，然後選擇**視覺化**以建立分析。
**注意**  
如果想要使用 SPICE，但沒有足夠的空間，請選擇**編輯/預覽資料**。在準備資料期間，您可以移除資料集中的欄位，以減少其大小。您也可以套用篩選條件或編寫 SQL 查詢，減少傳回的列或欄數。如需資料準備的詳細資訊，請參閱[準備資料集範例](preparing-data-sets.md)。
   + 依資料表資料現況建立資料集和分析，並直接從資料庫查詢資料。若要執行此作業，請選擇 **Directly query your data (直接查詢您的資料)** 選項。然後選擇 **Visualize (視覺化)** 建立分析。

# 使用現有資料來源建立資料集
<a name="create-a-data-set-existing"></a>

對 Salesforce、 AWS 資料存放區或其他資料庫資料來源進行初始連線後，Amazon Quick 會儲存連線資訊。它會向**建立資料集**頁面的**從現有資料來源**區段新增資料來源。您可以使用這些現有的資料來源建立新的資料集，而不必重新指定連線資訊。

## 使用現有的 Amazon S3 資料來源建立資料集
<a name="create-a-data-set-existing-s3"></a>

請依下列程序使用現有的 Amazon S3 資料來源建立資料集。

**若要使用現有的 S3 資料來源建立資料集**

1. 在 Amazon Quick Start 頁面上，選擇**資料**。

1. 選擇**建立**，然後選擇**新增資料集**。

1. 選擇要使用的 Amazon S3 資料來源。

1. 若要在建立資料集之前準備資料，請選擇**編輯/預覽資料**。請選擇 **Visualize (視覺化)**，依資料現況建立分析。

## 使用現有的 Amazon Athena 資料來源建立資料集
<a name="create-a-data-set-existing-athena"></a>

若要使用現有的 Amazon Athena 資料來源建立資料集，請依下列程序作業。

**從現有的 Athena 連線設定檔建立資料集**

1. 在 Amazon Quick Start 頁面上，選擇**資料**。

1. 選擇**建立**，然後選擇**新增資料集**。

   選擇您要使用的現有資料來源的連線設定檔圖示。連線設定檔會標示資料來源圖示，以及建立連線的人員所提供的名稱。

1. 選擇 **Create data set (建立資料集)**。

   Amazon Quick 只會根據 Athena 工作群組為此資料來源建立連線設定檔。資料庫和資料表不會儲存。

1. 在**選擇資料表**畫面，執行下列作業之一：
   + 若要撰寫 SQL 查詢，選擇**使用自訂 SQL**。
   + 若要選擇資料庫和資料表，先從**資料庫**清單選取您的資料庫。接下來，從為您的資料庫顯示的清單中選擇一個資料表。

## 使用現有的 Salesforce 資料來源建立資料集
<a name="create-a-data-set-existing-salesforce"></a>

請依下列程序使用現有的 Salesforce 資料來源建立資料集。

**使用現有的 Salesforce 資料來源建立資料集**

1. 在 Amazon Quick Start 頁面上，選擇**資料**。

1. 選擇**建立**，然後選擇**新增資料集**。

1. 選擇要使用的 Salesforce 資料來源。

1. 選擇 **Create Data Set (建立資料集)**。

1. 選擇下列其中一項：
   + **自訂 SQL**

     在下一個畫面上，您可以選擇透過 **Use custom SQL (使用自訂 SQL)** 選項來編寫查詢。這樣做會開啟名為 **Enter custom SQL query (輸入自訂 SQL 查詢)** 的畫面，您可以在這裡輸入查詢的名稱，再輸入 SQL。如需最佳結果，請在 SQL 編輯器中編寫查詢，然後將它貼至這個視窗。在您命名並輸入查詢之後，您可以選擇 **Edit/Preview data (編輯/預覽資料)** 或 **Confirm query (確認查詢)**。選擇 **Edit/Preview data (編輯/預覽資料)**，來立即前往資料準備。選擇 **Confirm query (確認查詢)**，來驗證 SQL 並確保沒有錯誤。
   + **選擇表格**

     若要連線到特定的資料表，對於**資料元素：包含您的資料**，請選擇**選取**，然後選擇**報告**或**物件**。

     若要在建立分析之前準備資料，您可以選擇 **Edit/Preview data (編輯/預覽資料)** 來開啟資料準備。如果想要聯結到多個資料表，請使用此選項。

     否則，在選擇資料表之後，選擇 **Select (選取)**。

1. 在下一個畫面上，選擇下列其中一個選項：
   + 若要直接依資料現況建立資料集和分析，請選擇**視覺化**。
**注意**  
如果您沒有足夠的 [SPICE](spice.md) 容量，請選擇 **Edit/Preview data (編輯/預覽資料)**。在資料準備中，您可以從資料集移除欄位，以降低其大小，或套用篩選器，以減少傳回的資料列數。如需資料準備的詳細資訊，請參閱[準備資料集範例](preparing-data-sets.md)。
   + 若要在建立分析之前準備資料，您可以選擇 **Edit/Preview data (編輯/預覽資料)**，以針對所選的報告或物件開啟資料準備。如需資料準備的詳細資訊，請參閱[準備資料集範例](preparing-data-sets.md)。

## 使用現有的資料庫資料來源建立資料集
<a name="create-a-data-set-existing-database"></a>

請依下列程序使用現有的資料庫資料來源建立資料集。

**使用現有的資料庫資料來源建立資料集**

1. 在 Amazon Quick Start 頁面上，選擇**資料**。

1. 選擇**建立**，然後選擇**新增資料集**。

1. 選擇要使用的資料庫資料來源，然後選擇**建立資料集**。

1. 選擇下列其中一項：
   + **自訂 SQL**

     在下一個畫面上，您可以選擇透過 **Use custom SQL (使用自訂 SQL)** 選項來編寫查詢。這樣做會開啟名為 **Enter custom SQL query (輸入自訂 SQL 查詢)** 的畫面，您可以在這裡輸入查詢的名稱，再輸入 SQL。如需最佳結果，請在 SQL 編輯器中編寫查詢，然後將它貼至這個視窗。在您命名並輸入查詢之後，您可以選擇 **Edit/Preview data (編輯/預覽資料)** 或 **Confirm query (確認查詢)**。選擇 **Edit/Preview data (編輯/預覽資料)**，來立即前往資料準備。選擇 **Confirm query (確認查詢)**，來驗證 SQL 並確保沒有錯誤。
   + **選擇表格**

     若要連線到特定的資料表，對於**結構描述：包含資料表集**，選擇**選取**，然後選擇結構描述。在某些情況下，資料庫中只有一個結構描述，這時會自動選擇該結構描述，不會顯示結構描述選擇選項。

     若要在建立分析之前準備資料，您可以選擇 **Edit/Preview data (編輯/預覽資料)** 來開啟資料準備。如果想要聯結到多個資料表，請使用此選項。

     否則，在選擇資料表之後，選擇 **Select (選取)**。

1. 請選擇下列其中一個選項：
   + 在建立分析前準備資料。若要執行此作業，請選擇 **Edit/Preview data (編輯/預覽資料)**，為所選表格開啟資料準備。如需資料準備的詳細資訊，請參閱[準備資料集範例](preparing-data-sets.md)。
   + 依資料表資料現況建立資料集和分析，並將資料集資料匯入 [SPICE](spice.md)，以改善效能 (建議)。若要執行此作業，請檢查 SPICE 指示器，查看您是否有足夠的空間。

     如果有足夠的 SPICE 容量，請選擇**匯入至 SPICE 以進行更快速的分析**，然後選擇**視覺化**以建立分析。
**注意**  
如果想要使用 SPICE，但沒有足夠的空間，請選擇**編輯/預覽資料**。在準備資料期間，您可以移除資料集中的欄位，以減少其大小。您也可以套用篩選條件或編寫 SQL 查詢，減少傳回的列或欄數。如需資料準備的詳細資訊，請參閱[準備資料集範例](preparing-data-sets.md)。
   + 依資料表資料現況建立資料集和分析，並直接從資料庫查詢資料。若要執行此作業，請選擇 **Directly query your data (直接查詢您的資料)** 選項。然後選擇 **Visualize (視覺化)** 建立分析。

# 使用 Amazon Quick 中的現有資料集建立資料集
<a name="create-a-dataset-existing-dataset"></a>

在 Amazon Quick 中建立資料集之後，您可以使用資料集做為來源來建立其他資料集。執行此作業時，父資料集包含的任何資料準備工作 (例如任何聯結或計算欄位) 都會保留下來。您可以為新子資料集中的資料新增其他準備工作，例如聯結新資料和篩選資料。也可以為子資料集設定自己的資料重新整理排程，並追蹤使用該資料集的儀表板和分析。

使用資料集建立，且 RLS 規則作為來源處於作用中狀態的子資料集會繼承父資料集的 RLS 規則。從較大的父資料集建立子資料集的使用者只能在父資料集中看到其有權存取的資料。然後，除了繼承的 RLS 規則之外，您還可以在新的子資料集中新增更多 RLS 規則，以進一步管理誰可以存取新資料集中的資料。您只能從直接查詢中啟用了 RLS 規則的資料集建立子資料集。

從現有的快速資料集建立資料集具有下列優點：
+ **集中管理資料集** – 資料工程師可以根據組織內多個團隊的需求輕鬆進行擴展。若要這麼做，他們可以開發和維護一些描述組織主要資料模型的一般用途資料集。
+ **減少資料來源管理** – 商業分析師 (BAs) 通常會花費大量時間和精力來請求存取資料庫、管理資料庫登入資料、尋找正確的資料表，以及管理快速資料重新整理排程。從現有資料集建立新的資料集意味著 BA 不必使用資料庫的原始資料從頭開始。他們可以從精心整理的資料開始。
+ **預先定義的關鍵指標** – 透過從現有資料集建立資料集，資料工程師可以集中定義和維護其公司多個組織的重要資料定義。示例可能包括銷售增長和淨邊際回報。藉助此功能，資料工程師也可以將變更分發至這些定義。這種方法意味著他們的業務分析師可以更快速、更可靠地開始視覺化正確的資料。
+ **自訂資料的彈性** – 透過從現有資料集建立資料集，業務分析師可以根據自己的業務需求，獲得更大的彈性來自訂資料集。他們不必擔心會中斷其他團隊的資料。

舉例來說，假設您身處一個由五位資料工程師組成的電子商務中心團隊。您和您的團隊可以存取資料庫中的銷售、訂單、取消和退貨資料。您已透過結構描述聯結 18 個其他維度資料表來建立快速資料集。您的團隊建立的關鍵指標是計算欄位：訂單產品銷售額 (OPS)。它的定義是：OPS = 產品數量 x 價格。

您的團隊為 100 多名業務分析師提供服務，他們來自八個國家/地區的 10 個不同團隊，包括優惠券團隊、對外行銷團隊、行動平台團隊和推薦團隊。所有這些團隊都使用 OPS 指標作為分析自己業務線的基礎。

您的團隊不需要手動建立和維護數百個未連線的資料集，而是重複使用資料集，為整個組織的團隊建立多個等級的資料集。這樣做可集中管理資料，並允許每個團隊根據自己的需求自訂資料。同時，這會同步對資料的更新 (例如對指標定義的更新)，並維護資料列層級和資料欄層級的安全性。例如，組織中的個別團隊可以使用集中式資料集。然後，他們可以將這些資料集與其團隊的特定資料結合起來，建立新的資料集並以此為基礎構建分析。

除了使用關鍵 OPS 指標之外，組織中的其他團隊可以重複使用您建立的集中式資料集中的資料欄中繼資料。例如，資料工程團隊可以在集中式資料集中定義中繼資料，例如*名稱*、*描述*、*資料類型*和*資料夾*。所有後續團隊都可以使用它。

**注意**  
Amazon Quick 支援從單一資料集建立最多兩個額外層級的資料集。  
例如，您可以從父資料集建立子資料集，然後建立孫資料集，這樣總共就有三個資料集層級。

## 從現有資料集建立資料集
<a name="create-a-dataset-existing-dataset-how-to"></a>

請依下列程序從現有資料集建立資料集。

**從現有資料集建立資料集**

1. 從快速入門頁面，選擇左側窗格中**的資料**。

1. 選擇**建立**，然後選擇您要用來建立新資料集的資料集。

1. 在為該資料集開啟的頁面中，選擇**在分析中使用**下拉式選單，然後選擇**在資料集中使用**。

   資料準備頁面會開啟並預先載入父資料集中的所有內容，包括計算欄位、聯結和安全性設定。

1. 在所開啟資料準備頁面左下角的**查詢模式**中，選擇您希望資料集從原始父資料集提取變更和更新的方式。您可以選擇下列選項：
   + **直接查詢** – 這是預設查詢模式。如果選擇此選項，當您開啟關聯的資料集、分析或儀表板時，此資料集的資料會自動重新整理。然而，具有下列限制：
     + 如果父資料集允許直接查詢，您可以在子資料集中使用直接查詢模式。
     + 如果有多個父資料集聯結，則只有當所有父系都來自同一基礎資料來源時，才可以為子資料集選擇直接查詢模式。例如，相同的 Amazon Redshift 連線。
     + 單一 SPICE 父資料集支援直接查詢。有多個 SPICE 父資料集聯結時不支援此功能。
   + **SPICE** – 如果您選擇此選項，可以為新資料集設定排程，以便與父資料集同步。如需為資料集建立 SPICE 重新整理排程的詳細資訊，請參閱 [重新整理 SPICE 資料](refreshing-imported-data.md)。

1. (選用) 準備資料以進行分析。如需資料準備的詳細資訊，請參閱 [在 Amazon Quick Sight 中準備資料](preparing-data.md)。

1. (選用) 設定資料列層級或資料欄層級安全 (RLS/CLS)，以限制對資料集的存取。如需設定 RLS 的詳細資訊，請參閱 [透過以使用者為基礎的規則使用資料列層級安全來限制對資料集的存取使用以使用者為基礎的規則](restrict-access-to-a-data-set-using-row-level-security.md)。如需設定 CLS 的詳細資訊，請參閱 [使用資料欄層級安全，限制對資料集的存取](restrict-access-to-a-data-set-using-column-level-security.md)。
**注意**  
您只能在子資料集上設定 RLS/CLS。不支援在父資料集上設定 RLS/CLS。

1. 完成後，請選擇**儲存並發布**以儲存變更並發布新的子資料集。或選擇**發布並視覺化**以發布新的子資料集，並開始視覺化您的資料。

# 限制其他人從您的資料集建立新資料集
<a name="restrict-create-dataset"></a>

當您在 Amazon Quick 中建立資料集時，可以防止其他人將其用作其他資料集的來源。您可以指定其他人是否可以使用它來建立任何資料集。或者，您也可以指定其他人能夠或不能從您的資料集建立的資料集類型，例如直接查詢資料集或 SPICE 資料集。

請依下列程序了解如何限制其他人從您的資料集建立新資料集。

**限制其他人從您的資料集建立新資料集**

1. 從快速入門頁面，選擇左側窗格中**的資料**。

1. 選擇**建立**，然後選擇您要限制從中建立新資料集的資料集。

1. 在為該資料集開啟的頁面中，選擇**編輯資料集**。

1. 在開啟的資料準備頁面中，選擇右上角的**管理**，然後選擇**屬性**。

1. 在開啟的**資料集屬性**窗格中，從下列選項中選擇：
   + 若要限制任何人從此資料集建立任何類型的新資料集，請關閉**允許從此資料集建立新資料集**。

     允許建立新資料集時，切換開關為藍色。不允許建立新資料集時，切換開關為灰色。
   + 若要限制其他人建立直接查詢資料集，請清除**允許直接查詢**。
   + 若要限制其他人建立您的資料集的 SPICE 複本，請清除**允許 SPICE 複本**。

     如需 SPICE 資料集的詳細資訊，請參閱 [將資料匯入至 SPICE](spice.md)。

1. 關閉窗格。

# 編輯資料集
<a name="edit-a-data-set"></a>

您可以編輯現有的資料集，以執行資料準備。如需 Quick Sight 資料準備功能的詳細資訊，請參閱 [在 Amazon Quick Sight 中準備資料](preparing-data.md)。

您可以從**資料集**頁面或分析頁面開啟資料集進行編輯。從任一位置編輯資料集都會修改使用它的所有分析的資料集。

## 編輯資料集時應考量的事項
<a name="change-a-data-set"></a>

在兩種情況下，變更資料集可能會導致問題。其一是您刻意編輯資料集。另一個是資料來源的變更幅度已影響到以之為基礎的分析。

**重要**  
用在生產用途的分析應該受到保護，以持續正常運作。

當您處理資料變更時，建議採取下列動作：
+ 記錄您的資料來源和資料集，以及依賴它們的視覺效果。文件應該包含螢幕擷取畫面、使用的欄位，欄位集之內的位置、篩選、排序、計算、顏色、格式化等等。記錄您重新建立視覺效果所需的一切。您也可以在資料集管理選項中追蹤哪些 Quick Sight 資源使用資料集。如需詳細資訊，請參閱[追蹤使用資料集的儀表板和分析](track-analytics-that-use-dataset.md)。
+ 當您編輯資料集時，請儘量別讓變更破壞現有的視覺效果。例如，不要移除視覺效果中使用的欄。如果您必須移除欄，請建立計算欄代替它。替代欄的名稱和資料類型應該與原始欄相同。
+ 如果來源資料庫中的資料來源或資料集變更，請調整您的視覺效果以順應變更，如前所述。或者，您可以嘗試調整來源資料庫。例如，您可以建立來源表格的檢視 (文件)。然後，如果表格變更，您可以調整檢視來包含或排除資料欄 (屬性)、變更資料類型，填入空值，以此類推。或者，在其他情況下，如果您的資料集是基於緩慢的 SQL 查詢，可以建立資料表來儲存查詢結果。

  如果您無法充分調整資料的來源，請根據分析文件來重新建立視覺效果。
+ 如果您無法再存取資料來源，根據該來源的分析會變成空白。您建立的視覺效果仍然存在，但要等到有資料可顯示時才會出現。如果管理員變更許可，就可能發生此結果。
+ 如果您移除視覺效果所依據的資料集，可能需要從文件重新建立它。您可以編輯視覺效果，並選取新的資料集供它使用。如果您需要持續使用新檔案取代舊檔案，請將資料存放在始終可用的位置。例如，您可以將 .csv 檔案存放在 Amazon S3，並建立 S3 資料集以用於您的視覺效果。如需有關存取 S3 中存放的檔案的詳細資訊，請參閱[使用 Amazon S3 檔案建立資料集](create-a-data-set-s3.md)。

  或者，您可以將資料匯入表格，並以查詢做為視覺效果的基礎。如此，資料結構不會變更，即使其中包含的資料變更也一樣。
+ 若要集中管理資料，請考慮建立常規的多用途資料集，讓其他人可以用其建立自己的資料集。如需詳細資訊，請參閱[使用 Amazon Quick 中的現有資料集建立資料集](create-a-dataset-existing-dataset.md)。

## 從資料集頁面編輯資料集
<a name="edit-a-data-set-data"></a>

1. 從快速入門頁面，選擇左側**的資料**。

1. 在開啟**的資料**頁面上，選擇您要編輯的資料集，然後選擇右上角的**編輯資料集**。

   資料準備頁面即會開啟。如需可對資料集進行之編輯類型的詳細資訊，請參閱 [在 Amazon Quick Sight 中準備資料](preparing-data.md)。

## 編輯分析中的資料集
<a name="edit-a-data-set-analysis"></a>

請依下列程序從分析頁面編輯資料集。

**從分析頁面編輯資料集**

1. 在分析中，選擇**欄位清單**窗格頂端的鉛筆圖示。

1. 在開啟的**此分析中的資料集**頁面上，選擇要編輯之資料集右側的三個點，然後選擇**編輯**。

   資料集會在資料準備頁面中開啟。如需可對資料集進行之編輯類型的詳細資訊，請參閱 [在 Amazon Quick Sight 中準備資料](preparing-data.md)。

# 將資料集還原回先前發布的版本
<a name="dataset-versioning"></a>

當您在 Amazon Quick Sight 中儲存和發佈資料集的變更時，會建立新的資料集版本。您隨時都可以看到該資料集所有先前發布版本的清單。還可以預覽該記錄中的特定版本，需要時甚至可以將資料集還原回先前的版本。

下列限制會套用於資料集版本控制：
+ 只有最新的 1,000 個版本的資料集會顯示在發布記錄中，並且可用於版本控制。
+ 發布版本超過 1,000 個之後，最舊的版本會自動從發布記錄中移除，而且資料集無法再還原為這些版本。

請依下列程序將資料集還原為先前發布的版本。

**將資料集還原為先前發布的版本**

1. 在快速入門頁面中，選擇**資料**。

1. 在**資料**頁面上，選擇資料集，然後選擇右上角的**編輯資料集**。

   如需編輯資料集的詳細資訊，請參閱 [編輯資料集](edit-a-data-set.md)。

1. 在開啟的資料集準備頁面上，選擇右上角藍色工具列中的**管理**圖示，然後選擇**發布記錄**。

   先前發布的版本清單會顯示在右側。

1. 在**發布記錄**窗格中，找到您想要的版本，然後選擇**還原**。

   若要在還原之前預覽版本，請選擇**預覽**。

   資料集會還原，畫面上會顯示一則確認訊息。**發布記錄**窗格也會更新，以顯示資料集的作用中版本。

## 還原版本疑難排解
<a name="dataset-versioning-troubleshooting"></a>

有時，資料集可能因以下原因之一而無法還原為特定版本：
+ 資料集使用一個或多個已刪除的資料來源。

  如果發生此錯誤，您無法將資料集還原為先前的版本。
+ 還原會導致計算欄位無效。

  如果發生此錯誤，可以編輯或移除計算欄位，然後儲存資料集。如此會建立新版本的資料集。
+ 資料來源中缺失一個或多個資料欄。

  如果發生此錯誤，Quick Sight 會在預覽中顯示來自資料來源的最新結構描述，以協調版本之間的差異。結構描述預覽中顯示的任何計算欄位、欄位名稱、欄位類型和篩選器變更都來自您要還原到的目標版本。您可以將此經過協調的結構描述儲存為資料集的新版本。也可以在發布記錄中選擇頂部 (最新) 版本上的**預覽**，以返回到作用中 (最新) 版本。

# 複製資料集
<a name="duplicate-a-data-set"></a>

您可以複製現有的資料集，以新名稱儲存其副本。新資料集是完全獨立的副本。

如果下列兩種情況成立，則可以使用**複製資料集**選項：您擁有資料集，而且您有資料來源的許可。

**複製資料集**

1. 從快速入門頁面，選擇左側**的資料**。

1. 選擇您要複製的資料集。

1. 在開啟的資料集詳細資訊頁面上，選擇**編輯資料集**的下拉式清單，然後選擇**複製**。

1. 在開啟的「複製資料集」頁面上，為複製的資料集命名，然後選擇**複製**。

   複製資料集詳細資訊頁面將開啟。您可以在此頁面中編輯資料集、設定重新整理排程等等。

# 共用資料集
<a name="sharing-data-sets"></a>

您可以將資料集的存取權分享給其他 Quick Sight 使用者和群組。然後，他們可以從它建立分析。如果您讓他們成為共同擁有者，他們也可以重新整理、編輯、刪除或再分享資料集。

## 共用資料集
<a name="share-a-data-set"></a>

如果您具有資料集的擁有者許可，可依下列程序共用它。

**共用資料集**

1. 從快速入門頁面，選擇左側**的資料**。

1. 在**資料**頁面上，選擇您要共用的資料集。

1. 在開啟的資料集詳細資訊頁面上，選擇**許可**標籤，然後選擇**新增使用者和群組**。

1. 輸入您要與其共用此資料集的使用者或群組，然後選擇**新增**。您只能邀請屬於相同快速帳戶的使用者。

   重複這個步驟，直到您已為所有想要與之共用資料集的人輸入資訊。

1. 在**許可**資料欄中，選擇每個使用者或群組的角色，為他們提供資料集的許可。

   選擇**檢視者**，以允許使用者從資料集建立分析和資料集。選擇**擁有者**，讓使用者能執行此作業，還可以重新整理、編輯、刪除和再共用資料集。

   使用者會收到附有資料集連結的電子郵件。群組不會收到邀請電子郵件。

# 檢視和編輯已共用資料集的使用者的許可
<a name="view-users-data-set"></a>

如果您具有資料集的擁有者許可，可依下列程序檢視、編輯或變更其使用者存取。

**檢視、編輯或變更資料集的使用者存取權 (如果您擁有資料集的擁有者許可)**

1. 從快速入門頁面，選擇左側**的資料**。

1. 在**資料**頁面上，選擇您要共用的資料集。

1. 在開啟的資料集詳細資訊頁面上，選擇**許可**標籤。

   此時會顯示有權存取該資料集的所有使用者和群組的清單。

1. (選用) 若要變更使用者或群組的許可角色，請在使用者或群組的**許可**資料欄中選擇下拉式選單。然後選擇**使用者**或**擁有者**。

# 撤銷對資料集的存取權
<a name="revoke-access-to-a-data-set"></a>

如果您具有資料集的擁有者許可，可依下列程序撤銷使用者對資料集的存取權。

**撤銷使用者對資料集的存取權 (如果您擁有資料集的擁有者許可)**

1. 從快速入門頁面，選擇左側**的資料**。

1. 在**資料**頁面上，選擇您要共用的資料集。

1. 在開啟的資料集詳細資訊頁面上，選擇**許可**標籤。

   此時會顯示有權存取該資料集的所有使用者和群組的清單。

1. 在使用者或群組的**動作**資料欄中，選擇**撤銷存取權**。

# 追蹤使用資料集的儀表板和分析
<a name="track-analytics-that-use-dataset"></a>

當您在 Quick Sight 中建立資料集時，您可以追蹤哪些儀表板和分析使用該資料集。如果您想要查看對資料集進行變更時哪些資源會受到影響，或者想要刪除資料集時，這個方法非常有用。

請依下列程序查看哪些儀表板和分析使用了資料集。

**追蹤使用資料集的資源**

1. 從快速入門頁面，選擇左側窗格中**的資料**。

1. 在**資料**頁面上，選擇要追蹤資源的資料集。

1. 在為該資料集開啟的頁面中，選擇**編輯資料集**。

1. 在開啟的資料準備頁面中，選擇右上角的**管理**，然後選擇**使用情況**。

1. 使用該資料集的儀表板和分析會列在開啟的窗格中。

# 在 Amazon Quick 中使用資料集參數
<a name="dataset-parameters"></a>

在 Amazon Quick 中，作者可以在直接查詢中使用資料集參數來動態自訂其資料集，並將可重複使用的邏輯套用至其資料集。*資料集參數*是在資料集層級建立的參數。分析參數會透過控制項、計算欄位、篩選器、動作、URL、標題和描述使用它。如需分析參數的詳細資訊，請參閱 [Amazon Quick 中的參數](parameters-in-quicksight.md)。下列清單說明可以使用資料集參數執行的三個動作：
+  **直接查詢中的自訂 SQL** – 資料集擁有者可以將資料集參數插入直接查詢資料集的自訂 SQL 中。當這些參數套用到快速分析中的篩選條件控制項時，使用者可以更快、更有效率地篩選其自訂資料。
+ **可重複變數** – 透過自訂資料集參數，可以在一個動作中修改出現在資料集頁面中的多個位置的靜態值。
+ **將計算欄位移至資料集** – 快速作者可以在分析中使用參數複製計算欄位，並將其遷移至資料集層級。這樣可以防止分析層級的計算欄位被意外修改，並且可以在多個分析之間共用計算欄位。

在某些情況下，資料集參數可以提高需要複雜自訂 SQL 的直接查詢資料集的篩選控制效能，並簡化資料集層級的業務邏輯。

**Topics**
+ [

## 資料集參數限制
](#dataset-parameters-limitations)
+ [

# 在 Amazon Quick 中建立資料集參數
](dataset-parameters-SQL.md)
+ [

# 將資料集參數插入自訂 SQL
](dataset-parameters-insert-parameter.md)
+ [

# 將資料集參數新增至計算欄位
](dataset-parameters-calculated-fields.md)
+ [

# 將資料集參數新增至篩選條件
](dataset-parameters-dataset-filters.md)
+ [

# 在快速分析中使用資料集參數
](dataset-parameters-analysis.md)
+ [

# 資料集參數的進階使用案例
](dataset-parameters-advanced-options.md)

## 資料集參數限制
<a name="dataset-parameters-limitations"></a>

本節涵蓋您在 Amazon Quick 中使用資料集參數時可能遇到的已知限制。
+ 當儀表板讀取器排程透過電子郵件寄送的報告時，選取的控制項不會傳播到電子郵件所附報告中包含的資料集參數。相反，使用的是參數的預設值。
+ 資料集參數無法插入儲存在 SPICE 中的資料集的自訂 SQL 中。
+ 動態預設值只能在使用資料集之分析的分析頁面上設定。您不能在資料集層級設定動態預設值。
+ 對應至資料集參數的分析參數的多值控制項不支援**全選**選項。
+ 資料集參數不支援階層式控制項。
+ 只有在資料集使用直接查詢時，資料集篩選器才能使用資料集參數。
+ 在自訂 SQL 查詢中，只能使用 128 個資料集參數。

# 在 Amazon Quick 中建立資料集參數
<a name="dataset-parameters-SQL"></a>

請依下列程序開始使用資料集參數。

**若要建立新的資料集參數**

1. 在快速開始頁面中，選擇左側**的資料**，選擇您要變更之資料集旁的省略符號 （三個點），然後選擇**編輯**。

1. 在開啟的**資料集**頁面上，選擇左側的**參數**，然後選擇 (\$1) 圖示以建立新的資料集參數。

1. 在出現之**建立新參數**快顯視窗的**名稱**方塊中輸入參數名稱。

1. 在**資料類型**下拉式清單中，選擇想要的參數資料類型。支援的資料類型包括 `String`、`Integer`、`Number` 和 `Datetime`。參數建立之後就無法變更此選項。

1. 在**預設值**中，根據您的想法輸入參數的預設值。
**注意**  
將資料集參數映射至分析參數時，可以選擇不同的預設值。如果發生這種情況，此處設定的預設值將被新的預設值覆蓋。

1. 在**值**中，根據您的想法選擇值類型。**單值**參數支援單選型下拉式清單、文字欄位和清單控制項。**多值**參數支援多選型下拉式清單控制項。參數建立之後就無法變更此選項。

1. 新參數設定完成後，選擇**建立**以建立參數。

# 將資料集參數插入自訂 SQL
<a name="dataset-parameters-insert-parameter"></a>

透過在 SQL 陳述式中使用 `<<$parameter_name>>` 引用資料集，可以在直接查詢模式下將資料集參數插入到資料集的自訂 SQL 中。在執行期，儀表板使用者可以輸入與資料集參數關聯的篩選控制項值。然後，當值傳播到 SQL 查詢之後，即可在儀表板視覺效果中看到結果。您可以使用參數，根據 `where` 子句中的客戶輸入建立基本篩選器。也可以新增 `case when` 或 `if else` 子句，根據參數的輸入動態變更 SQL 查詢的邏輯。

例如，假設您想要在自訂 SQL 中新增 `WHERE` 子句，以根據最終使用者的區域名稱篩選資料。在這種情況下，可以建立名為 `RegionName` 的單值參數：

```
SELECT *
FROM transactions
WHERE region = <<$RegionName>>
```

也可以讓使用者為參數提供多個值：

```
SELECT *
FROM transactions
WHERE region in (<<$RegionNames>>)
```

在下列更複雜的範例中，資料集作者會根據可在儀表板篩選控制項中選取的使用者名字和姓氏，引用兩個資料集參數兩次：

```
SELECT Region, Country, OrderDate, Sales
FROM transactions
WHERE region=
(Case
WHEN <<$UserFIRSTNAME>> In 
    (select firstname from user where region='region1') 
    and <<$UserLASTNAME>> In 
    (select lastname from user where region='region1') 
    THEN 'region1'
WHEN <<$UserFIRSTNAME>> In 
    (select firstname from user where region='region2') 
    and <<$UserLASTNAME>> In 
    (select lastname from user where region='region2') 
    THEN 'region2'
ELSE 'region3'
END)
```

您也可以使用 `SELECT` 子句中的參數，在使用者輸入的資料集中建立新資料欄：

```
SELECT Region, Country, date, 
    (case 
    WHEN <<$RegionName>>='EU'
    THEN sum(sales) * 0.93   --convert US dollar to euro
    WHEN <<$RegionName>>='CAN'
    THEN sum(sales) * 0.78   --convert US dollar to Canadian Dollar
    ELSE sum(sales) -- US dollar
    END
    ) as "Sales"
FROM transactions
WHERE region = <<$RegionName>>
```

若要在新增資料集參數之前建立自訂 SQL 查詢或編輯現有查詢，請參閱 [使用 SQL 自訂資料](adding-a-SQL-query.md)。

當您套用具有資料集參數的自訂 SQL 時，`<<$parameter_name>>` 將用作預留位置值。當使用者從控制項選擇其中一個參數值時，Quick 會將預留位置取代為使用者在儀表板上選取的值。

在下列範例中，使用者輸入了新的自訂 SQL 查詢，依狀態篩選資料：

```
select * from all_flights
where origin_state_abr = <<$State>>
```

參數的預設值會套用至 SQL 查詢，且結果會顯示在**預覽窗格**中。

# 將資料集參數新增至計算欄位
<a name="dataset-parameters-calculated-fields"></a>

也可以使用 `${parameter_name}` 格式將資料集參數新增至計算欄位運算式。

當您建立計算時，可以從**參數**清單下的參數清單選擇現有參數。您不能建立含有多值參數的計算欄位。

如需新增計算欄位的詳細資訊，請參閱 [在 Amazon Quick 中使用計算欄位搭配參數](parameters-calculated-fields.md)。

# 將資料集參數新增至篩選條件
<a name="dataset-parameters-dataset-filters"></a>

對於直接查詢模式中的資料集，資料集作者可以在篩選器中使用資料集參數，無需自訂 SQL。如果資料集位於 SPICE 中，則資料集參數無法新增至篩選器。

**若要將資料集參數新增至篩選器**

1. 開啟要為其建立篩選器的資料集的資料集頁面。選擇左側的**篩選器**，然後選擇**新增篩選器**。

1. 根據您的想法輸入篩選器的名稱，然後在下拉式清單中選擇要篩選的欄位。

1. 建立新篩選器之後，瀏覽至**篩選器**窗格中的篩選器，選擇篩選器旁邊的省略符號 (三個點)，然後選擇**編輯**。

1. 選擇**自訂篩選器**作為**篩選器類型**。

1. 選擇您想要的條件作為**篩選器**。

1. 選取**使用參數**方塊，然後選擇您要篩選器使用的資料集參數。

1. 完成變更後，選擇**套用**。

# 在快速分析中使用資料集參數
<a name="dataset-parameters-analysis"></a>

一旦您建立資料集參數，將資料集新增至分析後，請將資料集參數映射至新的或現有的分析參數。將資料集參數映射至分析參數後，您可以將其與篩選器、控制項和任何其他分析參數功能一起使用。

您可以在使用參數所屬之資料集的分析的**參數**窗格中管理資料集參數。在**參數**窗格的**資料集參數**區段，您可以選擇僅查看未映射的資料集參數 (預設)。或者，可以從**檢視**下拉式清單中選擇**全部**，選擇查看所有映射和未映射的資料集參數。

## 在新的快速分析中映射資料集參數
<a name="dataset-parameters-map-to-analysis"></a>

當您從包含參數的資料集建立新分析時，必須先將資料集參數映射至分析，然後才能使用。當您將具有參數的資料集新增至分析時，也會出現這種情況。您可以透過分析的**參數**窗格，檢視分析中所有未映射的參數。或者，在建立分析或新增資料集時，於頁面右上角顯示的通知訊息中選擇**檢視**。

**若要將資料集參數映射至分析參數**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 選擇您想要變更的分析。

1. 選擇**參數**圖示，以開啟**參數**窗格。

1. 選擇您要映射的資料集參數旁邊的省略符號 (三個點)，選擇**映射參數**，然後選擇要映射資料集參數的分析參數。

   如果您的分析中沒有任何分析參數，可以選擇**映射參數**和**新建**來建立分析參數，該參數會在建立時自動映射至資料集參數。

   1. (選用) 在出現之**建立新參數**快顯視窗的**名稱**方塊中，輸入新分析參數的名稱。

   1. (選用) 對於**靜態預設值**，根據您的想法選擇參數的靜態預設值。

   1. (選用) 選擇**設定動態預設值**以設定新參數的動態預設值。

   1. 在**映射的資料集參數**資料表中，您會看到要映射至新分析參數的資料集參數。您可以選擇**新增資料集參數**下拉式清單，然後選擇要映射的參數，將其他資料集參數新增至此分析參數。您可以選擇要移除之資料集參數旁邊的**移除**按鈕，取消映射資料集參數。

   如需建立分析參數的詳細資訊，請參閱 [在 Amazon Quick 中設定參數](parameters-set-up.md)。

當您將資料集參數映射至分析參數時，分析參數表示分析中使用的資料集參數。

您也可以在**編輯參數**視窗中將資料集參數映射和取消映射至分析參數。若要開啟**編輯參數**視窗，請瀏覽至**參數**窗格，選擇要變更之分析參數旁邊的省略符號 (三個點)，然後選擇**編輯參數**。您可以選擇**新增資料集參數**下拉式清單，然後選擇要映射的參數，將其他資料集參數新增至此分析參數。您可以選擇要移除之資料集參數旁邊的**移除**按鈕，取消映射資料集參數。也可以選擇**全部移除**，移除映射的所有資料集參數。完成變更後，選擇**更新**。

刪除分析參數時，所有資料集參數都會從分析中取消映射，並顯示在**參數**窗格的**已取消映射**區段中。一次只能將資料集參數映射至一個分析參數。若要將資料集參數映射至不同的分析參數，請取消映射資料集參數，然後將其映射至新的分析參數。

## 將篩選條件控制項新增至映射的分析參數
<a name="dataset-parameters-analysis-filter-control"></a>

將資料集參數映射至 Quick 中的分析參數之後，您可以建立篩選條件、動作、計算欄位、標題、描述和 URLs篩選條件控制項。

**若要將控制項新增至映射的參數**

1. 在分析頁面的**參數**窗格中，選擇您想要的映射分析參數旁邊的省略符號 (三個點)，然後選擇**新增控制項**。

1. 在出現的**新增控制項**視窗中，根據您的想法輸入**名稱**，然後選擇控制項的**樣式**。對於單值控制項，選擇 `Dropdown`、`List` 或 `Text field`。對於多值控制項，選擇 `Dropdown`。

1. 選擇**新增**以建立控制項。

# 資料集參數的進階使用案例
<a name="dataset-parameters-advanced-options"></a>

本章節介紹使用資料集參數和下拉式清單控制項的更多進階選項和使用案例。請依照以下分步說明使用資料集參數建立動態下拉式清單值。

## 將多值控制項與資料集參數結合使用
<a name="dataset-parameters-dropdown"></a>

當您使用插入到資料集之自訂 SQL 中的資料集參數時，資料集參數通常會依據特定資料欄中的值篩選資料。如果您建立下拉式清單控制項並將參數指派為值，下拉式清單只會顯示參數篩選的值。下列程序說明如何建立映射至資料集參數的控制項，並顯示所有未篩選的值。

**若要在下拉式控制項中填入指派的所有值**

1. 在 SPICE 或直接查詢中建立新的單欄資料集，其中包含原始資料集中的所有唯一值。例如，假設您的原始資料集使用下列自訂 SQL：

   ```
   select * from all_flights
           where origin_state_abr = <<$State>>
   ```

   若要建立具有所有唯一原始州的單欄資料表，請將下列自訂 SQL 套用至新資料集：

   ```
   SELECT distinct origin_state_abr FROM all_flights
           order by origin_state_abr asc
   ```

   SQL 運算式會依字母順序傳回所有唯一州。新資料集沒有任何資料集參數。

1. 輸入新資料集的**名稱**，然後儲存並發布資料集。在我們的範例中，新資料集名為 `State Codes`。

1. 開啟包含原始資料集的分析，然後將新資料集新增至分析。如需將資料集新增至現有分析的相關資訊，請參閱 [將資料集新增至分析](adding-a-data-set-to-an-analysis.md)。

1. 導覽至**控制項**窗格並找到要編輯的下拉式清單控制項。選擇控制項旁邊的省略符號 (三個點)，然後選擇**編輯**。

1. 在左側**格式控制項**的**值**區段中，選擇**連結至資料集欄位**。

1. 在出現的**資料集**下拉式清單中，選擇您建立的新資料集。在我們的範例中，選擇了 `State Codes` 資料集。

1. 對於所出現的**欄位**下拉式清單，選擇適當的欄位。在我們的範例中，選擇了 `origin_state_abr` 資料集。

將控制項連結至新資料集之後，所有唯一值都會顯示在控制項的下拉式清單中。其中包括資料集參數篩選掉的值。

## 將控制項與「全選」選項結合使用
<a name="dataset-parameters-controls-select-all"></a>

依預設，當一個或多個資料集參數映射至分析參數並新增至控制項時，`Select all` 選項不可用。下列程序顯示了使用上一章節中的相同範例場景的解決方法。

**注意**  
此分步說明適用於足夠小的資料集，可以在直接查詢中載入。如果資料集很大且想要使用 `Select All` 選項，建議您將資料集載入 SPICE。但是，如果您想要將 `Select All` 選項與資料集參數結合使用，此分步說明介紹了執行此作業的方法。

首先，假設您有一個帶有自訂 SQL 的直接查詢資料集，其中包含名為 `States` 的多值參數：

```
select * from all_flights
where origin_state_abr in (<<$States>>)
```

**若要在使用資料集參數的控制項中使用「全選」選項**

1. 在分析的**參數**窗格中，找到您要使用的資料集參數，然後從參數旁邊的省略符號 (三個點) 中選擇**編輯**。

1. 在顯示的**編輯參數**視窗中，於**靜態多重預設值**區段中輸入新的預設值。在我們的範例中，預設值是 ` All States`。請注意，此範例會使用前導空格字元，以便預設值顯示為控制項中的第一項。

1. 選擇**更新**以更新參數。

1. 導覽至包含您在逐次分析中使用之資料集參數的資料集。編輯資料集的自訂 SQL，以包含全新靜態多重預設值的預設使用案例。使用 ` All States` 範例，SQL 運算式如下所示：

   ```
   select * from public.all_flights
   where
       ' All States' in (<<$States>>) or
       origin_state_abr in (<<$States>>)
   ```

   如果使用者在控制項中選擇 ` All States`，則新 SQL 運算式會傳回所有唯一記錄。如果使用者從控制項中選擇不同的值，則查詢會傳回資料集參數篩選的值。

### 將控制項與「全選」和多值選項結合使用
<a name="dataset-parameters-controls-multi-select-all"></a>

您可以將先前的 `Select all` 程序與先前討論的多值控制方法結合使用，以建立除使用者可以選取的多個值之外，還包含一個 `Select all` 值的下拉式清單控制項。此分步說明假設您已遵循先前的程序，知道如何將資料集參數映射至分析參數，並且可以在分析中建立控制項。如需映射分析參數的詳細資訊，請參閱 [在新的快速分析中映射資料集參數](dataset-parameters-analysis.md#dataset-parameters-map-to-analysis)。如需在使用資料集參數的分析中建立控制項的詳細資訊，請參閱 [將篩選條件控制項新增至映射的分析參數](dataset-parameters-analysis.md#dataset-parameters-analysis-filter-control)。

**若要使用「全選」選項和映射的資料集參數將多個值新增至控制項**

1. 開啟分析，其中包含採 `Select all` 自訂 SQL 運算式的原始資料集，以及包含原始資料集中經篩選資料欄之所有可能值的第二個資料集。

1. 導覽至先前建立的次要資料集，以傳回經篩選之資料欄的所有值。新增自訂 SQL 運算式，將先前設定的 `Select all` 選項新增至查詢。下列範例會將 ` All States` 記錄新增至資料集傳回值清單的頂端：

   ```
   (Select ' All States' as origin_state_abr)
       Union All
       (SELECT distinct origin_state_abr FROM all_flights
       order by origin_state_abr asc)
   ```

1. 返回資料集所屬的分析，並將您使用的資料集參數映射至在上一個程序之步驟 3 中建立的分析參數。分析參數和資料集參數的名稱可以相同。在我們的範例中，分析參數名為 `States`。

1. 建立新的篩選控制項或編輯現有的篩選控制項，然後選擇**隱藏全選**，隱藏顯示在多值控制項中的已停用**全選**選項。

建立控制項之後，使用者可以使用相同的控制項，以選取資料集中經篩選資料欄的全部或多個值。

# 在 Amazon Quick 中使用資料列層級安全性
<a name="row-level-security"></a>


|  | 
| --- |
|  適用於：企業版  | 

在 Amazon Quick 企業版中，您可以透過在資料集上設定資料列層級安全性 (RLS) 來限制對資料集的存取。您可以在共用資料集之前或之後這樣做。當您與資料集擁有者共用 RLS 資料集時，他們仍然可以看到所有資料。然而，當您與讀者共用時，他們只能看到許可資料集規則許可的資料。

此外，當您為 Quick 的未註冊使用者在應用程式中嵌入 Amazon Quick 儀表板時，您可以使用資料列層級安全性 (RLS) 來篩選/限制具有標籤的資料。標籤是使用者指定的字串，可識別應用程式中的工作階段。您可以使用標籤來實作資料集的 RLS 控制項。透過在資料集中設定以 RLS 為基礎的限制，快速根據與使用者身分/工作階段繫結的工作階段標籤來篩選資料。

您可以使用以使用者名稱或群組為基礎的規則，或以標籤為基礎的規則，或結合兩者來限制對資料集的存取。

如果您想要保護在 Quick 中佈建 （註冊） 之使用者或群組的資料，請選擇使用者型規則。為此，請選取一個許可資料集，其中包含為存取資料的每個使用者或群組按資料欄設定的規則。只有規則中已識別的使用者或群組才能存取資料。

只有在您使用內嵌儀表板，並且想要為未在 Quick 中佈建 （未註冊使用者） 的使用者保護資料時，才選擇標籤型規則。為此，請在資料欄上定義標籤以保護資料。內嵌儀表板時必須傳遞標籤的值。

**Topics**
+ [

# 透過以使用者為基礎的規則使用資料列層級安全來限制對資料集的存取
](restrict-access-to-a-data-set-using-row-level-security.md)
+ [

# 在為匿名使用者嵌入儀表板時，透過以標籤為基礎的規則使用資料列層級安全來限制對資料集的存取
](quicksight-dev-rls-tags.md)

# 透過以使用者為基礎的規則使用資料列層級安全來限制對資料集的存取
<a name="restrict-access-to-a-data-set-using-row-level-security"></a>


|  | 
| --- |
|  適用於：企業版  | 

在 Amazon Quick 企業版中，您可以透過在資料集上設定資料列層級安全性 (RLS) 來限制對資料集的存取。您可以在共用資料集之前或之後這樣做。當您與資料集擁有者共用 RLS 資料集時，他們仍然可以看到所有資料。然而，當您與讀者共用時，他們只能看到許可資料集規則許可的資料。透過新增資料列層級安全，您可以進一步控制其存取權。

**注意**  
對 SPICE 資料集套用資料列層級安全時，資料集中的每個欄位最多可以包含 2,047 個 Unicode 字元。超過此限制的欄位將在擷取過程中被截斷。若要進一步了解 SPICE 資料配額，請參閱 [匯入資料的 SPICE 配額](data-source-limits.md#spice-limits)。

若要這樣做，您可以建立一個查詢或檔案，其中包含一個資料欄供使用者或群組識別。您可以使用 `UserName`和 `GroupName`，或者使用 `UserARN`和 `GroupARN`。您可以想像這是為該使用者或群組*新增規則*。然後，針對您要授與或限制存取的每一個欄位，您可以在查詢或檔案中新增一欄。針對您新增的每個使用者或群組名稱，請加入各欄位的值。您可以使用 NULL (無值) 來表示所有值。若要查看資料集規則的範例，請參閱 [建立資料列層級安全的資料集規則](#create-data-set-rules-for-row-level-security)。

若要套用資料集規則，請將該規則當做許可資料集，新增到您的資料集。請謹記以下幾點：
+ 許可資料集不得包含重複的值。評估如何套用規則時將會忽略重複項目。
+ 指定的每個使用者或群組只能看到與資料集規則中的欄位值*相符的*資料列。
+ 如果您為使用者或群組新增規則，並保持所有其他資料欄都沒有值 (NULL)，即表示您授權其存取所有資料。
+ 如果您不為使用者或群組新增規則，該使用者或群組將無法看到任何資料。
+ 每個使用者套用的完整規則紀錄集不得超過 999 個。此限制適用於直接指派給使用者名稱的總規則數，加上透過群組名稱指派給使用者的任何規則。
+ 如果欄位包含逗號 (，)，Amazon Quick 會將每個以逗號分隔的單字視為篩選條件中的個別值。例如，在 `('AWS', 'INC')` 中，`AWS,INC` 被視為兩個字串：`AWS` 和 `INC`。若要使用 `AWS,INC` 進行篩選，請在許可資料集中用雙引號將字串括起來。

  如果受限資料集是 SPICE 資料集，則每個使用者對每個受限欄位所套用的篩選條件值的數量不能超過 192,000 個。這適用於直接指派給使用者名稱的總篩選條件值數，加上透過群組名稱指派給使用者的任何篩選條件值。

  如果受限資料集是直接查詢資料集，則每個使用者可套用的篩選條件值的數量會因資料來源而異。

  超過篩選條件值限制可能會導致視覺化效果渲染失敗。建議在受限資料集中新增額外的資料欄，以根據原始受限資料欄將資料列分組，從而縮短篩選條件清單。

Amazon Quick 會將空格視為常值。如果您限制的欄位中有空格，則資料集規則將會套用到這些資料列。Amazon Quick 會將 NULLs和空白 （空字串 "") 視為「無值」。NULL 是空欄位值。

視您的資料集源自哪個資料來源而定，您可以設定直接查詢來存取許可表。以空格分隔的字詞不需要用引號分隔。如果您使用直接查詢，您可以在原始資料來源中輕鬆變更查詢。

或者，您可以從文字檔案或試算表上傳資料集規則。如果您使用逗號分隔值 (CSV) 檔案，指定的行切勿包含空格。包含空格的字詞需要用引號分隔。如果您是使用檔案形式的資料集規則，請由資料集的許可設定中覆寫現有的規則，以套用任何變更。

受限制的資料集會在資料****畫面中以 **RESTRICTED** 一詞標示。

從具有作用中 RLS 規則的父資料集建立的子資料集，其保留父資料集的 RLS 規則。您可以為子資料集新增更多 RLS 規則，但無法移除其從父資料集繼承的 RLS 規則。

若要從具有作用中 RLS 規則的父資料集建立的子資料集，您只能使用直接查詢。SPICE 不支援繼承父資料集 RLS 規則的子資料集。

資料列層級安全只適用於包含文字資料 (string、char、varchar 等) 的欄位。目前不適用於日期或數值欄位。使用資料列層級安全 (RLS) 的資料集不支援異常偵測。

## 建立資料列層級安全的資料集規則
<a name="create-data-set-rules-for-row-level-security"></a>

透過以下程序，建立許可檔案或查詢作為資料集規則。

**建立許可檔案或查詢作為資料集規則**

1. 建立包含資料列層級安全之資料集規則 (許可) 的檔案或查詢。

   欄位的排列順序並不重要。不過，所有欄位區分大小寫。確保它們完全符合欄位名稱和值。

   結構看起來應該類似下列其中之一。確保至少有一個欄位可識別使用者或群組。您可以同時包含兩者，但只需要一個，而且一次只能使用一個。您用於使用者或群組的欄位可以使用您選擇的任何名稱。
**注意**  
如果您要指定群組，請僅使用 Amazon Quick 群組或 Microsoft AD 群組。

   以下範例顯示具有群組的資料表。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/restrict-access-to-a-data-set-using-row-level-security.html)

   以下範例顯示具有使用者名稱的資料表。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/restrict-access-to-a-data-set-using-row-level-security.html)

   以下範例顯示一個包含使用者和群組 Amazon Resource Name (ARN) 的資料表。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/restrict-access-to-a-data-set-using-row-level-security.html)

   或者，如果您使用 .csv 檔案，結構看起來應該類似下列其中之一。

   ```
   UserName,SalesRegion,Segment
   AlejandroRosalez,EMEA,"Enterprise,SMB,Startup"
   MarthaRivera,US,Enterprise
   NikhilJayashankars,US,SMB
   PauloSantos,US,Startup
   SaanviSarkar,APAC,"SMB,Startup"
   sales-tps@example.com,"",""
   ZhangWei,APAC-Sales,"Enterprise,Startup"
   ```

   ```
   GroupName,SalesRegion,Segment
   EMEA-Sales,EMEA,"Enterprise,SMB,Startup"
   US-Sales,US,Enterprise
   US-Sales,US,SMB
   US-Sales,US,Startup
   APAC-Sales,APAC,"SMB,Startup"
   Corporate-Reporting,"",""
   APAC-Sales,APAC,"Enterprise,Startup"
   ```

   ```
   UserARN,GroupARN,SalesRegion
   arn:aws:quicksight:us-east-1:123456789012:user/Bob,arn:aws:quicksight:us-east-1:123456789012:group/group-1,APAC
   arn:aws:quicksight:us-east-1:123456789012:user/Sam,arn:aws:quicksight:us-east-1:123456789012:group/group-2,US
   ```

   以下是 SQL 範例。

   ```
   /* for users*/
   	select User as UserName, SalesRegion, Segment
   	from tps-permissions;
   
   	/* for groups*/
   	select Group as GroupName, SalesRegion, Segment
   	from tps-permissions;
   ```

1. 為資料集規則建立資料集。為了確保您能輕鬆找到它，請提供一個意義的名稱，例如 **Permissions-Sales-Pipeline**。

## 針對資料列層級安全進行規則資料集標記
<a name="rules-dataset-flagging-for-row-level-security"></a>

依照下列程序將資料集適當地標記為規則資料集。

規則資料集是一種旗標，可將用於資料列層級安全的許可資料集與一般資料集區分開來。如果許可資料集在 2025 年 3 月 31 日之前套用至一般資料集，則其在**資料集**登陸頁面中具有規則資料集旗標。

如果許可資料集在 2025 年 3 月 31 日之前未套用至一般資料集，則會將其分類為一般資料集。若要將其用作規則資料集，請複製該許可資料集，並在建立資料集時在主控台上將其標記為規則資料集。選取編輯資料集，然後在選項下，選擇複製為規則資料集。

若要成功將其複製為規則資料集，請確保原始資料集具有：1. 必要的使用者中繼資料或群組中繼資料資料欄，以及 2. 僅字串類型的資料欄。

若要在主控台上建立新的規則資料集，請在「新資料集」下拉式清單下選取「新規則資料集」。以程式設計方式建立規則資料集時，請新增下列參數：[UseAs: RLS\$1RULES](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_CreateDataSet.html#API_CreateDataSet_RequestSyntax)。此參數為選用參數，僅用於建立規則資料集。資料集一旦透過主控台或以程式設計方式建立並標記為規則資料集或一般資料集後，便無法變更。

一旦資料集標記為規則資料集，Amazon Quick 就會對其套用嚴格的 SPICE 擷取規則。為了確保資料完整性，如果有無效的資料列或儲存格超過長度限制，對規則資料集進行的 SPICE 擷取將會失敗。您必須修正擷取問題，才能重新啟動成功的擷取。嚴格擷取規則僅適用於規則資料集。對於一般資料集，如果有略過的資料列或字串截斷，不會發生資料集擷取失敗。

## 套用資料列層級安全
<a name="apply-row-level-security"></a>

利用檔案或查詢做為包含許可規則的資料集，以透過以下程序來套用資料列層級安全 (RLS)。

**使用檔案或查詢套用資料列層級安全**

1. 確認您已將規則新增為新的資料集。如果已新增，但在資料集清單下方沒看到，請重新整理畫面。

1. 在**資料**頁面上，選擇資料集

1. 在開啟的資料集詳細資訊頁面上，針對**資料列層級安全**，選擇**設定**。

1. 在開啟的**設定資料列層級安全**頁面上，選擇**以使用者為基礎的規則**。

1. 從顯示的資料集清單中，選擇您的許可資料集。

   如果您的許可資料集沒有出現在此畫面上，請回到您的資料集，並重新整理頁面。

1. 針對**許可政策**，選擇**授予對資料集的存取**。每個資料集只有一個作用中的許可資料集。如果您嘗試新增第二個許可資料集，則會覆寫現有的資料集。
**重要**  
使用資料列層級安全時，有一些限制會套用至 NULL 和空字串值。  
如果您的資料集在受限制欄位中有 NULL 值或空字串 ("")，則套用限制時會忽略這些資料列。
在許可資料集內，NULL 值和空字串將視為相同。如需詳細資訊，請參閱下表。
為了防止意外暴露敏感資訊，Amazon Quick 會略過將存取權授予每個人的空白 RLS 規則。當一個資料列的所有欄都沒有值時，就會出現*空 RLS 規則*。Quick RLS 會將 NULL、空字串 ("") 或空逗號分隔字串 （例如 "、、") 視為無值。  
略過空規則後，其他非空 RLS 規則仍然會套用。
如果許可資料集只有空規則且所有規則都被略過，則任何人都將無法存取受此許可資料集限制的任何資料。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/restrict-access-to-a-data-set-using-row-level-security.html)

   您與之共用儀表板的任何人都可以看到其中的所有資料，除非資料集受到資料集規則所限制。

1. 選擇**套用資料集**以儲存變更。然後，在「**儲存資料集規則？**」頁面上，選擇**套用並啟動**。許可的變更會立即套用到現有的使用者。

1. (選用) 若要移除許可，首先請從資料集移除資料集規則。

   確定已移除資料集規則。然後，選擇許可資料集，再選擇**移除資料集**。

   若要覆寫許可，請選擇新的許可資料集並套用。您可以重複使用相同的資料集名稱。若要讓這些新許可發揮作用，務必在**許可**畫面中套用它們。SQL 查詢會動態更新，因此這些查詢可以在 Amazon Quick 外部進行管理。對於查詢，當直接查詢快取自動重新整理時，許可也會更新。

在從目標資料集移除以檔案為基礎的許可資料集之前，如果您先移除此資料集，則受限制的使用者無法存取資料集。資料集處於此狀態時會維持標示為**受限**。不過，當您檢視該資料集的**許可**時，您可以看到它沒有已選取的資料集規則。

若要修正此問題，可以指定新的資料集規則。以相同名稱建立資料集仍不足以修正此問題。您必須在**許可**畫面中選擇新的許可資料集。此限制不適用於直接 SQL 查詢。

# 在為匿名使用者嵌入儀表板時，透過以標籤為基礎的規則使用資料列層級安全來限制對資料集的存取
<a name="quicksight-dev-rls-tags"></a>


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick Administrators 和 Amazon Quick Developer  | 

當您為未在 Quick 中佈建 （註冊） 的使用者在應用程式中嵌入 Amazon Quick 儀表板時，您可以使用資料列層級安全性 (RLS) 來篩選/限制具有標籤的資料。標籤是使用者指定的字串，可識別應用程式中的工作階段。您可以使用標籤來實作資料集的 RLS 控制項。透過在資料集中設定以 RLS 為基礎的限制，快速根據與使用者身分/工作階段繫結的工作階段標籤來篩選資料。

例如，假設貴公司是一家物流公司，提供面向各個零售商客戶的應用程式。這些零售商的數千名使用者存取該應用程式，以查看與訂單從倉庫發貨相關的指標。

您不想在 Quick 中管理數千名使用者，因此您可以使用匿名內嵌，在您的應用程式中嵌入已驗證和授權使用者可以看到的所選儀表板。但是，您希望零售商只能看到與其業務相關的資料，而不能看到其他公司的資料。您可以透過標籤使用 RLS，以確保客戶只看到與自己相關的資料。

若要這樣做，請完成下列步驟：

1. 新增 RLS 標籤至資料集。

1. 使用 `GenerateEmbedUrlForAnonymousUser` API 操作在執行期為這些標籤指派值。

   如需使用 `GenerateEmbedUrlForAnonymousUser` API 操作為匿名使用者內嵌儀表板的詳細資訊，請參閱 [為匿名 （未註冊） 使用者嵌入 Amazon Quick Sight 儀表板](embedded-analytics-dashboards-for-everyone.md)。

在透過標籤使用 RLS 之前，請記住以下幾點：
+ 透過標籤使用 RLS 目前僅支援匿名內嵌，特別是使用 `GenerateEmbedUrlForAnonymousUser` API 操作實現的內嵌式儀表板。
+ 使用 `GenerateEmbedURLForRegisteredUser` API 操作或舊的 `GetDashboardEmbedUrl` API 操作的內嵌式儀表板不支援透過標籤使用 RLS。
+  AWS Identity and Access Management (IAM) 或快速身分類型不支援 RLS 標籤。
+ 對 SPICE 資料集套用資料列層級安全時，資料集中的每個欄位最多可以包含 2,047 個 Unicode 字元。超過此限制的欄位將在擷取過程中被截斷。若要進一步了解 SPICE 資料配額，請參閱 [匯入資料的 SPICE 配額](data-source-limits.md#spice-limits)。

## 步驟 1：將 RLS 標籤新增至資料集
<a name="quicksight-dev-rls-tags-add"></a>

您可以將標籤型規則新增至 Amazon Quick 中的資料集。您也可以呼叫 `CreateDataSet` 或 `UpdateDataSet` API 操作來新增以標籤為基礎的規則。如需詳細資訊，請參閱[使用 API 將 RLS 標籤新增至資料集](#quicksight-dev-rls-tags-add-api)。

使用下列程序將 RLS 標籤新增至 Quick 中的資料集。

**將 RLS 標籤新增至資料集**

1. 從快速入門頁面，選擇左側**的資料**。

1. 選擇您要新增 RLS 的資料集。

1. 在開啟的資料集詳細資訊頁面上，針對**資料列層級安全**，選擇**設定**。

1. 在開啟的**設定資料列層級安全**頁面上，選擇**以標籤為基礎的規則**。

1. 針對**資料欄**，選擇要新增標籤規則的資料欄。

   例如，在這個物流公司的案例中，使用的是 `retailer_id` 資料欄。

   僅列出資料類型為字串的資料欄。

1. 針對**標籤**，輸入標籤索引鍵。您可以輸入任何您想要的標籤名稱。

   例如，在這個物流公司的案例中，使用的標籤索引鍵是 `tag_retailer_id`。執列此操作會根據存取應用程式的零售商設定資料列層級安全。

1. (選用) 針對**分隔符號**，從清單中選擇分隔符號，或輸入所需分隔符號。

   為標籤指派多個值時，可以使用分隔符號分隔文字字串。分隔符號的值最長可為 10 個字元。

1. (選用) 針對**全部相符**，選擇**\$1**，或輸入所需的一個或多個字元。

   當您想要按資料集中該資料欄的所有值進行篩選時，此選項可以是您想要使用的任何字元。您可以使用這個字元，而不用一一列出值。如果指定此值，則可以是至少一個字元，或長度上限為 256 個字元。

1. 選擇**新增**。

   標籤規則已新增至資料集並列在底部，但尚未套用。若要將另一個標籤規則新增至資料集，請重複步驟 5-9。若要編輯標籤規則，請選擇規則後面的鉛筆圖示。若要刪除標籤規則，請選擇規則後面的刪除圖示。您最多可以為每個資料集新增 50 個標籤。

1. 當您準備好將標籤規則套用到資料集時，請選擇**套用規則**。

1. 在開啟的「**開啟以標籤為基礎的安全？**」頁面上，選擇**套用並啟動**。

   以標籤為基礎的規則現在處於作用中狀態。在**設定資料列層級安全**頁面上，會出現一個切換開關，可用於開啟和關閉資料集的標籤規則。

   若要關閉資料集的所有以標籤為基礎的規則，請關閉**以標籤為基礎的規則**開關，然後在出現的文字方塊中輸入 "confirm"。

   在**資料**頁面上，資料集列中會出現鎖定圖示，指出已啟用標籤規則。

   現在您可以使用標籤規則在執行期設定標籤值，如 [步驟 2：在執行期為 RLS 標籤指派值](#quicksight-dev-rls-tags-assign-values) 中所述。這些規則只會在作用中時影響快速讀取器。
**重要**  
在資料集上指派和啟用標籤後，請務必在編寫儀表板時，授予 Quick 作者查看資料集中任何資料的許可。  
若要授予快速作者在資料集中查看資料的許可，請建立許可檔案或查詢以用作資料集規則。如需詳細資訊，請參閱[建立資料列層級安全的資料集規則](restrict-access-to-a-data-set-using-row-level-security.md#create-data-set-rules-for-row-level-security)。

建立以標籤為基礎的規則後，會出現一個新的**管理規則**表，其中顯示以標籤為基礎的規則如何相互關聯。若要變更**管理規則**表中所列的規則，請選擇規則後面的鉛筆圖示。然後新增或移除標籤，並選擇**更新**。若要將更新的規則套用到資料集，請選擇**套用**。

### (選用) 對 RLS 標籤新增 OR 條件
<a name="quicksight-dev-rls-tags-or"></a>

您也可以將 OR 條件新增至標籤型規則，以進一步自訂資料呈現給快速帳戶使用者的方式。當您將 OR 條件與標籤型規則搭配使用時，如果規則中定義的至少一個標籤有效，則 Quick 中的視覺效果會顯示。

**對以標籤為基礎的規則新增 OR 條件**

1. 在**管理規則**表中，選擇**新增 OR 條件**。

1. 在出現的**選取標籤**下拉式清單中，選取要對其建立 OR 條件的標籤。您最多可以在**管理規則**表中新增 50 個 OR 條件。您可以將多個標籤新增至資料集中的單一資料欄，但至少有一個資料欄標籤需要包含在規則中。

1. 選擇**更新**將條件新增至規則中，然後選擇**套用**將更新後的規則套用到資料集。

### 使用 API 將 RLS 標籤新增至資料集
<a name="quicksight-dev-rls-tags-add-api"></a>

您也可以透過呼叫 `CreateDataSet` 或 `UpdateDataSet` API 操作，在資料集上設定和啟用以標籤為基礎的資料列層級安全。透過下列範例了解如何操作。

**重要**  
在 API 呼叫中設定工作階段標籤時，  
將工作階段標籤視為安全登入資料。請勿向最終使用者或用戶端程式碼公開工作階段標籤。
實作伺服器端控制項。確保工作階段標籤僅由您信任的後端服務設定，而不是由最終使用者可以修改的參數設定。
保護工作階段標籤免於列舉。確保一個租用戶中的使用者無法探索或猜測屬於其他租用戶的 sessionTag 值。
檢閱您的架構。如果下游客戶或合作夥伴可以直接呼叫 API，請評估這些方是否可以為不應存取的租戶指定 sessionTag 值。

------
#### [ CreateDataSet ]

以下是建立使用以標籤的為基礎的 RLS 之資料集的範例。它假設了前面描述的物流公司的情境。標籤在 `row-level-permission-tag-configuration` 元素中定義。標籤在您要保護其資料的資料欄上定義。如需此選用元素的詳細資訊，請參閱《*Amazon Quick API 參考*》中的 [RowLevelPermissionTagConfiguration](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_RowLevelPermissionTagConfiguration.html)。

```
create-data-set
		--aws-account-id <value>
		--data-set-id <value>
		--name <value>
		--physical-table-map <value>
		[--logical-table-map <value>]
		--import-mode <value>
		[--column-groups <value>]
		[--field-folders <value>]
		[--permissions <value>]
		[--row-level-permission-data-set <value>]
		[--column-level-permission-rules <value>]
		[--tags <value>]
		[--cli-input-json <value>]
		[--generate-cli-skeleton <value>]
		[--row-level-permission-tag-configuration 
	'{
		"Status": "ENABLED",
		"TagRules": 
			[
				{
					"TagKey": "tag_retailer_id",
					"ColumnName": "retailer_id",
					"TagMultiValueDelimiter": ",",
					"MatchAllValue": "*"
				},
				{
					"TagKey": "tag_role",
					"ColumnName": "role"
				}
			],
		"TagRuleConfigurations":
			[
				tag_retailer_id
			],
			[
				tag_role
			]
	}'
]
```

此範例中的標籤在元素的 `TagRules` 部分中定義。在此範例中，基於兩欄定義了兩個標籤：
+ `tag_retailer_id` 標籤索引鍵是為 `retailer_id` 資料欄定義的。在本例中，針對物流公司而言，這會根據存取應用程式的零售商設定資料列層級安全。
+ `tag_role` 標籤索引鍵是為 `role` 資料欄定義的。在本例中，針對物流公司而言，這會根據從特定零售商存取應用程式的使用者角色設定額外的資料列層級安全層。例如 `store_supervisor` 或 `manager`。

針對每個標籤，您可以定義 `TagMultiValueDelimiter` 和 `MatchAllValue`。這些是選用選項。
+ `TagMultiValueDelimiter`：此選項可以是您在執行期傳遞值時用來分隔值的任何字串。值最長可為 10 個字元。本例使用逗號作為分隔符號值。
+ `MatchAllValue`：當您想要按資料集中該資料欄的所有值進行篩選時，此選項可以是您想要使用的任何字元。您可以使用這個字元，而不用一一列出值。如果指定該值，則長度需至少為 1 個字元，最多 256 個字元。本例使用星號用作全部相符值。

設定資料集資料欄的標籤時，可使用強制屬性 `Status` 進行開啟或關閉。若要啟用標籤規則，請針對此屬性使用 `ENABLED` 值。透過開啟標籤規則，您可以使用它們在執行期設定標籤值，如 [步驟 2：在執行期為 RLS 標籤指派值](#quicksight-dev-rls-tags-assign-values) 中所述。

以下是回應定義的範例。

```
{
			"Status": 201,
			"Arn": "arn:aws:quicksight:us-west-2:11112222333:dataset/RLS-Dataset",
			"DataSetId": "RLS-Dataset",
			"RequestId": "aa4f3c00-b937-4175-859a-543f250f8bb2"
		}
```

------
#### [ UpdateDataSet ]

**UpdateDataSet**

您可以使用 `UpdateDataSet` API 操作為現有資料集新增或更新 RLS 標籤。

以下是使用 RLS 標籤更新資料集的範例。它假設了前面描述的物流公司的情境。

```
update-data-set
		--aws-account-id <value>
		--data-set-id <value>
		--name <value>
		--physical-table-map <value>
		[--logical-table-map <value>]
		--import-mode <value>
		[--column-groups <value>
		[--field-folders <value>]
		[--row-level-permission-data-set <value>]
		[--column-level-permission-rules <value>]
		[--cli-input-json <value>]
		[--generate-cli-skeleton <value>]
				[--row-level-permission-tag-configuration 
	'{
		"Status": "ENABLED",
		"TagRules": 
			[
				{
					"TagKey": "tag_retailer_id",
					"ColumnName": "retailer_id",
					"TagMultiValueDelimiter": ",",
					"MatchAllValue": "*"
				},
				{
					"TagKey": "tag_role",
					"ColumnName": "role"
				}
			],
		"TagRuleConfigurations":
			[
				tag_retailer_id
			],
			[
				tag_role
			]
	}'
]
```

以下是回應定義的範例。

```
{
			"Status": 201,
			"Arn": "arn:aws:quicksight:us-west-2:11112222333:dataset/RLS-Dataset",
			"DataSetId": "RLS-Dataset",
			"RequestId": "aa4f3c00-b937-4175-859a-543f250f8bb2"
		}
```

------

**重要**  
在資料集上指派和啟用標籤後，請務必在編寫儀表板時，授予 Quick 作者查看資料集中任何資料的許可。  
若要授予快速作者在資料集中查看資料的許可，請建立許可檔案或查詢以用作資料集規則。如需詳細資訊，請參閱[建立資料列層級安全的資料集規則](restrict-access-to-a-data-set-using-row-level-security.md#create-data-set-rules-for-row-level-security)。

如需 `RowLevelPermissionTagConfiguration`元素的詳細資訊，請參閱《*Amazon Quick API 參考*》中的 [RowLevelPermissionTagConfiguration](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_RowLevelPermissionTagConfiguration.html)。

## 步驟 2：在執行期為 RLS 標籤指派值
<a name="quicksight-dev-rls-tags-assign-values"></a>

您只能將 RLS 標籤用於匿名內嵌。您可以使用 `GenerateEmbedUrlForAnonymousUser` API 操作設定標籤的值。

**重要**  
在 API 呼叫中設定工作階段標籤時，  
將工作階段標籤視為安全登入資料。請勿向最終使用者或用戶端程式碼公開工作階段標籤。
實作伺服器端控制項。確保工作階段標籤僅由您信任的後端服務設定，而不是由最終使用者可以修改的參數設定。
保護工作階段標籤免於列舉。確保一個租用戶中的使用者無法探索或猜測屬於其他租用戶的 sessionTag 值。
檢閱您的架構。如果下游客戶或合作夥伴可以直接呼叫 API，請評估這些方是否可以為不應存取的租戶指定 sessionTag 值。

以下範例顯示如何為上一個步驟中資料集中定義的 RLS 標籤指派值。

```
POST /accounts/AwsAccountId/embed-url/anonymous-user
	HTTP/1.1
	Content-type: application/json
	{
		“AwsAccountId”: “string”,
		“SessionLifetimeInMinutes”: integer,
		“Namespace”: “string”, // The namespace to which the anonymous end user virtually belongs
		“SessionTags”:  // Optional: Can be used for row-level security
			[
				{
					“Key”: “tag_retailer_id”,
					“Value”: “West,Central,South”
				}
				{
					“Key”: “tag_role”,
					“Value”: “shift_manager”
				}
			],
		“AuthorizedResourceArns”:
			[
				“string”
			],
		“ExperienceConfiguration”:
			{
				“Dashboard”:
					{
						“InitialDashboardId”: “string”
						// This is the initial dashboard ID the customer wants the user to land on. This ID goes in the output URL.
					}
			}
	}
```

以下是回應定義的範例。

```
HTTP/1.1 Status
	Content-type: application/json

	{
	"EmbedUrl": "string",
	"RequestId": "string"
	}
```

只有在 `GenerateEmbedUrlForAnonymousUser` API 操作中才支援在 Quick 中註冊使用者的 RLS 支援。在此操作中，您可以在 `SessionTags` 下定義與資料集資料欄關聯的標籤的值。

本例定義下列指派：
+ 值 `West`、`Central` 和 `South` 在執行期指派給 `tag_retailer_id` 標籤。逗號用作分隔符號，這在資料集中的 `TagMultipleValueDelimiter` 中定義。若要使用資料欄中的全部值，您可以將該值設為 *\$1*，該值在建立標籤時定義為 `MatchAllValue`。
+ 指派值 `shift_manager` 給 `tag_role` 標籤。

使用產生的 URL 的使用者只能檢視 `role` 資料欄中具有 `shift_manager` 值的資料列。該使用者只能檢視 `retailer_id` 資料欄中的值 `West`、`Central` 或 `South`。

如需使用 `GenerateEmbedUrlForAnonymousUser` API 操作為匿名使用者內嵌儀表板的詳細資訊，請參閱 [為匿名 （未註冊） 使用者嵌入 Amazon Quick Sight 儀表板](embedded-analytics-dashboards-for-everyone.md)Amazon *Quick API 參考*中的 或 [GenerateEmbedUrlForAnonymousUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForAnonymousUser.html) 

# 使用資料欄層級安全，限制對資料集的存取
<a name="restrict-access-to-a-data-set-using-column-level-security"></a>

在企業版 Quick 中，您可以透過在資料集上設定資料欄層級安全性 (CLS) 來限制對資料集的存取。啟用 CLS 的資料集或分析旁邊有受限 ![\[The lock icon for CLS.\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/cls-restricted-icon.png) 符號。預設情況下，所有使用者與群組皆有權存取資料。透過 CLS，您可以管理對資料集中特定資料欄的存取。

如果使用的分析或儀表板包含您無權存取的受 CLS 限制的資料集，則您無法建立、檢視或編輯使用受限欄位的視覺效果。對於大多數視覺效果類型，如果視覺效果包含您無權存取的受限資料欄，則您就無法在分析或儀表板中看到該視覺效果。

資料表和樞紐分析表的行為不同。如果資料表或樞紐分析表使用**資料列**或**資料欄**欄位區中的受限資料欄，且您無法存取這些受限資料欄，您就無法在分析或儀表板中看到該視覺效果。如果資料表或樞紐分析表在**值**欄位區中有受限資料欄，則您可以在分析或儀表板中看到僅包含您有權存取之值的資料表。受限資料欄的值會顯示為未授權。

若要在分析或儀表板上啟用資料欄層級安全，您需要管理員存取權。

**建立具有 CLS 的新分析**

1. 在快速入門頁面上，選擇**分析**索引標籤。

1. 選擇右上角的**新建分析**。

1. 選擇資料集，然後選擇**資料欄層級安全**。

1. 選取您要限制的資料欄，然後選擇**下一步**。預設情況下，所有使用者與群組皆有權存取所有資料欄。

1. 選擇可存取每個資料欄的使用者，然後選擇**套用**儲存變更。

**使用 CLS 的現有分析**

1. 在快速入門頁面上，選擇**資料**索引標籤。

1. 在資料頁面上，開啟您的資料集

1. 在開啟的資料集詳細資訊頁面上，為**資料欄層級安全**選擇**設定**。

1. 選取您要限制的資料欄，然後選擇**下一步**。預設情況下，所有使用者與群組皆有權存取所有資料欄。

1. 選擇可存取每個資料欄的使用者，然後選擇**套用**儲存變更。

**建立具有 CLS 的儀表板**

1. 在快速導覽窗格中，選擇**分析**索引標籤。

1. 選擇您要為其建立儀表板的分析。

1. 在右上角，選擇**發布**。

1. 選擇下列其中一項：
   + 若要建立新的儀表板，選擇**將新儀表板發布為**，然後輸入新儀表板的名稱。
   + 若要取代現有儀表板，選擇**取代現有儀表板**，然後從清單中選擇儀表板。

   此外，您可以選擇**進階發布選項**。如需詳細資訊，請參閱[發布儀表板](creating-a-dashboard.md)。

1. 選擇**發布儀表板**。

1. (選擇性) 執行下列操作：
   + 若要在不共用的情況下發布儀表板，請在顯示**與使用者共用儀表板**畫面時選擇右上角的 **x**。之後您可以隨時從應用程式列選擇**共用**，以共用儀表板。
   + 若要共用儀表板，請依照[共用 Amazon Quick Sight 儀表板](sharing-a-dashboard.md)中的程序進行。

# 在 Amazon Quick 中以 IAM 角色執行查詢
<a name="datasource-run-as-role"></a>

您可以對連線至 Amazon Athena、Amazon Redshift 或 Amazon S3 的資料來源使用精細定義的存取政策，而不是更寬泛的許可，以提升資料安全性。首先，您可以建立有許可的 AWS Identity and Access Management (IAM) 角色，以便在人員或 API 發起查詢時啟動。然後，快速管理員或開發人員會將 IAM 角色指派給 Athena 或 Amazon S3 資料來源。角色實作之後，任何執行查詢的人員或 API 都具有執行查詢所需的確切許可。

在您承諾實作執行者角色以提升資料安全性之前，需考慮下列事項：
+ 說明額外的安全保護措施可如何為您帶來優勢。
+ 與您的快速管理員合作，了解將角色新增至資料來源是否可協助您更完善地滿足您的安全目標或需求。
+ 對於所涉及資料來源、人員和應用程式的數量，詢問您的團隊能否可靠記錄和維護這種類型的安全性？ 如果不行，這部分的工作由誰負責？
+ 在結構化組織中，確定營運、開發和 IT 支援並行團隊中的利益相關者。詢問他們的經驗、建議以及是否願意支援您的計畫。
+ 啟動專案之前，考慮執行概念驗證，讓需要存取資料的人員參與其中。

下列規則會套用於將執行者角色與 Athena、Amazon Redshift 和 Amazon S3 結合使用：
+ 每個資料來源只能有一個關聯的 RoleArn。經常存取資料集和視覺效果的資料來源取用者可以產生許多不同類型的查詢。該角色對哪些查詢有效、哪些無效放置了界限。
+ ARN 必須對應至與使用它的 AWS 帳戶 快速執行個體相同的 IAM 角色。
+ IAM 角色必須具有信任關係，允許 Quick 擔任該角色。
+ 呼叫 Quick APIs 的身分必須具有傳遞角色的許可，才能更新 `RoleArn` 屬性。您只需要在建立或更新角色 ARN 時傳遞角色。之後不會重新評估許可。同樣，當省略角色 ARN 時，不需要該許可。
+ 角色 ARN 被省略時，Athena 或 Amazon S3 資料來源會使用帳戶範圍的角色和範圍縮小政策。
+ 如果存在角色 ARN，帳戶範圍的角色和範圍縮小政策都會被忽略。對於 Athena 資料來源，不會忽略 Lake Formation 許可。
+ 對於 Amazon S3 資料來源，清單檔案和清單檔案指定的資料都必須可以使用 IAM 角色存取。
+ ARN 字串必須符合 中現有的 IAM 角色 AWS 帳戶 ，以及資料所在的位置和查詢 AWS 區域 位置。

當 Quick 連線到 中的其他服務時 AWS，會使用 IAM 角色。根據預設，Quick 會為角色使用的每個服務建立此較不精細版本，而角色是由 AWS 帳戶 管理員管理。使用自訂許可政策新增 IAM 角色 ARN 時，您會覆寫需要額外保護之資料來源的更廣泛角色。如需政策的詳細資訊，請參閱《IAM 使用者指南》中的[建立客戶管理政策](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_managed-policies.html)。

## 使用 Athena 資料來源執行查詢
<a name="datasource-run-as-role-athena"></a>

使用 API 將 ARN 附加至 Athena 資料來源。為此，請在 [AthenaParameters](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_AthenaParameters.html) 的 [RoleArn](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_RoleArn.html) 屬性中新增角色 ARN。為了進行驗證，您可以在**編輯 Athena 資料來源**對話方塊上查看角色 ARN。不過，**角色 ARN** 是唯讀欄位。

若要開始使用，您需要一個自訂的 IAM 角色，我們將在下列範例中展示此角色。

請記住，以下程式碼範例僅用於學習目的。此範例僅在臨時開發和測試環境中使用，不能在生產環境中使用。此範例中的政策不保護任何特定資源，這些資源必須位於可部署的政策中。此外，即使是開發，您也需要新增自己的 AWS 帳戶資訊。

下列命令會建立一個簡單的新角色，並連接一些將許可授予 Quick 的政策。

```
aws iam create-role \
        --role-name TestAthenaRoleForQuickSight \
        --description "Test Athena Role For QuickSight" \
        --assume-role-policy-document '{
            "Version": "2012-10-17"		 	 	 ,
            "Statement": [
                {
                    "Effect": "Allow",
                    "Principal": {
                        "Service": "quicksight.amazonaws.com"
                    },
                    "Action": "sts:AssumeRole"
                }
            ]
        }'
```

確定或建立要與每個資料來源搭配使用的 IAM 角色後，使用 attach-role-policy 附加政策。

```
aws iam attach-role-policy \
        --role-name TestAthenaRoleForQuickSight \
        --policy-arn arn:aws:iam::222222222222:policy/service-role/AWSQuickSightS3Policy1

    aws iam attach-role-policy \
        --role-name TestAthenaRoleForQuickSight \
        --policy-arn arn:aws:iam::aws:policy/service-role/AWSQuicksightAthenaAccess1

    aws iam attach-role-policy \
        --role-name TestAthenaRoleForQuickSight \
        --policy-arn arn:aws:iam::aws:policy/AmazonS3Access1
```



驗證許可後，您可以透過建立新角色或更新現有角色，在快速資料來源中使用角色。使用這些命令時，請更新 AWS 帳戶 ID 和 AWS 區域 以符合您自己的 ID。

請記住，這些範例程式碼片段不適用於生產環境。 AWS 強烈建議您針對生產案例確定並使用一套最低權限政策。

```
aws quicksight create-data-source
        --aws-account-id 222222222222 \
        --region us-east-1 \
        --data-source-id "athena-with-custom-role" \
        --cli-input-json '{
            "Name": "Athena with a custom Role",
            "Type": "ATHENA",
            "data sourceParameters": {
                "AthenaParameters": {
                    "RoleArn": "arn:aws:iam::222222222222:role/TestAthenaRoleForQuickSight"
                }
            }
        }'
```

## 使用 Amazon Redshift 資料來源執行查詢
<a name="datasource-run-as-role-redshift"></a>

將 Amazon Redshift 資料與執行者角色關聯起來，以透過精細定義的存取政策來提升資料安全性。您可以為使用公有網路或 VPC 連線的 Amazon Redshift 資料來源建立執行者角色。可以在**編輯 Amazon Redshift 資料來源**對話方塊中指定要使用的連線類型。Amazon Redshift Serverless 資料來源不支援執行者角色。

若要開始使用，您需要一個自訂的 IAM 角色，我們將在下列範例中展示此角色。下列命令會建立範例新角色，並連接將許可授予 Quick 的政策。

```
aws iam create-role \
--role-name TestRedshiftRoleForQuickSight \
--description "Test Redshift Role For QuickSight" \
--assume-role-policy-document '{
    "Version": "2012-10-17"		 	 	 ,
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "quicksight.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}'
```

確定或建立要與每個資料來源搭配使用的 IAM 角色後，請將政策附加到 `attach-role-policy`。如果 `redshift:GetClusterCredentialsWithIAM` 許可連接到您想要使用的角色，則 `DatabaseUser` 和 `DatabaseGroups` 的值為選用。

```
aws iam attach-role-policy \
--role-name TestRedshiftRoleForQuickSight \
--policy-arn arn:aws:iam:111122223333:policy/service-role/AWSQuickSightRedshiftPolicy
    
        
aws iam create-policy --policy-name RedshiftGetClusterCredentialsPolicy1 \
--policy-document file://redshift-get-cluster-credentials-policy.json 


aws iam attach-role-policy \
--role-name TestRedshiftRoleForQuickSight \
--policy-arn arn:aws:iam:111122223333:policy/RedshiftGetClusterCredentialsPolicy1
// redshift-get-cluster-credentials-policy.json
{
    "Version": "2012-10-17"		 	 	 ,
    "Statement": [
        {
            "Sid": "RedshiftGetClusterCredentialsPolicy",
            "Effect": "Allow",
            "Action": [
                "redshift:GetClusterCredentials"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
```

上述範例會建立使用 `RoleARN`、`DatabaseUser` 和 `DatabaseGroups` IAM 參數的資料來源。如果您只想透過 IAM `RoleARN` 參數建立連線，請將 `redshift:GetClusterCredentialsWithIAM` 許可連接到您的角色，如下方範例所示。

```
aws iam attach-role-policy \ 
--role-name TestRedshiftRoleForQuickSight \ 
--policy-arn arn:aws:iam:111122223333:policy/RedshiftGetClusterCredentialsPolicy1 // redshift-get-cluster-credentials-policy.json {
    "Version": "2012-10-17"		 	 	 ,
    "Statement": [ 
        {
            "Sid": "RedshiftGetClusterCredentialsPolicy", 
            "Effect": "Allow", 
            "Action": [ "redshift:GetClusterCredentialsWithIAM" ],
            "Resource": [ "*" ]
        }
    ]
}"
```

驗證許可後，您可以透過建立新角色或更新現有角色，在快速資料來源中使用角色。使用這些命令時，請更新 AWS 帳戶 ID 和 AWS 區域以符合您自己的 。

```
aws quicksight create-data-source \
--region us-west-2 \
--endpoint https://quicksight.us-west-2.quicksight.aws.com/ \
--cli-input-json file://redshift-data-source-iam.json \
redshift-data-source-iam.json is shown as below
{
    "AwsAccountId": "AWSACCOUNTID",
    "DataSourceId": "DATSOURCEID",
    "Name": "Test redshift demo iam",
    "Type": "REDSHIFT",
    "DataSourceParameters": {
        "RedshiftParameters": {
            "Database": "integ",
            "Host": "redshiftdemocluster.us-west-2.redshift.amazonaws.com",
            "Port": 8192,
            "ClusterId": "redshiftdemocluster",
            "IAMParameters": {
                "RoleArn": "arn:aws:iam::222222222222:role/TestRedshiftRoleForQuickSight",
                "DatabaseUser": "user",
                "DatabaseGroups": ["admin_group", "guest_group", "guest_group_1"]
            }
        }
    },
    "Permissions": [
      {
        "Principal": "arn:aws:quicksight:us-east-1:AWSACCOUNTID:user/default/demoname",
        "Actions": [
          "quicksight:DescribeDataSource",
          "quicksight:DescribeDataSourcePermissions",
          "quicksight:PassDataSource",
          "quicksight:UpdateDataSource",
          "quicksight:DeleteDataSource",
          "quicksight:UpdateDataSourcePermissions"
        ]
      }
    ]
}
```

如果您的資料來源使用 VPC 連線類型，請使用下列 VPC 組態。

```
{
    "AwsAccountId": "AWSACCOUNTID",
    "DataSourceId": "DATSOURCEID",
    "Name": "Test redshift demo iam vpc",
    "Type": "REDSHIFT",
    "DataSourceParameters": {
        "RedshiftParameters": {
            "Database": "mydb",
            "Host": "vpcdemo.us-west-2.redshift.amazonaws.com",
            "Port": 8192,
            "ClusterId": "vpcdemo",
            "IAMParameters": {
                "RoleArn": "arn:aws:iam::222222222222:role/TestRedshiftRoleForQuickSight",
                "DatabaseUser": "user",
                "AutoCreateDatabaseUser": true
            }
        }
    },
    "VpcConnectionProperties": { 
      "VpcConnectionArn": "arn:aws:quicksight:us-west-2:222222222222:vpcConnection/VPC Name"
    },
    "Permissions": [
      {
        "Principal": "arn:aws:quicksight:us-east-1:222222222222:user/default/demoname",
        "Actions": [
          "quicksight:DescribeDataSource",
          "quicksight:DescribeDataSourcePermissions",
          "quicksight:PassDataSource",
          "quicksight:UpdateDataSource",
          "quicksight:DeleteDataSource",
          "quicksight:UpdateDataSourcePermissions"
        ]
      }
    ]
}
```

如果您的資料來源使用 `redshift:GetClusterCredentialsWithIAM` 許可，但不使用 `DatabaseUser` 或 `DatabaseGroups` 參數，請授予角色存取結構描述中部分或全部資料表的權限。若要查看是否已授予角色對特定資料表的 `SELECT` 許可，請在 Amazon Redshift 查詢編輯器中輸入下列命令。

```
SELECT
u.usename,
t.schemaname||'.'||t.tablename,
has_table_privilege(u.usename,t.tablename,'select') AS user_has_select_permission
FROM
pg_user u
CROSS JOIN
pg_tables t
WHERE
u.usename = 'IAMR:RoleName'
AND t.tablename = tableName
```

如需有關 Amazon Redshift 查詢編輯器中 `SELECT` 動作的詳細資訊，請參閱 [SELECT](https://docs.aws.amazon.com/redshift/latest/dg/r_SELECT_synopsis.html)。

若要將 `SELECT` 許可授予給角色，請在 Amazon Redshift 查詢編輯器中輸入下列命令。

```
GRANT SELECT ON { [ TABLE ] table_name [, ...] | ALL TABLES IN SCHEMA 
schema_name [, ...] } TO "IAMR:Rolename";
```

如需有關 Amazon Redshift 查詢編輯器中 `GRANT` 動作的詳細資訊，請參閱 [GRANT](https://docs.aws.amazon.com/redshift/latest/dg/r_GRANT.html)。

## 使用 Amazon S3 資料來源執行查詢
<a name="datasource-run-as-role-s3"></a>

Amazon S3 資料來源包含資訊清單檔案，Quick 會使用此檔案來尋找和剖析您的資料。您可以透過快速主控台上傳 JSON 資訊清單檔案，也可以提供指向 S3 儲存貯體中 JSON 檔案的 URL。如果您選擇提供 URL，則必須授予 Quick 存取 Amazon S3 中檔案的許可。使用快速管理主控台來控制資訊清單檔案及其參考資料的存取。

藉助 **RoleArn** 屬性，您可以透過覆寫帳戶範圍角色的自訂 IAM 角色授予對清單檔案及其所引用資料的存取權限。使用 API 將 ARN 附加至 Amazon S3 資料來源的清單檔案。為此，請將角色 ARN 包含在 [S3Parameters](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_S3Parameters.html) 的 [RoleArn](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_RoleArn.html) 屬性中。為了進行驗證，您可以在**編輯 S3 資料來源**對話方塊中查看角色 ARN。然而，如下列螢幕擷取畫面所示，**角色 ARN** 是唯讀欄位。

若要開始使用，請建立 Amazon S3 清單檔案。然後，您可以在建立新的 Amazon S3 資料集時將其上傳至 Amazon Quick，或將檔案放入包含資料檔案的 Amazon S3 儲存貯體。檢視下列範例以了解清單檔案的外觀：

```
{
    "fileLocations": [
        {
            "URIPrefixes": [
                "s3://quicksightUser-run-as-role/data/"
            ]
        }
    ],
    "globalUploadSettings": {
        "format": "CSV",
        "delimiter": ",",
        "textqualifier": "'",
        "containsHeader": "true"
    }
}
```

如需如何建立清單檔案的詳細資訊，請參閱 [支援的 Amazon S3 清單檔案格式](supported-manifest-file-format.md)。

在您建立資訊清單檔案並將其新增至 Amazon S3 儲存貯體或將其上傳至 Quick 之後，請在 IAM 中建立或更新授予`s3:GetObject`存取權的現有角色。下列範例說明如何使用 AWS API 更新現有的 IAM 角色：

```
aws iam put-role-policy \
    --role-name QuickSightAccessToS3RunAsRoleBucket \
    --policy-name GrantS3RunAsRoleAccess \
    --policy-document '{
        "Version": "2012-10-17"		 	 	 ,
        "Statement": [
            {
                "Effect": "Allow",
                "Action": "s3:ListBucket",
                "Resource": "arn:aws:s3:::s3-bucket-name"
            },
            {
                "Effect": "Allow",
                "Action": "s3:GetObject",
                "Resource": "arn:aws:s3:::s3-bucket-name/manifest.json"
            },
            {
                "Effect": "Allow",
                "Action": "s3:GetObject",
                "Resource": "arn:aws:s3:::s3-bucket-name/*"
            }
        ]
    }'
```

政策授予 `s3:GetObject` 存取權限後，您可以開始建立資料來源，將更新的 `put-role-policy` 套用至 Amazon S3 資料來源的清單檔案。

```
aws quicksight create-data-source --aws-account-id 111222333444 --region us-west-2 --endpoint https://quicksight.us-west-2.quicksight.aws.com/ \
    --data-source-id "s3-run-as-role-demo-source" \
    --cli-input-json '{
        "Name": "S3 with a custom Role",
        "Type": "S3",
        "DataSourceParameters": {
            "S3Parameters": {
                "RoleArn": "arn:aws:iam::111222333444:role/QuickSightAccessRunAsRoleBucket",
                "ManifestFileLocation": {
                    "Bucket": "s3-bucket-name", 
                    "Key": "manifest.json"
                }
            }
        }
    }'
```

驗證許可後，您可以在快速資料來源中使用角色，方法是建立新角色或更新現有角色。使用這些命令時，請務必更新 AWS 帳戶 ID 和 AWS 區域 以符合您自己的 ID。

# 刪除資料集
<a name="delete-a-data-set"></a>

**重要**  
目前，刪除資料集無法復原，並可能導致無法復原的工作遺失。刪除不會串聯以刪除相依物件。反之，即使您將已刪除的資料集取代為相同的資料集，相依物件也會停止運作。

在您刪除資料集之前，強烈建議您先將每個相依分析或儀表板指向新的資料集。

目前，當您刪除資料集，而相依的視覺效果仍然存在時，包含這些視覺效果的分析和儀表板無法吸收新的中繼資料。它們保持可見，但無法運作。新增相同的資料集無法修復它們。

這是因為資料集包含中繼資料，此中繼資料是相依於該資料集的分析和儀表板中不可或缺的一部分。此中繼資料是特別為每個資料集所產生的。雖然 Quick Sight 引擎可以讀取中繼資料，但人類無法讀取它 （例如，它不包含欄位名稱）。因此，資料集的確切複本具有不同的中繼資料。每個資料集的中繼資料都是唯一的，即使對於具有相同名稱和相同欄位的多個資料集也一樣。

**刪除資料集**

1. 確定有人想要繼續使用的分析或儀表板未使用該資料集。

   在**資料**頁面上，選擇您不再需要的資料集。然後選擇右上角的**刪除資料集**。

1. 如果此資料集正在使用中時收到警告，請追蹤所有相依分析和儀表板，並將它們指向不同的資料集。如果這不可行，請嘗試其中一或多個最佳實務，而不是刪除它：
   + 重新命名資料集，以便明確棄用資料集。
   + 篩選資料，讓資料集沒有資料列。
   + 移除其他人對資料集的存取權。

   建議您使用任何可動用的方式通知相依物件的擁有者，此資料集即將棄用。亦請確定提供足夠的時間讓他們採取動作。

1. 確定刪除資料集後無任何相依物件會停止運作後，請選擇資料集，然後選擇**刪除資料集**。確認您的選擇，或選擇 **Cancel (取消)**。

**重要**  
目前，刪除資料集無法復原，並可能導致無法復原的工作遺失。刪除不會串聯以刪除相依物件。反之，即使您將已刪除的資料集取代為相同的資料集，相依物件也會停止運作。

# 將資料集新增至分析
<a name="adding-a-data-set-to-an-analysis"></a>

您建立分析後，即可將更多的資料集新增至分析。然後，您即可使用這些資料集建立更多的視覺化效果。

在分析中，您可以開啟任何資料集進行編輯，例如新增或移除欄位，或執行其他資料準備。您也可以移除或取代資料集。

目前選取的資料集，會在**資料**窗格頂端顯示。這是目前選取的視覺效果使用的資料集。每個視覺效果只能使用一個資料集。選擇不同的視覺效果會將選取的資料集變更為該視覺效果使用的資料集。

若要手動變更選取的資料集，請選擇**資料**窗格頂端的資料集清單，然後選擇不同的資料集。如果未使用此資料集，則會取消選取目前選取的視覺效果。然後，選擇使用所選資料集的視覺效果。或者，在**視覺效果**窗格中選擇**新增**，以使用選取的資料集建立新的視覺效果。

如果您選擇工具列上的**建議**查看建議的視覺效果，會看到以目前選取的資料集為基礎的視覺效果。

**篩選器**窗格只會顯示目前所選資料集的篩選器，而且您只能建立目前所選資料集的篩選器。

**Topics**
+ [

# 替換資料集
](replacing-data-sets.md)
+ [

# 從分析中移除資料集
](delete-a-data-set-from-an-analysis.md)

請依下列程序將資料集新增至分析，或編輯分析所使用的資料集。

**將資料集新增至分析**

1. 在分析頁面上，導覽至**資料**窗格並展開**資料集**下拉式清單。

1. 選擇**新增新資料集**以新增資料集。或者，選擇**管理資料集**，以編輯資料集。如需編輯資料集的詳細資訊，請參閱 [編輯資料集](edit-a-data-set.md)。

1. 您的資料集清單將隨即顯示。選擇資料集，然後選擇**選取**。若要取消，請選擇 **Cancel (取消)**。

# 替換資料集
<a name="replacing-data-sets"></a>

在分析中，您可以新增、編輯、取代或移除資料集。此章節可用來了解如何取代您的資料集。

如果您預期視覺效果以您設計的方式呈現，則您取代資料集時，新的資料集應具有類似的資料欄。替換資料集也會清除分析的復原或重做記錄。這表示您無法使用應用程式列上的復原和重做按鈕來瀏覽變更。因此，您決定變更資料集時，您的分析設計應該穩定，不應該處於編輯階段中。

**取代資料集**

1. 在分析頁面上，導覽至**資料**窗格並展開**資料集**下拉式清單。

1. 選擇**管理資料集**。

1. 選擇您想要取代之資料集旁的省略符號 (三個點)，然後選擇**取代**。

1. 在**選取取代資料集**頁面，從清單中選擇資料集，然後選擇**選取**。
**注意**  
替換資料集會清除此分析的復原和重做記錄。

資料集將取代為新的資料集。已使用新資料集來更新欄位清單與視覺效果。

此時，您可以選擇新增新的資料集、編輯新的資料集，或取代為不同的資料集。選擇 **Close (關閉)** 結束。

## 如果您的新資料集不相符
<a name="replacing-data-sets-2"></a>

在某些情況下，選取的取代資料集不包含分析中的視覺效果、篩選器、參數和計算欄位所使用的所有欄位和階層。若是如此，您會收到 Quick Sight 的警告，顯示不相符或遺失的資料欄清單。

如果發生這種情況，您可以更新兩個資料集之間的欄位映射。

**更新欄位映射**

1. 在**取代資料集中的不相符情況**頁面中，選擇**更新欄位映射**。

1. 在**更新欄位映射**頁面中，選擇要映射之欄位的下拉式選單，然後從清單中選擇要映射的欄位。

   如果新資料集中缺少欄位，請選擇**忽略此欄位**。

1. 選擇**確認**以確認更新。

1. 選擇**關閉**以關閉頁面並返回分析。

資料集將取代為新的資料集。已使用新資料集來更新欄位清單與視覺效果。

使用新資料集中現在缺失的欄位的任何視覺效果都會更新為空白。您可以將欄位再次新增至視覺效果，或從分析中移除視覺效果。

如果您在替換資料集之後改變想法，仍然可以復原。假設您取代資料集，然後發現變更分析使之符合新的資料集會變得很困難。您可以復原您對分析所做的任何變更。然後，您可以將新的資料集取代為原始資料集，或使用更符合分析需求的資料集。

# 從分析中移除資料集
<a name="delete-a-data-set-from-an-analysis"></a>

請依下列程序刪除分析中的資料集。

**從分析中刪除資料集**

1. 在分析頁面上，導覽至**資料**窗格並展開**資料集**下拉式清單。

1. 選擇**管理資料集**。

1. 選擇您想要取代之資料集旁的省略符號 (三個點)，然後選擇**移除**。您無法刪除分析中的唯一資料集。

1. 選擇 **Close** (關閉) 來關閉對話方塊。

# 在 Amazon Quick Sight 中使用資料來源
<a name="working-with-data-sources"></a>

使用資料來源存取外部資料存放區。Amazon S3 資料來源可儲存清單檔案資訊。而 Salesforce 和資料庫資料來源則會儲存登入資料等連線資訊。在這種情況下，您可以從資料存放區輕鬆建立多個資料集，卻不必重新輸入資訊。不會儲存文字檔或 Microsoft Excel 檔案的連線資訊。

**Topics**
+ [

# 建立資料來源
](create-a-data-source.md)
+ [

# 編輯資料來源
](edit-a-data-source.md)
+ [

# 刪除資料來源
](delete-a-data-source.md)

# 建立資料來源
<a name="create-a-data-source"></a>


|  | 
| --- |
|    目標對象：Amazon Quick 作者  | 

身為 Amazon Quick 的分析作者，您不需要了解用來連線至資料之基礎設施的任何相關資訊。您只要設定一次新的資料來源。

設定資料來源之後，您可以在 Quick 主控台中從其圖磚存取該資料來源。您可以使用此資料來源建立一或多個資料集。設定資料集之後，您也可以從資料集磚存取資料集。透過抽象化技術詳細資訊，Amazon Quick Sight 可簡化資料連線。

**注意**  
您不需要為打算手動上傳的檔案儲存連線設定。如需檔案上傳的詳細資訊，請參閱[建立資料集](creating-data-sets.md)。

開始將新的資料來源連線設定檔新增至 Amazon Quick 之前，請先收集連線至資料來源所需的資訊。有時候，您可能打算複製和貼上某個檔案中的設定。若是如此，請確定該檔案不包含格式化字元 (清單項目符號或編號) 或空格字元 (空格、跳位字元)。亦請確定該檔案不包含非文字的「麻煩」字元，例如非 ASCII、null (ASCII 0) 和控制字元。

以下清單包含收集最常用設定的資訊：
+ 要連線的資料來源。

  請確定您知道需要連線至哪個來源以進行報告。此來源可能不是存放、處理或提供資料存取權的來源。

  例如，假設您是一家大公司的新分析師。您想要分析來自訂購系統的資料，而您知道此系統使用 Oracle。但是，您無法直接查詢線上交易處理 (OLTP) 資料。有部分資料已擷取並存放在 Amazon S3 的儲存貯體中，但您也無權存取。您的新同事解釋他們使用 AWS Glue 爬蟲程式來讀取和 AWS Lake Formation 存取檔案。透過更多研究，您了解到需要使用 Amazon Athena 查詢作為 Amazon Quick Sight 中的資料來源。重點是，該選擇哪種類型的資料來源並不那麼顯而易見。
+ 新資料來源磚的描述性名稱。

  每個新的資料來源連線都需要一個唯一的描述性名稱。此名稱會顯示在現有資料來源的 Amazon Quick Sight 清單中，位於**建立資料集**畫面底部。使用和其他類似資料來源容易區別的資料來源名稱。新的 Amazon Quick Sight 資料來源設定檔會顯示資料庫軟體標誌和您指派的自訂名稱。
+ 要連線的伺服器或執行個體名稱。

  唯一名稱或其他識別符可識別網路上資料來源的伺服器連接器。描述項會因連線的目標而異，但通常是下列一或多項：
  + Hostname (主機名稱)
  + IP 位址
  + 叢集 ID
  + 執行個體 ID
  + 連接器
  + 網站型 URL
+ 您要使用的資料集合名稱。

  描述項會因資料來源而異，但通常是下列其中一項：
  + 資料庫
  + 倉儲
  + S3 bucket (S3 儲存貯體)
  + 目錄
  + 結構描述

  有時候，您可能需要包含資訊清單檔案或查詢。
+ 您希望 Amazon Quick Sight 使用的使用者名稱。

  每次 Amazon Quick Sight 使用此資料來源描述檔 （圖磚） 進行連線時，都會使用連線設定中的使用者名稱。有時候，這可能是您的個人登入資訊。但是，如果您要與其他人共用，請詢問系統管理員如何建立憑證以用於 Amazon Quick Sight 連線。
+ 要使用的連線類型。您可以選擇公有網路或 VPC 連線。如有多個 VPC 連線可用，請找出連線到您資料來源的 VPC。
+ 有些資料來源需要 Secure Sockets Layer (SSL) 或 API 字符等額外設定。

將連線設定儲存為資料來源描述檔之後，您就可以選取資料集磚來建立資料集。連線會儲存為 Amazon Quick Sight 中的資料來源連線設定檔。

若要檢視現有的連線設定檔，請開啟快速開始頁面，選擇**資料**，選擇**建立**，然後選擇**新增資料集**。

如需受支援資料來源連線和範例的清單，請參閱[使用整合和資料集連線至您的資料](connecting-to-data-examples.md)。

在 Quick Sight 中建立資料來源後，您可以在 Quick Sight 中[建立資料集](https://docs.aws.amazon.com/quicksuite/latest/userguide/creating-data-sets)，其中包含來自連線資料來源的資料。您也可以隨時[更新資料來源連線](https://docs.aws.amazon.com/quicksuite/latest/userguide/edit-a-data-source)資訊。

# 編輯資料來源
<a name="edit-a-data-source"></a>

您可以編輯現有的資料庫資料來源，以更新連線資訊，例如伺服器名稱或使用者登入資料。您也可以編輯現有的 Amazon Athena 資料來源，以更新資料來源名稱。您不能編輯 Amazon S3 或 Salesforce 資料來源。

## 編輯資料庫資料來源
<a name="edit-a-database-data-source"></a>

使用下列程序來編輯資料庫資料來源。

1. 從快速入門頁面，選擇左側**的資料**。選擇**建立**，然後選擇**新增資料集**。

1. 選擇資料庫資料來源。

1. 選擇**編輯資料來源**。

1. 修改資料來源資訊：
   + 如果您在編輯自動探索的資料庫資料來源，您可以修改以下任何設定：
     + 針對**資料來源名稱**，輸入資料來源的名稱。
     + 針對 **Instance ID (執行個體 ID)**，從提供的清單中，選擇您要連線的執行個體或叢集名稱。
     + **資料庫名稱**會顯示叢集或執行個體的**執行個體 ID** 的預設資料庫。如果想要在該叢集或執行個體上使用不同的資料庫，請輸入其名稱。
     + 對於**使用者名稱**，輸入有權執行下列動作之使用者帳戶的使用者名稱：
       + 存取目標資料庫。
       + 讀取想要使用之資料庫中的任何資料表 (即對其執行 `SELECT` 陳述式)。
     + 對於**密碼**，輸入您剛才輸入的帳戶之密碼。
   + 如果您在編輯外部資料庫資料來源，您可以修改以下任何設定：
     + 針對**資料來源名稱**，輸入資料來源的名稱。
     + 針對**資料庫伺服器**，輸入下列其中一個值：
       + 對於 Amazon Redshift 叢集，輸入叢集的端點 (不含連接埠號碼)。例如，如果端點值為 `clustername.1234abcd.us-west-2.redshift.amazonaws.com:1234`，則輸入 `clustername.1234abcd.us-west-2.redshift.amazonaws.com`。您可以在 Amazon Redshift 主控台的叢集詳細資訊頁面上，從**端點**欄位取得端點值。
       + 對於 PostgreSQL、MySQL 或 SQL Server 的 Amazon EC2 執行個體，輸入公有 DNS 地址。您可以在 EC2 主控台的執行個體詳細資訊窗格，從 **Public DNS (公有 DNS)** 欄位取得公有 DNS 值。
       + 對於 PostgreSQL、MySQL 或 SQL Server 的非 Amazon EC2 執行個體，輸入資料庫伺服器的主機名稱或公有 IP 地址。
     + 針對**連接埠**，輸入叢集或執行個體用於連線的連接埠。
     + 針對**資料庫名稱**，輸入您要使用的資料庫名稱。
     + 對於**使用者名稱**，輸入有權執行下列動作之使用者帳戶的使用者名稱：
       + 存取目標資料庫。
       + 讀取想要使用之資料庫中的任何資料表 (即對其執行 `SELECT` 陳述式)。
     + 對於**密碼**，輸入您剛才輸入的帳戶之密碼。

1. 選擇 **Validate connection (驗證連線)**。

1. 如果連線有效，請選擇 **Update data source (更新資料來源)**。否則，請更正連線資訊，然後嘗試再次驗證。

1. 如果您要使用已更新的資料來源建立新的資料集，請依照 [從資料庫建立資料集](create-a-database-data-set.md) 中的指示繼續。否則，請關閉**選擇您的資料表**對話方塊。

## 編輯 Athena 資料來源
<a name="revoking-access-to-shared-data-sources"></a>

請依下列程序編輯 Athena 資料來源。

1. 從快速入門頁面，選擇左側**的資料**。選擇**建立**，然後選擇**新增資料集**。

1. 選擇 Athena 資料來源。

1. 選擇**編輯資料來源**。

1. 針對 **Data source name (資料來源名稱)**，輸入新的名稱。

1. **Manage data source sharing (管理資料來源共用)** 畫面隨即出現。在 **Users (使用者)** 索引標籤上，找到您要移除的使用者。

1. 如果您要使用已更新的資料來源建立新的資料集，請依照 [使用 Amazon Athena 資料建立資料集](create-a-data-set-athena.md) 中的指示繼續。否則，請關閉**選擇您的資料表**對話方塊。

# 刪除資料來源
<a name="delete-a-data-source"></a>

如不再需要某個資料來源，可予以刪除。刪除以查詢為基礎的資料庫資料來源時，將會使任何相關聯的資料集變成無法使用。刪除 Amazon S3、Salesforce 或以 SPICE 為基礎的資料庫資料來源，不會影響您使用任何相關聯的資料集。這是因為資料儲存在 [SPICE](spice.md) 中。不過，您無法再重新整理這些資料集。

**刪除資料來源**

1. 選擇您要刪除的資料來源。

1. 選擇**刪除**。

# 在 Amazon Quick Sight 中重新整理資料
<a name="refreshing-data"></a>

重新整理資料時，Amazon Quick Sight 會根據連線屬性和資料的儲存位置，以不同的方式處理資料集。

如果 Quick Sight 使用直接查詢連線至資料存放區，則當您開啟相關聯的資料集、分析或儀表板時，資料會自動重新整理。篩選條件控制項每 24 小時自動重新整理一次。

若要重新整理SPICE資料集，Quick Sight 必須使用儲存的登入資料獨立驗證，才能連線至資料。即使資料存放在 S3 儲存貯體中，Quick Sight 也無法重新整理手動上傳的資料SPICE，因為 Quick Sight 不會儲存其連線和位置中繼資料。若要自動重新整理儲存在 S3 儲存貯體中的資料，請使用**S3** 資料來源卡建立資料集。

針對您手動上傳到 SPICE 的檔案，您可以透過再次匯入檔案來手動重新整理相應檔案。若要在新檔案中使用原始資料集的名稱，請先重新命名或刪除原始資料集。然後為新資料集指定偏好的名稱。另外，請檢查欄位名稱是否具有相同的名稱和資料類型。開啟分析，並使用新資料集取代原始資料集。如需詳細資訊，請參閱 [替換資料集](replacing-data-sets.md)。

您可以隨時重新整理 [SPICE](spice.md) 資料集。重新整理會將資料匯入 SPICE，讓資料包含上次匯入之後的任何變更。

對於 Amazon Quick Sight 標準版，您可以隨時完整重新整理SPICE資料。對於 Amazon Quick Sight Enterprise Edition，您可以隨時執行完整重新整理或增量重新整理 （僅限 SQL 型資料來源）。

**注意**  
如果資料集使用 CustomSQL，累加式重新整理可能不會為您帶來好處。如果 SQL 查詢很複雜，資料庫可能無法透過回顧期間最佳化篩選條件。這可能會導致提取資料的查詢比完全重新整理花費更長的時間。建議您嘗試透過重構自訂 SQL 來減少查詢執行時間。請注意，結果可能會有所不同，具體取決於您進行的最佳化類型。

您可以使用下列任一方法來重新整理 SPICE 資料：
+ 您可以使用**資料集**頁面上的選項。
+ 您可以在編輯資料集時重新整理資料集。
+ 您可以資料集設定中排程資料重新整理。
+ 您可以使用 [CreateIngestion](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_CreateIngestion.html) API 操作來重新整理資料。

建立或編輯 SPICE 資料集時，您可以啟用資料載入狀態的電子郵件通知。一旦資料載入或重新整理失敗，資料集的擁有者便會獲得通知。若要開啟通知，請選取**完成資料集建立**畫面上顯示的**重新整理失敗時向擁有者寄送電子郵件**選項。此選項不適用於您使用資料集頁面上的**上傳檔案**所建立的資料集。

在以下主題中，您可以了解重新整理和使用 SPICE 資料的不同方法。

**Topics**
+ [

# 將資料匯入至 SPICE
](spice.md)
+ [

# 重新整理 SPICE 資料
](refreshing-imported-data.md)
+ [

# 在分析中使用 SPICE 資料
](spice-in-an-analysis.md)
+ [

# 檢視 SPICE 擷取歷史記錄
](view-history-of-spice-ingestion.md)
+ [

# 對資料列被略過的錯誤進行疑難排解
](troubleshooting-skipped-rows.md)
+ [

# SPICE 擷取錯誤代碼
](errors-spice-ingestion.md)
+ [

# 更新資料集中的檔案
](updating-file-dataset.md)

# 將資料匯入至 SPICE
<a name="spice"></a>

當您將資料匯入資料集而非使用直接 SQL 查詢時，它會因為儲存方式而變成*SPICE資料*。 *SPICE (Super-fast, Parallel, In-memory Calculation Engine)*是 Amazon Quick Sight 使用的強大記憶體內引擎。它能夠快速執行進階計算，並提供資料。在企業版中，SPICE 中的資料會靜態加密。

建立或編輯資料集時，您可以選擇使用 SPICE 或直接查詢，除非資料集包含上傳的檔案。將資料匯入 (也稱為*擷取*) 到 SPICE 可以節省時間和金錢：
+ 分析查詢處理速度更快。
+ 無需等待直接查詢的處理。
+ SPICE 中儲存的資料可以重複使用，而不會產生額外成本。如果您使用按查詢收費的資料來源，則在首次建立資料集時以及稍後重新整理資料集時，您需要為查詢資料付費。

SPICE 容量會各自分配 AWS 區域。預設SPICE容量會自動配置到您的住家 AWS 區域。對於每個 AWS 帳戶，所有在單一 中使用 Quick Sight 的人員都會共用SPICE容量 AWS 區域。另一個 AWS 區域 沒有SPICE容量，除非您選擇購買一些。Quick Sight 管理員可以檢視每個 中有多少[SPICE](#spice)容量， AWS 區域 以及目前使用多少容量。Quick Sight 管理員可以視需要購買更多SPICE容量或釋放未使用的SPICE容量。如需詳細資訊，請參閱[設定SPICE記憶體容量](managing-spice-capacity.md)。

**Topics**
+ [

## 估計 SPICE 資料集的大小
](#spice-capacity-formula)

## 估計 SPICE 資料集的大小
<a name="spice-capacity-formula"></a>

中相對於SPICE快速帳戶SPICE容量的資料集大小稱為*邏輯大小*。資料集的邏輯大小與資料集的來源檔案或表的大小不同。資料準備期間定義所有資料類型轉換以及計算資料欄之後，便會發生資料集邏輯大小計算。這些欄位會在 SPICE 中以可增強查詢效能的方式具體化。您在分析中所做的任何變更，並不會影響 SPICE 中資料的邏輯大小。只會將儲存在資料集中的變更套用到 SPICE 容量。

SPICE 資料集的邏輯大小取決於資料集欄位的資料類型和資料集中的列數。SPICE 資料的三種類型是小數、日期和字串。在資料準備階段，您可以轉換欄位的資料類型以滿足資料視覺化需求。例如，您要匯入的檔案可能都包含字串 (文字)。但是，為了在分析中以有意義的方式使用該資訊，您會透過將資料類型變更為其適當的格式來準備資料。例如，將包含價格的欄位從字串變更為小數，並將包含日期的欄位從字串變更為日期。您還可以建立計算欄位並排除不需要來源資料表欄位。當您準備好資料集並完成所有轉換後，便可以估計最終結構描述的邏輯大小。

**注意**  
地理空間資料類型使用中繼資料來解譯實體資料類型。緯度和經度為數字。所有其他地理空間類別為字串。

在下面的公式中，小數和日期按每個儲存格 8 個位元組計算，並帶有 4 個額外位元組用於輔助。字串根據 UTF-8 編碼的文字長度加上 24 個輔助位元組計算。字串資料類型需要更多空間，因為 SPICE 需要額外的索引來提供高查詢效能。

```
Logical dataset size in bytes =
(Number of Numeric cells *  (12 bytes per cell))
+ (Number of Date cells    *  (12 bytes per cell))
+ SUM ((24 bytes + UTF-8 encoded length) per Text cell)
```

上面的公式只能用於估算 SPICE 中單一資料集的大小。SPICE 容量使用量是特定區域中帳戶中的所有資料集的總大小。Quick Sight 不建議您使用此公式來估計 Quick Sight 帳戶正在使用的總SPICE容量。

# 重新整理 SPICE 資料
<a name="refreshing-imported-data"></a>

## 重新整理資料集
<a name="refresh-spice-data"></a>

使用下列程序，根據[SPICE](spice.md)資料****索引標籤中的 Amazon S3 或資料庫資料來源重新整理資料集。如果資料庫中有結構描述變更，Quick Sight 將無法自動偵測，導致擷取失敗。編輯並儲存資料集以更新結構描述，並避免擷取失敗。

**從SPICE資料索引標籤重新整理資料**

1. 從左側導覽功能表中選取**資料**。在**資料集**索引標籤中，選擇要開啟的資料集。

1. 在開啟的資料集詳細資訊頁面上，選擇**重新整理**索引標籤，然後選擇**立即重新整理**。

1. 將重新整理類型保持為**完整重新整理**。

1. 若要重新整理 Amazon S3 資料集，針對 **S3 清單檔案**，選擇以下其中一個選項：
   + 若要使用您上次提供給 Amazon Quick Sight 的相同資訊清單檔案，請選擇**現有資訊清單**。如果您已變更上次提供的檔案位置或 URL 上的資訊清單檔案，則傳回的資料會反映這些變更。
   + 若要從您的本機網路上傳以指定新的資訊清單檔案，請選擇 **Upload Manifest (上傳資訊清單)**，然後選擇 **Upload manifest file (上傳資訊清單檔案)**。針對 **Open (開啟)**，選擇檔案，然後選擇 **Open (開啟)**。
   + 若要以提供 URL 的方式指定新的資訊清單檔案，請在 **Input manifest URL (輸入資訊清單 URL)** 中輸入資訊清單的 URL。您可以在 Amazon S3 主控台開啟清單檔案檔案的內容 (右鍵) 選單，選擇**屬性**，查看**連結**方塊，即可找出清單檔案檔案 URL。

1. 選擇 **Refresh (重新整理)**。

1. 如果是重新整理 Amazon S3 資料集，則選擇**確定**，然後再選擇一次**確定**。

   如果是重新整理資料庫資料集，則選擇**確定**。

## 累加式重新整理資料集
<a name="refresh-spice-data-incremental"></a>


|  | 
| --- |
|  適用於：企業版  | 

針對以 SQL 為基礎的資料來源，例如 Amazon Redshift、Amazon Athena、PostgreSQL 或 Snowflake，您可以在回顧期間內累加式重新整理資料。

*累加式重新整理*僅查詢指定回顧期間內資料集定義的資料。它會從其來源傳輸在該期間內對資料集的所有插入、刪除和修改。此期間內 SPICE 中的當前資料將被刪除並被更新的資料取代。

藉助累加式重新整理，每次重新整理查詢和傳輸的資料更少。例如，假設您有一個包含 180,000 筆記錄的資料集，時間範圍涵蓋 1 月 1 日到 6 月 30 日。7 月 1 日，您對資料執行累加式重新整理，回顧期間為 7 天。Quick Sight 查詢資料庫，要求自 6 月 24 日起 (7 天前） 的所有資料，這是 7，000 筆記錄。Quick Sight 接著會從 6 月 24 SPICE 日及之後刪除目前在 中的資料，並附加新查詢的資料。第二天 (7 月 2 日），Quick Sight 會執行相同的動作，但 6 月 25 日的查詢 （再次 7，000 筆記錄），然後從相同日期的現有資料集中刪除 。它不必每天擷取 180,000 筆記錄，而只需擷取 7,000 筆記錄。

使用下列程序，根據 SQL 資料來源從[SPICE](spice.md)資料集索引標籤逐步重新整理**資料集**。

**累加式重新整理以 SQL 為基礎的 SPICE 資料集**

1. 從左側導覽功能表中選擇**資料**。在**資料集**索引標籤上，選擇要開啟的資料集。

1. 在開啟的資料集詳細資訊頁面上，選擇**重新整理**索引標籤，然後選擇**立即重新整理**。

1. 針對**重新整理類型**，選擇**累加式重新整理**。

1. 如果這是對資料集的第一次累加式重新整理，請選擇**設定**。

1. 在**設定累加式重新整理**頁面上，執行下列操作：

   1. 針對**日期資料欄**，選擇要作為回顧期間基礎的日期欄位。

   1. 針對**期間長度**，針對**長度**輸入數字，然後選擇要回顧變更的時間的單位。

      您可以選擇重新整理從現在起指定小時數、天數或幾週內發生的資料變更。例如，您可以選擇重新整理目前日期兩週內發生的資料變更。

1. 選擇**提交**。

## 在資料準備期間重新整理資料集
<a name="refresh-spice-data-prep"></a>

在資料準備期間，可透過以下程序，根據 Amazon S3 或資料庫資料來源，重新整理 [SPICE](spice.md) 資料集。

**在資料準備期間重新整理 SPICE 資料**

1. 從左側導覽功能表中選擇**資料**。在**資料集**索引標籤上，選擇資料集，然後選擇**編輯資料集**。

1. 在資料集畫面上，選擇**立即重新整理**。

1. 將重新整理類型保持為**完整重新整理**。

1. (選用) 若要重新整理 Amazon S3 資料集，針對 **S3 清單檔案**，選擇以下其中一個選項：
   + 若要使用您上次提供給 Amazon Quick Sight 的相同資訊清單檔案，請選擇**現有資訊清單**。如果您已變更上次提供的檔案位置或 URL 上的資訊清單檔案，則傳回的資料會反映這些變更。
   + 若要從您的本機網路上傳以指定新的資訊清單檔案，請選擇 **Upload Manifest (上傳資訊清單)**，然後選擇 **Upload manifest file (上傳資訊清單檔案)**。針對 **Open (開啟)**，選擇檔案，然後選擇 **Open (開啟)**。
   + 若要以提供 URL 的方式指定新的資訊清單檔案，請在 **Input manifest URL (輸入資訊清單 URL)** 中輸入資訊清單的 URL。您可以在 Amazon S3 主控台開啟清單檔案檔案的內容 (右鍵) 選單，選擇**屬性**，查看**連結**方塊，即可找出清單檔案檔案 URL。

1. 選擇 **Refresh (重新整理)**。

1. 如果是重新整理 Amazon S3 資料集，則選擇**確定**，然後再選擇一次**確定**。

   如果是重新整理資料庫資料集，則選擇**確定**。

## 依排程重新整理資料集。
<a name="schedule-data-refresh"></a>

透過以下程序以排定時程來重新整理資料。如果您的資料集是以直接查詢為基礎，而不是存放在 [SPICE](spice.md)，您可以開啟資料集，藉以重新整理資料。您也可以重新整理分析或儀表板中的頁面，以重新整理資料。

**依排程重新整理 [SPICE](spice.md) 資料**

1. 從左側導覽功能表中選擇**資料**。在**資料集**索引標籤上，選擇要開啟的資料集。

1. 在開啟的資料集詳細資訊頁面上，選擇**重新整理**索引標籤，然後選擇**新增排程**。

1. 在**建立重新整理排程**畫面，選擇排程設定：

   1. 針對 **Time zone (時區)**，選擇適用於資料重新整理的時區。

   1. 針對**開始時間**，選擇重新整理開始的日期。使用 HH: MM 和 24 小時格式，例如 13:30。

   1. 針對**頻率**，選擇下列其中一項：
      + 對於標準版或企業版，您可以選擇 **Daily (每日)**、**Weekly (每週)** 或 **Monthly (每月)**。
        + **每日**：每天重複。
        + **每週**：每週的同一天重複。
        + **Monthly (每月)**：每月的同一天重複。若要在當月的 29 日、30 日或 31 日重新整理資料，請從清單中選擇 **Last day of month (每月的最後一日)**。
      + 僅針對企業版，您可以選擇 **Hourly (每小時)**。此設定會從您選擇的時間開始，每小時重新整理一次您的資料集。因此，如果您選擇 1:05 作為開始時間，資料會在每小時的 5 分時重新整理一次。

        如果您決定使用每小時重新整理，則無法同時使用其他的重新整理排程。若要建立每小時排程，請移除該資料集任何其他現有排程。此外，在建立每日、每週或每月排程之前，亦請移除任何現有的每小時排程。

1. 選擇**儲存**。

排程的資料集擷取會在排程日期和時間的 10 分鐘內進行。

使用快速主控台，您可以為每個資料集建立五個排程。當您建立五個之後，**建立**按鈕會停用。

## 依排程累加式重新整理資料集
<a name="schedule-data-refresh-incremental"></a>


|  | 
| --- |
|  適用於：企業版  | 

針對以 SQL 為基礎的資料來源，例如 Amazon Redshift、Athena、PostgreSQL 或 Snowflake，您可以排程累加式重新整理。使用下列程序，根據[SPICE](spice.md)資料集索引標籤中的 SQL 資料來源逐步重新整理**資料集**。

**為以 SQL 為基礎的 SPICE 資料集設定累加式重新整理排程**

1. 從左側導覽功能表中選擇**資料**。在**資料集**索引標籤上，選擇要開啟的資料集。

1. 在開啟的資料集詳細資訊頁面上，選擇**重新整理**索引標籤，然後選擇**新增排程**。

1. 在**建立排程**頁面上，針對**重新整理類型**，選擇**累加式重新整理**。

1. 如果這是對此資料集的第一次累加式重新整理，請選擇**設定**，然後執行下列操作：

   1. 針對**日期資料欄**，選擇要作為回顧期間基礎的日期欄位。

   1. 針對**期間長度**，針對**長度**輸入數字，然後選擇要回顧變更的時間的單位。

      您可以選擇重新整理從現在起指定小時數、天數或幾週內發生的資料變更。例如，您可以選擇重新整理目前日期兩週內發生的資料變更。

   1. 選擇**提交**。

1. 針對 **Time zone (時區)**，選擇適用於資料重新整理的時區。

1. 針對 **Repeats (重複)**，選擇下列其中一項：
   + 您可以選擇**每 15 分鐘**、**每 30 分鐘**、**每小時**、**每天**、**每週**或**每**月。
     + **每 15 分鐘**：每 15 分鐘重複一次，從您選擇的時間開始。例如，如果您選擇 1:05 作為開始時間，資料將在 1:20 重新整理，然後在 1:35 再次重新整理，依此類推。
     + **每 30 分鐘**：每 30 分鐘重複一次，從您選擇的時間開始。例如，如果您選擇 1:05 作為開始時間，資料將在 1:35 重新整理，然後在 2:05 再次重新整理，依此類推。
     + **每小時**：每小時重複一次，從您選擇的時間開始。因此，如果您選擇 1:05 作為開始時間，資料會在每小時的 5 分時重新整理一次。
     + **每日**：每天重複。
     + **每週**：每週的同一天重複。
     + **Monthly (每月)**：每月的同一天重複。若要在當月的 29 日、30 日或 31 日重新整理資料，請從清單中選擇 **Last day of month (每月的最後一日)**。
   + 如果您決定使用每 15 分鐘、每 30 分鐘或每小時重新整理，則無法同時使用其他的重新整理排程。若要建立每 15 分鐘、每 30 分鐘或每小時重新整理的排程，請移除相應資料集的任何其他現有排程。此外，在建立每日、每週或每月排程之前，亦請移除任何現有的每一定分鐘數或每小時排程。

1. 針對**開始**，選擇重新整理開始的日期。

1. 針對**時刻**，指定重新整理應該開始的時間。使用 HH: MM 和 24 小時格式，例如 13:30。

排程的資料集擷取會在排程日期和時間的 10 分鐘內進行。

在某些情況下，累加式重新整理資料集可能會出現問題，導致您想要回復資料集。或者您可能不再希望累加式重新整理資料集。如果是這樣，您可以刪除排程的重新整理。

為此，請在**資料集**頁面上選擇資料集，選擇**排程重新整理**，然後選擇相應已排程重新整理右側的 x 圖示。刪除累加式重新整理組態將啟動完全重新整理。在此完全重新整理過程中，為累加式重新整理準備的所有組態都將被移除。

# 在分析中使用 SPICE 資料
<a name="spice-in-an-analysis"></a>

您使用儲存的資料建立分析時，資料匯入指標會出現在**欄位清單**窗格頂端的資料集旁邊。當您第一次開啟分析且資料集正在匯入時，會出現旋轉符號圖示。

在 SPICE 匯入完成後，該指標會顯示成功匯入的資料列百分比。視覺化窗格頂端也會顯示訊息，提供匯入和略過的資料列計數。

如果略過任何資料列，您可以選擇訊息列中的 **View summary (查看摘要)**，查看這些資料列無法匯入的詳細資訊。若要編輯資料集，並解決導致略過資料列的問題，請選擇**編輯資料集**。如需略過資料列的常見原因有關的詳細資訊，請參閱[對資料列被略過的錯誤進行疑難排解](troubleshooting-skipped-rows.md)。

如果匯入失敗，資料匯入指標會顯示為驚嘆號圖示，而且 **Import failed (匯入失敗)** 訊息會出現。

# 檢視 SPICE 擷取歷史記錄
<a name="view-history-of-spice-ingestion"></a>

例如，您可以檢視 SPICE 資料集的擷取歷史記錄，找出最近一次開始擷取的時間及其狀態。

SPICE 擷取歷史記錄頁面包含下列資訊：
+ 開始擷取的日期和時間 (UTC)
+ 擷取狀態
+ 擷取所耗時間量
+ 資料集中的彙總資料列數。
+ 重新整理期間擷取的資料列數。
+ 略過的資料列和成功擷取 (匯入) 的資料列
+ 重新整理的任務類型：已排程、完整重新整理等

透過以下程序檢視資料集的 SPICE 擷取歷史記錄。

**檢視資料集的 SPICE 擷取歷史記錄**

1. 在首頁中，選擇左側**的資料**。

1. 在**資料集**索引標籤上，選擇您要檢查的資料集。

1. 在開啟的資料集詳細資訊頁面上，選擇**重新整理**索引標籤。

   SPICE 擷取歷史記錄便會顯示在底部。

1. (選用) 選擇一個時間範圍，篩選過去一小時到過去 90 天中的項目。

1. (選用) 選擇特定的任務狀態以篩選項目，例如 **Running (正在執行)** 或 **Completed (已完成)**。否則，您可以選擇 **All (全部)** 檢視所有項目。

# 對資料列被略過的錯誤進行疑難排解
<a name="troubleshooting-skipped-rows"></a>

當您匯入資料時，Amazon Quick Sight 會預覽部分資料。如果它因任何原因無法解譯資料列，Quick Sight 會略過該資料列。在某些情況下，匯入會失敗。發生這種情況時，Quick Sight 會傳回解釋失敗的錯誤訊息。

幸好可能出錯的地方數量有限。透過了解以下範例可以避免一些問題：
+ 確保欄位資料類型和欄位資料 (例如：數值資料類型欄位中偶爾出現的字串資料) 之間的一致。以下是掃描資料表內容時很難偵測到的一些問題的範例：
  + `''`：使用空字串來指示缺失值
  + `'NULL'`：使用單字 "null" 來指示缺失值
  + `$1000`：在貨幣值中包含美元符號會將其轉換為字串
  + `'O'Brien'`：使用標點符號來標記包含所用標點符號的字串。

  然而，這些類型的錯誤並不永遠容易發現，特別是如果資料量大，或者資料手動輸入。例如，某些客戶服務或銷售應用程式涉及輸入客戶口頭提供的資訊。最初輸入資料的人可能將資料輸入到了錯誤的欄位。他們可能會新增或忘記新增字元或數字。例如，他們可能會輸入日期 "0/10/12020" 或在代表年齡的欄位中輸入某人的性別。
+ 確認您匯入的有標頭或沒有標頭的檔案已正確處理。如果有標頭資料列，請確認選擇**包含標頭**上傳選項。
+ 確認資料不超出 [資料來源配額](data-source-limits.md) 中的一個或多個。
+ 確認資料與 [支援的資料類型和值](supported-data-types-and-values.md) 相容。
+ 確認計算欄位包含可用於計算的資料，不會與計算欄位中的函數不相容或被計算欄位中的函數排除。例如，如果您的資料集中有使用 的計算欄位[parseDate](parseDate-function.md)，Quick Sight 會略過該欄位不包含有效日期的資料列。

Quick Sight 提供SPICE引擎嘗試擷取資料時發生之錯誤的詳細清單。當已儲存的資料集報告略過資料列時，您可以檢視錯誤，以便採取措施修復問題。

**檢視 SPICE 擷取 (資料匯入) 期間略過資料列錯誤**

1. 選擇左側**的資料**。在**資料集**索引標籤中，選擇有問題的資料集來開啟它。

1. 在開啟的資料集詳細資訊頁面上，選擇**重新整理**索引標籤。

   SPICE 擷取歷史記錄便會顯示在底部。

1. 針對出現錯誤的擷取，選擇**檢視錯誤摘要**。此連結位於**狀態**資料欄下。

1. 檢查開啟的**檔案匯入日誌**。它顯示以下區段：
   + **摘要**：提供匯入中略過的總列數的百分比分數。例如，如果總共 1,728 列中有 864 列被略過，則分數為 50.00%。
   + **已略過的資料列**：提供每組相似略過列的列計數、欄位名稱和錯誤訊息。
   + **疑難排解**：提供下載包含錯誤訊息之檔案的連結。

1. 在**疑難排解**下，選擇**下載錯誤資料列檔案**。

   錯誤檔案中的每個錯誤都有一列。該檔案名為 `error-report_123_fe8.csv`，其中 `123_fe8` 會被唯一識別字串取代。該檔案內含以下資料欄：
   + **ERROR\$1TYPE**：匯入資料列時發生的錯誤的類型或錯誤代碼。您可以在本程序之後的 [SPICE 擷取錯誤代碼](errors-spice-ingestion.md) 一節中查閱錯誤的相關資訊。
   + **COLUMN\$1NAME**：資料中導致錯誤的資料欄的名稱。
   + 匯入資料列中的所有資料欄：剩餘資料欄重複整列資料。如果一列有多個錯誤，則它可能會在此檔案中出現多次。

1. 選擇**編輯資料集**變更資料集。您可以篩選資料、省略欄位、變更資料類型、調整現有計算欄位，以及新增驗證資料的計算欄位。

1. 進行錯誤代碼指示的變更後，再次匯入資料。如果日誌中出現其他 SPICE 擷取錯誤，請再次執行此程序以修復所有剩餘錯誤。

**提示**  
如果使用資料集編輯器無法在合理的時間內解決資料問題，請諮詢擁有資料的管理員或開發人員。從長遠來看，在更接近資料來源的地方清理資料，比在準備資料以用於分析時進行例外狀況處理更具成本效益。透過從來源修正錯誤，可以避免多人以不同方式修正錯誤，從而導致稍後報告結果不同的情況。

**練習對資料列被略過進行疑難排解**

1. 下載 [samples/csv-files-for-troubleshooting-skipped-rows.zip](samples/csv-files-for-troubleshooting-skipped-rows.zip)。

1. 將檔案解壓縮至資料夾，您可用來將範例 .csv 檔案上傳至 Quick Sight。

   該 zip 檔案包含下列兩個文字檔案：
   + `sample dataset - data ingestion error.csv`：範例 .csv 檔案，其中包含導致略過資料列的問題。您可以嘗試自行匯入該檔案，看看錯誤處理是如何進行的。
   + `sample data ingestion error file` – 將範例 SPICE .csv 檔案匯入 Quick Sight 時，在擷取期間產生的範例錯誤檔案。

1. 請依照下列步驟匯入資料：

   1. 選擇**資料**、**資料集**索引標籤、**新增**、**資料集**。

   1. 選擇 **Upload a file (上傳檔案)**。

   1. 找到並選擇名為 `sample dataset - data ingestion error.csv` 的檔案。

   1. 選擇**上傳檔案**，再選擇**編輯設定和準備資料**。

   1. 選擇**儲存**以退出。

1. 選擇資料集以檢視其訊息，然後選擇**檢視錯誤摘要**。檢查錯誤和資料以解決問題。

# SPICE 擷取錯誤代碼
<a name="errors-spice-ingestion"></a>

下列錯誤代碼和描述清單可協助您了解將資料擷取到 SPICE 的問題，並進行疑難排解。

## 略過資料列的錯誤代碼
<a name="errors-skipped-rows-during-import"></a>

下列錯誤代碼和描述清單可協助您了解資料列被略過的問題，並進行疑難排解。

****ARITHMETIC\$1EXCEPTION****：處理數值時發生算術例外狀況。

****ENCODING\$1EXCEPTION****：針對 SPICE 轉換和編碼資料時發生未知例外狀況。

****OPENSEARCH\$1CURSOR\$1NOT\$1ENABLED****：OpenSearch 域未啟用 SQL 指標 (`"opendistro.sql.cursor.enabled" : "true"`)。如需詳細資訊，請參閱[授權連線到 Amazon OpenSearch Service](opensearch.md)。

****INCORRECT\$1FIELD\$1COUNT****：一列或多列包含太多欄位。確認每列中的欄位數與結構描述中定義的欄位數相符。

****INCORRECT\$1SAGEMAKER\$1OUTPUT\$1FIELD\$1COUNT****：SageMaker AI 輸出具有意外數量的欄位。

****INDEX\$1OUT\$1OF\$1BOUNDS****：系統請求的索引針對正在處理的陣列或清單無效。

****MALFORMED\$1DATE****：欄位中的值無法轉換為有效日期。例如，如果您嘗試轉換包含 `"sale date"` 或 `"month-1"` 等值的欄位，則會產生格式錯誤的日期錯誤。若要修復此錯誤，請從資料來源中移除非日期值。檢查您匯入的檔案中資料欄標頭是否混入資料。如果字串包含無法轉換的日期或時間，請參閱 [使用不支援的日期或自訂日期](using-unsupported-dates.md)。

****MISSING\$1SAGEMAKER\$1OUTPUT\$1FIELD****：SageMaker AI 輸出中的欄位意外為空。

****NUMBER\$1BITWIDTH\$1TOO\$1LARGE****：數值超出了 SPICE 支援的長度。例如，數值超過 19 位 (`bigint` 資料類型的長度)。針對不是數值的長數字序列，請使用 `string` 資料類型。

****NUMBER\$1PARSE\$1FAILURE****：數字欄位中的值不是數字。例如，資料類型為 `int` 的欄位包含字串或浮點數。

****SAGEMAKER\$1OUTPUT\$1COLUMN\$1TYPE\$1MISMATCH****：SageMaker AI 結構描述中定義的資料類型與從 SageMaker AI 接收的資料類型不相符。

****STRING\$1TRUNCATION****：字串被 SPICE 截斷。當字串長度超過 SPICE 配額時，字串將被截斷。如需 SPICE 的相關資訊，請參閱 [將資料匯入至 SPICE](spice.md)。如需配額的詳細資訊，請參閱 [Service Quotas](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html)。

****UNDEFINED****：擷取資料時發生未知錯誤。

****UNSUPPORTED\$1DATE\$1VALUE****：日期欄位包含格式正確但不在支援的日期範圍內的日期，例如 "12/31/1399" 或 "01/01/10000"。如需詳細資訊，請參閱[使用不支援的日期或自訂日期](using-unsupported-dates.md)。

## 資料匯入過程中的錯誤代碼
<a name="errors-during-import"></a>

對於失敗的匯入和資料重新整理任務，Quick Sight 會提供錯誤代碼，指出失敗的原因。下列錯誤代碼和描述清單可協助您了解將資料擷取到 SPICE 的問題，並進行疑難排解。

****ACCOUNT\$1CAPACITY\$1LIMIT\$1EXCEEDED****：此資料超過您目前的 SPICE 容量。購買更多 SPICE 容量或清除現有的 SPICE 資料，然後重試此擷取。

****CONNECTION\$1FAILURE**** – Amazon Quick Sight 無法連線至您的資料來源。請檢查資料來源連線設定，然後再試一次。

****CUSTOMER\$1ERROR****：剖析資料時發生問題。如果仍然存在，請聯絡 Amazon Quick Sight 技術支援。

****DATA\$1SET\$1DELETED****：資料來源或資料集已刪除，或在擷取期間變得無法使用。

****DATA\$1SET\$1SIZE\$1LIMIT\$1EXCEEDED****：此資料集超過允許的 SPICE 資料集大小上限。請使用篩選條件減少資料集大小，然後再試一次。如需 SPICE 配額的相關資訊，請參閱 [資料來源配額](data-source-limits.md)。

****DATA\$1SOURCE\$1AUTH\$1FAILED****：資料來源驗證失敗。檢查您的憑證，並使用**編輯資料來源**選項取代過期的憑證。

****DATA\$1SOURCE\$1CONNECTION\$1FAILED****：資料來源連線失敗。請檢查 URL，然後再試一次。如果此錯誤持續發生，請連絡您的資料來源管理員尋求協助。

****DATA\$1SOURCE\$1NOT\$1FOUND****：找不到任何資料來源。檢查您的 Amazon Quick Sight 資料來源。

****DATA\$1TOLERANCE\$1EXCEPTION****：無效資料列太多。Amazon Quick Sight 已達到可略過的資料列配額，但仍可繼續擷取。請檢查您的資料，然後再試一次。

****FAILURE\$1TO\$1ASSUME\$1ROLE**** – Amazon Quick Sight 無法擔任正確的 AWS Identity and Access Management (IAM) 角色。在 IAM 主控台中驗證 `Amazon Quick Sight-service-role` 的政策。

****FAILURE\$1TO\$1PROCESS\$1JSON\$1FILE**** – Amazon Quick Sight 無法將資訊清單檔案剖析為有效的 JSON。

****IAM\$1ROLE\$1NOT\$1AVAILABLE**** – Amazon Quick Sight 沒有存取資料來源的許可。若要管理 資源的 AWS Amazon Quick Sight 許可，請以管理員身分前往**管理 Amazon Quick Sight **選項下的**安全和許可**頁面。

****INGESTION\$1CANCELED****：使用者已取消擷取。

****INGESTION\$1SUPERSEDED****：此擷取已為另一個工作流程所取代。當在另一個擷取仍在進行中時便建立了新的擷取，就會發生這種情況。避免在短時間內手動編輯資料集多次，因為每次手動編輯都會建立新的擷取，且新的擷取會取代和結束先前的擷取。

****INTERNAL\$1SERVICE\$1ERROR****：發生內部服務錯誤。

****INVALID\$1DATA\$1SOURCE\$1CONFIG****：連線設定中出現無效的值。請檢查您的連線詳細資料，然後再試一次。

****INVALID\$1DATAPREP\$1SYNTAX****：您計算的欄位表達式包含無效的語法。請更正語法，然後再試一次。

****INVALID\$1DATE\$1FORMAT****：出現無效的日期格式。

****IOT\$1DATA\$1SET\$1FILE\$1EMPTY**** – 找不到 AWS IoT 分析資料。請檢查您的帳戶，然後再試一次。

****IOT\$1FILE\$1NOT\$1FOUND**** – 找不到指定的 AWS IoT Analytics 檔案。請檢查您的帳戶，然後再試一次。

****OAUTH\$1TOKEN\$1FAILURE****：資料來源的憑證已過期。請更新您的憑證，然後重試此擷取。

****PASSWORD\$1AUTHENTICATION\$1FAILURE****：資料來源出現不正確的憑證。請更新您的資料來源憑證，然後重試此擷取。

****PERMISSION\$1DENIED****：資料來源拒絕您存取請求的資源。向您的資料庫管理員請求許可，或確保在重試之前已將適當的許可授予 Amazon Quick Sight。

****QUERY\$1TIMEOUT****：查詢資料來源發生等待回應逾時。請檢查您的資料來源記錄檔，然後再試一次。

****ROW\$1SIZE\$1LIMIT\$1EXCEEDED****：資料列大小配額超過上限。

****S3\$1FILE\$1INACCESSIBLE****：無法連線至 S3 儲存貯體。在連線至 S3 儲存貯體之前，請務必授予 Amazon Quick Sight 和使用者必要的許可。

****S3\$1MANIFEST\$1ERROR****：法連線到 S3 資料。確保您的 S3 清單檔案有效。同時驗證對 S3 資料的存取權。Amazon Quick Sight 和 Amazon Quick Sight 使用者都需要許可才能連線到 S3 資料。

****S3\$1UPLOADED\$1FILE\$1DELETED****：已刪除一或多個供擷取的檔案 (在兩次擷取之間)。檢查您的 S3 儲存貯體，然後再試一次。

****SOURCE\$1API\$1LIMIT\$1EXCEEDED\$1FAILURE****：此擷取超過此資料來源的 API 配額。請連絡您的資料來源管理員尋求協助。

****SOURCE\$1RESOURCE\$1LIMIT\$1EXCEEDED****：SQL 查詢超出資料來源的資源配額。所涉及的資源範例包括同時查詢配額、連線配額和實體伺服器資源。請連絡您的資料來源管理員尋求協助。

****SPICE\$1TABLE\$1NOT\$1FOUND**** – Amazon Quick Sight 資料來源或資料集在擷取期間已刪除或無法使用。在 Amazon Quick Sight 中檢查您的資料集，然後再試一次。如需詳細資訊，請參閱[對資料列被略過的錯誤進行疑難排解](troubleshooting-skipped-rows.md)。

****SQL\$1EXCEPTION****：發生一般 SQL 錯誤。此錯誤可能是由查詢逾時、資源限制、查詢前後或期間未預期的資料定義語言 (DDL) 變更，以及其他資料庫錯誤所造成。請檢查您的資料庫設定和查詢，然後再試一次。

****SQL\$1INVALID\$1PARAMETER\$1VALUE****：出現無效的 SQL 參數。請檢查您的 SQL，然後再試一次。

****SQL\$1NUMERIC\$1OVERFLOW**** – Amazon Quick Sight 遇到out-of-range的數值例外狀況。請檢查相關值和計算欄位是否發生溢位，然後再試一次。

****SQL\$1SCHEMA\$1MISMATCH\$1ERROR**** – 資料來源結構描述與 Amazon Quick Sight 資料集不符。更新您的 Amazon Quick Sight 資料集定義。

****SQL\$1TABLE\$1NOT\$1FOUND**** – Amazon Quick Sight 在資料來源中找不到資料表。請驗證資料集或自訂 SQL 中是否指定該資料表，然後再試一次。

****SSL\$1CERTIFICATE\$1VALIDATION\$1FAILURE**** – Amazon Quick Sight 無法驗證資料庫伺服器上的 Secure Sockets Layer (SSL) 憑證。請向資料庫管理員確認該伺服器上的 SSL 狀態，然後再試一次。

****UNRESOLVABLE\$1HOST**** – Amazon Quick Sight 無法解析資料來源的主機名稱。請驗證資料來源的主機名稱，然後再試一次。

****UNROUTABLE\$1HOST**** – Amazon Quick Sight 無法連線到您的資料來源，因為它位於私有網路內。確保您的私有 VPC 連線已在 Enterprise Edition 中正確設定，或允許 Amazon Quick Sight IP 地址範圍允許 Standard Edition 的連線。

# 更新資料集中的檔案
<a name="updating-file-dataset"></a>

若要取得最新版本的檔案，您可以更新資料集中的檔案。您可以更新這些類型的檔案：
+ 逗號分隔文字檔案 (CSV) 和製表符分隔文字檔案 (TSV)
+ 擴充和通用日誌格式檔案 (ELF 和 CLF)
+ 一般或半結構化資料檔案 (JSON)
+ Microsoft Excel 檔案 (XLSX)

在更新檔案之前，請確認新檔案具有與資料集中當前原始檔案相同的欄位，且順序相同。如果兩個檔案之間存在欄位 (資料欄) 差異，則會出現錯誤，您需要在嘗試再次更新之前消除差異。您可以透過編輯新檔案以與原始檔案相符來完成此操作。請注意，若要新增欄位，可以將它們附加在檔案中的原始欄位之後。例如，在 Microsoft Excel 試算表中，您可以將新欄位附加到原始欄位的右側。

**更新資料集中的檔案**

1. 在 Quick Sight 中，選擇左側**的資料**。

1. 在**資料集**索引標籤中，選擇您要更新的資料集，然後選擇**編輯資料集**。

1. 在開啟的資料準備頁面上，選擇要更新的檔案的下拉式清單，然後選擇**更新檔案**。

1. 在開啟的**更新檔案**頁面上，選擇**上傳檔案**，然後導覽至檔案。

   Quick Sight 會掃描 檔案。

1. 如果檔案是 Microsoft Excel 檔案，請在開啟的**選取您的表**頁面上選取所需的工作表，然後選擇**選取**。

1. 在下一頁選擇**確認檔案更新**。系統會顯示一些工作表資料欄的預覽供您參考。

   檔案更新成功的訊息會出現在右上角，並且資料表預覽會更新以顯示新的檔案資料。

# 在 Amazon Quick Sight 中準備資料
<a name="preparing-data"></a>

資料集存放您已對該資料完成的任何資料準備，讓您可以在多個分析中重複使用已備妥的資料。資料準備提供如下選項：新增計算欄位、套用篩選條件，以及變更欄位名稱或資料類型。如果您要以 SQL 資料庫做為資料來源，則也可以使用資料準備來聯結資料表。或者，如果想要使用來自多個單一資料表的資料，您可以輸入 SQL 查詢。

如果您想要在 Amazon Quick Sight 中使用資料來源之前從資料來源轉換資料，您可以準備該資料來源以符合您的需求。然後將此準備儲存為資料集的一部分。

建立資料集時，您可以準備該資料集，或是先做好準備，稍後再編輯它。如需建立及準備新資料集的詳細資訊，請參閱 [建立資料集](creating-data-sets.md)。如需開啟現有資料集進行資料準備的詳細資訊，請參閱 [編輯資料集](edit-a-data-set.md)。

請使用下列主題來進一步了解資料準備。

**Topics**
+ [

# 資料準備體驗 （新）
](data-prep-experience-new.md)
+ [

# 描述資料
](describing-data.md)
+ [

# 選擇檔案上傳設定
](choosing-file-upload-settings.md)
+ [

# 資料準備體驗 （舊版）
](data-prep-experience-legacy.md)
+ [

# 使用 SQL 自訂資料
](adding-a-SQL-query.md)
+ [

# 新增地理空間資料
](geospatial-data-prep.md)
+ [

# 使用不支援的日期或自訂日期
](using-unsupported-dates.md)
+ [

# 將唯一金鑰新增至 Amazon Quick Sight 資料集
](set-unique-key.md)
+ [

# 將 Amazon SageMaker AI 模型與 Amazon Quick Sight 整合
](sagemaker-integration.md)
+ [

# 準備資料集範例
](preparing-data-sets.md)

# 資料準備體驗 （新）
<a name="data-prep-experience-new"></a>

資料準備會將原始資料轉換為針對分析和視覺化最佳化的格式。在商業智慧中，這個重要的程序涉及清理、建構和豐富資料，以實現有意義的商業洞見。

Amazon Quick Sight 的資料準備界面以直覺式的視覺化體驗徹底改變了此程序，讓使用者無需 SQL 專業知識即可建立分析就緒的資料集。透過其現代化的簡化方法，使用者可以有效率地建立和管理商業智慧資料集。視覺化界面提供清晰、循序的資料轉換檢視，可讓作者精確地追蹤從初始狀態到最終輸出的變更。

平台強調協同合作和可重複使用性，讓團隊能夠在整個組織中共用和重新利用工作流程。這種協作設計可提高資料轉換實務的一致性，同時消除冗餘工作，最終在團隊之間培養標準化程序並提高整體效率。

**Topics**
+ [

# 資料準備體驗中的元件
](data-prep-components.md)
+ [

# 資料準備步驟
](data-prep-steps.md)
+ [

# 進階工作流程功能
](advanced-workflow-capabilities.md)
+ [

# 僅限 SPICE 的功能
](spice-only-features.md)
+ [

# 在資料準備體驗之間切換
](switching-between-data-prep-experiences.md)
+ [

# 新資料準備體驗中不支援的功能
](unsupported-features.md)
+ [

# 資料準備限制
](data-preparation-limits.md)
+ [

# 擷取行為變更
](ingestion-behavior-changes.md)
+ [

# 常見問答集
](new-data-prep-faqs.md)

# 資料準備體驗中的元件
<a name="data-prep-components"></a>

Amazon Quick Sight 的資料準備體驗具有下列核心元件。

## 工作流程
<a name="workflow-component"></a>

Quick Sight 資料準備體驗中的工作流程代表一系列循序的資料轉換步驟，可將資料集從原始狀態引導至分析就緒形式。這些工作流程專為可重複使用性而設計，讓分析師能夠利用和建置現有的工作，同時在整個組織中維持一致的資料轉換標準。

雖然工作流程可以透過各種輸入或差異 （在後續章節中詳細說明） 容納多個路徑，但它們最終必須收斂成單一輸出資料表。此統一結構可確保資料一致性和簡化的分析功能。

## 轉換
<a name="transformation-component"></a>

轉換是一種特定的資料處理操作，可變更資料的結構、格式或內容。Quick Sight 的資料準備體驗提供各種轉換類型，包括聯結、篩選、彙總、樞紐分析、取消樞紐分析、附加和計算資料欄。每種轉換類型在重塑資料以滿足分析需求時都有不同的用途。這些轉換會實作為工作流程中的個別步驟。

## 步驟
<a name="step-component"></a>

步驟是在工作流程中套用的相同類型的同質轉換集合。每個步驟都包含相同轉換類別的一或多個相關操作。例如，重新命名步驟可以包含多個資料欄重新命名操作，而篩選步驟可以包含多個篩選條件 - 全部在工作流程中以單一單位管理。

大多數步驟可以包含多個操作，有兩個值得注意的例外：聯結和附加步驟限制為每個步驟兩個輸入資料表。若要聯結或附加兩個以上的資料表，您可以依序建立額外的聯結或附加步驟。

步驟會依序顯示，每個步驟都以先前步驟的結果為基礎，讓您可以追蹤資料的漸進式轉換。若要重新命名或刪除步驟，請選取該步驟，然後選擇三點式功能表。

## 連接器
<a name="connector-component"></a>

連接器將兩個步驟與指示工作流程方向的箭頭連結。您可以透過選取連接器並按刪除鍵來刪除連接器。若要在兩個現有步驟之間新增步驟，只要刪除連接器、新增步驟，然後在步驟之間拖曳滑鼠即可重新連接步驟。

## 設定窗格
<a name="configure-pane-component"></a>

**組態窗格**是您為所選步驟定義參數和設定的互動式區域。當您在工作流程中選取步驟時，此窗格會顯示該特定轉換類型的相關選項。例如，設定聯結步驟時，您可以選取聯結類型、相符的資料欄和其他聯結特定設定。**組態窗格**的point-and-click式界面不需要 SQL 知識。

## 預覽窗格
<a name="preview-pane-component"></a>

**預覽窗格**會顯示套用目前轉換步驟後顯示的即時資料範例。此即時視覺化意見回饋可協助您驗證每個轉換是否產生預期的結果，然後再繼續進行下一個步驟。**預覽窗格**會在您修改步驟組態時動態更新，讓您可放心地反覆精簡資料轉換。

這些元件可共同建立直覺式的視覺化資料準備體驗，讓商業使用者能夠存取複雜的資料轉換，而不需要技術專業知識。

# 資料準備步驟
<a name="data-prep-steps"></a>

Amazon Quick Sight 的資料準備體驗提供十一種強大的步驟類型，可讓您有系統地轉換資料。每個步驟在資料準備工作流程中都有特定用途。

步驟可以透過設定窗格中的直覺式界面**進行設定**，並在**預覽**窗格中顯示即時意見回饋。步驟可以循序組合，以建立複雜的資料轉換，而不需要 SQL 專業知識。

每個步驟都可以從實體資料表或上一個步驟的輸出接收輸入。大多數步驟都接受單一輸入，而附加和聯結步驟是例外狀況 – 這些需要剛好兩個輸入。

## Input
<a name="input-step"></a>

輸入步驟可讓您從多個來源選取和匯入資料，以在後續步驟中進行轉換，以啟動 Quick Sight 中的資料準備工作流程。

**輸入選項**
+ **新增資料集**

  利用現有的 Quick Sight 資料集做為輸入來源，以您的團隊已準備和最佳化的資料為基礎。
+ **新增資料來源**

  透過選取特定資料庫物件並提供連線參數，直接連線至資料庫，例如 Amazon Redshift、Athena、RDS 或其他支援的來源。
+ **新增檔案上傳**

  以 CSV、TSV、Excel 或 JSON 等格式直接從本機檔案匯入資料。

**組態**

輸入步驟不需要組態。**預覽**窗格會顯示您匯入的資料以及來源資訊，包括連線詳細資訊、資料表名稱和資料欄中繼資料。

**使用須知**
+ 單一工作流程中可以存在多個輸入步驟。
+ 您可以在工作流程中的任何時間點新增輸入步驟。

## 新增計算的資料欄
<a name="add-calculated-columns-step"></a>

新增計算資料欄步驟可讓您使用對現有資料欄執行計算的資料列層級表達式建立新的資料欄。您可以使用純量 （資料列層級） 函數和運算子建立新的資料欄，並套用參考現有資料欄的資料列層級計算。

**組態**

若要設定新增計算資料欄步驟，請在**組態**窗格中：

1. 為您的新計算資料欄命名。

1. 使用支援資料列層級函數和運算子 （例如 [ifelse](ifelse-function.md) 和 [round](round-function.md)) 的計算編輯器建置運算式。

1. 儲存您的計算。

1. 預覽表達式結果。

1. 視需要新增更多計算資料欄。

**使用須知**
+ 此步驟僅支援純量 （列層級） 計算。
+ 在 SPICE 中，計算的資料欄會具體化，並在後續步驟中做為標準資料欄運作。

## 變更資料類型
<a name="change-data-type-step"></a>

Quick Sight 透過支援四種抽象資料類型來簡化資料類型管理：`date`、`integer`、 `decimal`和 `string`。這些抽象類型會自動將各種來源資料類型映射至其 Quick Sight 對等項目，以消除複雜性。例如，`tinyint`、`smallint`、 `integer`和 `bigint`全都對應至 `integer`，而 `date`、 `datetime`和 `timestamp`則對應至 `date`。

此抽象表示您只需要了解 Quick Sight 的四種資料類型，因為 Quick Sight 會在與不同資料來源互動時自動處理所有基礎資料類型轉換和計算。

**組態**

若要設定變更資料類型步驟，請在**組態**窗格中：

1. 選取要轉換的資料欄。

1. 選擇目標資料類型 (`string`、`decimal`、 `integer`或 `date`)。

1. 對於日期轉換，請根據輸入格式指定格式設定和預覽結果。請參閱 Quick Sight 中[支援的日期格式](supported-data-types-and-values.md)。

1. 視需要新增要轉換的其他資料欄。

**使用須知**
+ 在單一步驟中轉換多個資料欄的資料類型以提高效率。
+ 使用 SPICE 時，所有資料類型變更都會在匯入的資料中具體化。

## 重新命名資料欄
<a name="rename-columns-step"></a>

重新命名資料欄步驟可讓您修改資料欄名稱，使其更具描述性、更易於使用，並與組織的命名慣例保持一致。

**組態**

若要設定重新命名資料欄步驟，請在**組態**窗格中：

1. 選取要命名的資料欄。

1. 輸入所選資料欄的新名稱。

1. 視需要新增更多資料欄來重新命名。

**使用須知**
+ 所有資料欄名稱在資料集內必須是唯一的。

## 選取資料欄
<a name="select-columns-step"></a>

Select Columns 步驟可讓您簡化資料集，包括、排除和重新排序欄。這有助於最佳化資料結構，方法是移除不必要的資料欄，並以邏輯順序組織剩餘的資料欄以供分析。

**組態**

若要設定選取資料欄步驟，請在**組態**窗格中：

1. 選擇要包含在輸出中的特定資料欄。

1. 依您偏好的順序選取資料欄以建立序列。

1. 使用**全選**以原始順序包含剩餘資料欄。

1. 將不需要的資料欄保留為未選取以排除。

**主要功能**
+ 輸出資料欄會依選取順序顯示。
+ **選取全部**會保留原始資料欄序列。

**使用須知**
+ 未選取的資料欄會從後續步驟中移除。
+ 透過移除不必要的資料欄來最佳化資料集大小。

## 附加
<a name="append-step"></a>

附加步驟垂直結合兩個資料表，類似於 SQL UNION ALL 操作。Quick Sight 會自動依名稱而非序列比對資料欄，即使資料表的資料欄順序不同或資料欄數量不同，也能實現高效率的資料整合。

**組態**

若要設定附加步驟，請在**組態**窗格中：

1. 選取要附加的兩個輸入資料表。

1. 檢閱輸出資料欄序列。

1. 檢查兩個資料表和單一資料表中存在哪些資料欄。

**主要功能**
+ 依名稱比對資料欄，而非序列。
+ 保留兩個資料表中的所有資料列，包括重複項目。
+ 支援具有不同資料欄數量的資料表。
+ 遵循資料表 1 的資料欄序列來比對資料欄，然後從資料表 2 新增唯一資料欄。
+ 顯示所有資料欄的明確來源指標

**使用須知**
+ 在附加具有不同名稱的資料欄時，請先使用重新命名步驟。
+ 每個附加步驟只會結合兩個資料表；針對更多資料表使用額外的附加步驟。

## Join
<a name="join-step"></a>

聯結步驟會根據指定資料欄中的相符值水平合併來自兩個資料表的資料。Quick Sight 支援左外部、右外部、完整外部和內部聯結類型，為您的分析需求提供靈活的選項。步驟包含智慧型資料欄衝突解析，可自動處理重複的資料欄名稱。雖然無法以特定聯結類型提供自我聯結，但您可以使用工作流程差異來達成類似的結果。

**組態**

若要設定聯結步驟，請在**組態**窗格中：

1. 選取要聯結的兩個輸入資料表。

1. 選擇您的聯結類型 （左側外部、右側外部、完全外部或內部）。

1. 從每個資料表指定聯結金鑰。

1. 檢閱自動解析的資料欄名稱衝突。

**主要功能**
+ 支援多種聯結類型，以滿足不同的分析需求。
+ 自動解析重複的資料欄名稱。
+ 接受計算的資料欄做為聯結索引鍵。

**使用須知**
+ 聯結金鑰必須具有相容的資料類型；如有需要，請使用變更資料類型步驟。
+ 每個聯結步驟只會結合兩個資料表；針對更多資料表使用額外的聯結步驟。
+ 在加入後建立重新命名步驟，以自訂自動解析的資料欄標頭。

## Aggregate
<a name="aggregate-step"></a>

彙總步驟可讓您透過分組資料欄和套用彙總操作來摘要資料。這項強大的轉換會根據您指定的維度，將詳細資料精簡為有意義的摘要。Quick Sight 透過直覺式界面簡化複雜的 SQL 操作，提供全方位的彙總函數，包括進階字串操作，例如 `ListAgg`和 `ListAgg distinct`。

**組態**

若要設定彙總步驟，請在**組態**窗格中：

1. 選取要分組的資料欄。

1. 選擇量值資料欄的彙總函數。

1. 自訂輸出資料欄名稱。

1. 針對 `ListAgg` 和 `ListAgg distinct`：

   1. 選取要彙總的資料欄。

   1. 選擇分隔符號 （逗號、破折號、分號或垂直線）。

1. 預覽摘要資料。

**每個資料類型支援的函數**


| 資料類型 | 支援的函數 | 
| --- | --- | 
|  數值  |  `Average`, `Sum` `Count`, `Count Distinct` `Max`, `Min`  | 
|  Date  |  `Count`, `Count Distinct` `Max`, `Min` `ListAgg`、 `ListAgg distinct`（僅適用於日期）  | 
|  String  |  `ListAgg`, `ListAgg distinct` `Count`, `Count Distinct` `Max`, `Min`  | 

**主要功能**
+ 將不同的彙總函數套用至相同步驟中的資料欄。
+ 沒有彙總函數**的 分組**會充當 SQL SELECT DISTINCT。
+ `ListAgg` 串連所有值；僅`ListAgg distinct`包含唯一值。
+ `ListAgg` 函數預設會維持遞增排序順序。

**使用須知**
+ 彙總可大幅減少資料集中的資料列計數。
+ `ListAgg` 和 `ListAgg distinct`支援 `date` 值，但不支援 `datetime`。
+ 使用分隔符號來自訂字串串連輸出。

## 篩選條件
<a name="filter-step"></a>

篩選步驟只包含符合特定條件的資料列，可讓您縮小資料集範圍。您可以在單一步驟中套用多個篩選條件，所有條件都透過`AND`邏輯合併，以協助將您的分析集中在相關資料上。

**組態**

若要設定篩選步驟，請在**組態**窗格中：

1. 選取要篩選的資料欄。

1. 選擇比較運算子。

1. 根據資料欄的資料類型指定篩選條件值。

1. 視需要新增不同資料欄的其他篩選條件。

**注意**  
字串篩選條件包含 "is in" 或 "is not in"：輸入多個值 （每行一個）。
數值和日期篩選條件：輸入單一值 （除了需要兩個值的「介於」)。

**每個資料類型支援的運算子**


| 資料類型 | 支援的運算子 | 
| --- | --- | 
|  整數和小數  |  等於，不等於 大於、小於 大於或等於、小於或等於 介於  | 
|  Date  |  之後、之前 介於 晚於或等於、早於或等於  | 
|  String  |  等於，不等於 開頭為 ，結尾為 包含，不包含 位於、不在  | 

**使用須知**
+ 在單一步驟中套用多個篩選條件。
+ 混合不同資料類型的條件。
+ 即時預覽篩選結果。

## Pivot (樞紐)
<a name="pivot-step"></a>

Pivot 步驟會將資料列值轉換為唯一資料欄，將資料從長格式轉換為寬格式，以便於比較和分析。此轉換需要值篩選、彙總和分組的規格，才能有效管理輸出資料欄。

**組態**

若要設定樞紐步驟，請在**組態**窗格中使用下列項目：

1. **樞紐分析資料欄**：選取其值將成為資料欄標頭的資料欄 （例如，類別）。

1. **樞紐分析欄資料列值**：篩選要包含的特定值 （例如，技術、辦公室用品）。

1. **輸出資料欄標頭**：自訂新的資料欄標頭 （預設為樞紐分析資料欄值）。

1. **值欄**：選取要彙總的欄 （例如 Sales)。

1. **彙總函數**：選擇彙總方法 （例如總和）。

1. **分組依據**：指定組織資料欄 （例如 Segment)。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/pivot.png)


**每個資料類型支援的運算子**


| 資料類型 | 支援的運算子 | 
| --- | --- | 
|  整數和小數  |  `Average`, `Sum` `Count`, `Count Distinct` `Max`, `Min`  | 
|  Date  |  `Count`, `Count Distinct` `Max`, `Min` `ListAgg`、 `ListAgg distinct`（僅限日期值）  | 
|  String  |  `ListAgg`, `ListAgg distinct` `Count`, `Count Distinct` `Max`, `Min`  | 

**使用須知**
+ 每個樞紐資料欄都包含值資料欄中的彙總值。
+ 為了清楚起見，請自訂資料欄標頭。
+ 即時預覽轉換結果。

## 取消樞紐
<a name="unpivot-step"></a>

Unpivot 步驟會將資料欄轉換為資料列，將寬資料轉換為更長、更窄的格式。此轉換有助於將分散在多個資料欄的資料組織成更結構化的格式，以便於分析和視覺化。

**組態**

若要設定取消樞紐步驟，請在**組態**窗格中：

1. 選取要復原至資料列的資料欄。

1. 定義輸出資料欄資料列值。預設值為原始資料欄名稱。一些範例包括技術、辦公用品和家具。

1. 為兩個新輸出資料欄命名。
   + **取消樞紐資料欄標頭**：舊資料欄名稱的名稱 （例如，類別）
   + **取消樞紐分析資料欄值**：取消樞紐分析值的名稱 （例如，Sales)

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/unpivot.png)


**主要功能**
+ 保留輸出中所有未分頁的資料欄。
+ 自動建立新的兩個資料欄：一個用於先前的資料欄名稱，另一個用於對應的值。
+ 將寬資料轉換為長格式。

**使用須知**
+ 所有取消樞紐分析的資料欄都必須具有相容的資料類型。
+ 資料列計數通常會在取消樞紐分析後增加。
+ 在套用變更之前即時預覽變更。

# 進階工作流程功能
<a name="advanced-workflow-capabilities"></a>

Amazon Quick Sight 的資料準備體驗提供複雜的功能，可增強您建立複雜、可重複使用的資料轉換的能力。本節涵蓋兩個強大的功能，可擴展您的工作流程潛力。

分散功能可讓您從單一步驟建立多個轉換路徑，允許可稍後重新組合的平行處理串流。此功能對於自助加入和平行轉換等複雜案例特別有用。

複合資料集可讓您使用現有的資料集做為建置區塊，來建置階層式資料結構。此功能可促進跨團隊的協作，並透過可重複使用的分層轉換來確保一致的商業邏輯。

這些功能可共同運作，提供彈性的工作流程設計、增強的團隊協作，以及可重複使用的資料轉換。它們可確保明確的資料歷程，並啟用可擴展的資料準備解決方案，讓您的組織能夠以有效率且清晰的方式處理越來越複雜的資料案例。

## 差異
<a name="divergence"></a>

分散可讓您從工作流程中的單一步驟建立多個平行轉換路徑。這些路徑可以獨立轉換，並在稍後重新組合，實現複雜的資料準備案例，例如自我加入。

**建立不同的路徑**

若要啟動差異，請在工作流程中：

1. 選取您要建立差異的步驟。

1. 選擇出現的 **\$1** 圖示。

1. 設定出現的新分支。

1. 將所需的轉換套用至每個路徑。

1. 使用聯結或附加步驟，將路徑重新合併為單一輸出。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/divergence.png)


**主要功能**
+ 從單一步驟建立最多五個不同的路徑。
+ 將不同的轉換套用至每個路徑。
+ 使用聯結或附加步驟重新組合路徑。
+ 獨立預覽每個路徑中的變更。

**最佳實務**
+ 使用差異來實作自我聯結。
+ 建立平行轉換的資料副本。
+ 規劃您的重組策略 （加入或附加）。
+ 保持清晰的路徑命名，以提高工作流程可見性。

## 複合資料集
<a name="composite-datasets"></a>

複合資料集可讓您建置現有資料集，建立階層式資料轉換結構，以便在整個組織中共用和重複使用。Quick Sight 在 SPICE 和直接查詢模式中最多支援 10 個層級的複合資料集。

**建立複合資料集**

若要建立複合資料集，請在工作流程中：

1. 選取建立新資料集時的輸入步驟。

1. 在**新增**資料下選擇**資料集**作為來源。

1. 選取要建置的現有資料集。

1. 視需要套用其他轉換。

1. 儲存為新的資料集。

**主要功能**
+ 建置階層式資料轉換結構。
+ 支援最多 10 個層級的資料集巢狀化。
+ 相容於 SPICE 和直接查詢。
+ 維持明確的資料歷程。
+ 啟用團隊特定的轉換。

此功能可增強不同團隊的協同合作。例如 


| Role | Action | Output | 
| --- | --- | --- | 
|  全球分析師  |  使用全球商業邏輯建立資料集  |  資料集 A  | 
|  美洲分析師  |  使用資料集 A，新增區域邏輯  |  資料集 B  | 
|  美國西部分析師  |  使用資料集 B，新增本機邏輯  |  資料集 C  | 

這種階層式方法透過指派轉換層的明確擁有權，提升整個組織的一致商業邏輯。它建立可追蹤的資料譜系，同時支援最多 10 個層級的資料集巢狀化，實現受控和系統化的資料轉換管理。

**最佳實務**
+ 為每個轉換層建立明確的擁有權。
+ 記錄資料集關係和相依性。
+ 根據業務需求規劃階層深度。
+ 維持一致的命名慣例。
+ 仔細檢閱和更新上游資料集。

# 僅限 SPICE 的功能
<a name="spice-only-features"></a>

Amazon Quick Sight 的 SPICE （超快速、平行、記憶體內計算引擎） 可啟用特定運算密集型資料準備功能。這些轉換會在 SPICE 中具體化，以獲得最佳效能，而不是在查詢時執行。

**僅限 SPICE 的功能**


| 步驟 | 其他功能 | 
| --- | --- | 
|  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/spice-only-features.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/spice-only-features.html)  | 

**SPICE 和 DirectQuery 中可用的功能**


| 步驟 | 其他功能 | 
| --- | --- | 
|  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/spice-only-features.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/spice-only-features.html)  | 

**最佳實務**
+ 將 SPICE 用於需要僅 SPICE 功能的工作流程。
+ 選擇 SPICE 以最佳化複雜轉換和大型資料集的效能。
+ 不需要 SPICE 限定功能時，請考慮 DirectQuery 是否有即時資料需求。

# 在資料準備體驗之間切換
<a name="switching-between-data-prep-experiences"></a>

傳統資料準備體驗是指 2025 年 10 月之前存在的 Amazon Quick Sight 中先前的資料準備界面。新的資料準備體驗是增強的視覺化界面，可step-by-step轉換序列。舊版資料集是在新資料準備體驗之前建立的資料集，而新資料集是在 2025 年 10 月之後建立的資料集。

建立新的資料集時，Quick Sight 會自動將您導向新的資料準備體驗。此視覺化界面為資料轉換任務提供增強的功能並改善可用性。

## 選擇不接收選項
<a name="opt-out"></a>

在儲存和發佈資料集之前，您可以選擇切換回舊版資料準備體驗，如果偏好的話。這種靈活性可讓團隊按照自己的步調進行轉換，同時熟悉新的界面。

**重要**  
如果資料集在新體驗中儲存和發佈，將無法選擇返回舊版體驗。這是設計上的，因為新體驗具有舊版體驗中不支援的重要新功能。因此，不支援將資料集從一個體驗直接轉換為另一個體驗。您需要建立新的資料集，才能切換到舊版體驗。

## 轉換工作流程
<a name="transition-workflow"></a>

一旦將資料集儲存在新的或舊版體驗中，轉換就無法直接從一個體驗轉換到另一個體驗。不過，如果已發佈的資料集版本存在，您可以使用版本控制前往先前版本，這可能是在舊版體驗中。

舊版資料集將繼續透過舊版界面進行檢視和編輯。這可維持與先前建立之工作流程的相容性。

在完全轉換之前，請花時間熟悉新的資料準備體驗。使用舊版資料集時，請考慮使用新的體驗建立新的版本，以供日後修改。視需要使用版本控制來維護舊版資料集的存取權。從傳統轉換到新體驗時，在工作流程中記錄任何變更，以確保團隊保持一致。

# 新資料準備體驗中不支援的功能
<a name="unsupported-features"></a>

雖然新的資料準備體驗提供增強功能，但尚未支援舊版體驗的某些功能。本節概述這些功能，並提供處理受影響工作流程的指引。

使用不支援的資料來源時，Amazon Quick Sight 會自動預設為舊版體驗。對於其他不支援的功能，請選取資料準備頁面右上角的**切換到舊版體驗**。在舊版體驗中建立的規則資料集仍與舊版和新體驗資料集相容。

## 不支援的資料來源
<a name="unsupported-data-sources"></a>

下列資料來源目前僅適用於舊版體驗。


| 資料來源 | 詳細資訊 | 
| --- | --- | 
|  Salesforce  |  自動預設為舊版體驗  | 
|  Google Sheets  |  自動預設為舊版體驗  | 
|  S3 分析  |  ** 支援 S3 資料來源**  | 

## 其他不支援的功能
<a name="other-unsupported-features"></a>

下列功能目前僅適用於舊版體驗。


| 功能類別 | 不支援的功能 | 
| --- | --- | 
|  資料集管理  |  [增量重新整理](refreshing-imported-data.md#refresh-spice-data-incremental)、[資料集參數](dataset-parameters.md)、[資料欄資料夾](organizing-fields-folder.md)、[資料欄描述](describing-data.md)  | 
|  資料類型  |  S3 中的[地理空間](geospatial-data-prep.md)、[ELF/CLF 格式](supported-data-sources.md#file-data-sources)、Zip/GZip 檔案 [GZip S3](supported-data-sources.md#file-data-sources)  | 
|  組態選項  |  [檔案上傳設定中的「從資料列開始」](choosing-file-upload-settings.md)，JODA 日期格式  | 
|  從舊版體驗中選擇父資料集  |  父資料集和子資料集必須存在於相同的體驗環境中。您無法將舊版體驗資料集用作新體驗資料集的父系。  | 

## 未來開發
<a name="future-development"></a>

Amazon Quick Sight 計劃在未來的新資料準備體驗中實作這些功能。此方法可確保新資料準備體驗的初始啟動優先：

**增強功能**
+ 視覺化轉換工作流程
+ 改善程序透明度
+ 透過差異的進階準備技術
+ 強大的新功能，例如附加、彙總和樞紐

**彈性採用**

使用者可以在發佈資料集之前在體驗之間進行選擇，確保在團隊以自己的步調進行轉換的同時，工作流程不會中斷。這種方法允許立即存取新功能，同時透過傳統體驗維持對特殊需求的支援。

# 資料準備限制
<a name="data-preparation-limits"></a>

Amazon Quick Sight 的資料準備體驗旨在處理企業規模的資料集，同時保持最佳效能。下列限制可確保可靠的功能。

## 資料集大小限制 (SPICE)
<a name="dataset-size-limits"></a>
+ **輸出大小**：最多 2TB 或 20 億列
+ **總輸入大小**：合併輸入來源不得超過 2TB
+ **次要資料表大小**：合併大小限制為 20GB

**注意**  
主要資料表是工作流程中大小上限為 的資料表；所有其他資料表都是次要資料表。

## 工作流程結構限制
<a name="workflow-structure-limits"></a>
+ **步驟上限**：每個工作流程最多 256 個轉換步驟
+ **來源資料表**：每個工作流程最多 32 個匯入步驟
+ **輸出資料**欄：工作流程中的任何步驟最多 2048 個資料欄，以及具有 2000 個資料欄的最終輸出資料表
+ **差異路徑**：單一步驟最多 5 個路徑 （僅限 SPICE，不適用於 DirectQuery)
+ **做為來源的資料集**：SPICE 和 DirectQuery 最多 10 個層級

這些限制旨在平衡彈性與效能，實現複雜的資料轉換，同時確保最佳的分析功能。

# 擷取行為變更
<a name="ingestion-behavior-changes"></a>

新的資料準備體驗在 SPICE 擷取期間處理資料品質問題的方式上引入了重要的變更。此變更會大幅影響資料集中的資料完整性和透明度。

在舊版體驗中，遇到資料類型不一致 （例如日期格式不正確[或類似問題](errors-spice-ingestion.md)) 時，會在擷取期間略過包含有問題儲存格的整列。這種方法會導致最終資料集中的資料列減少，可能掩蓋資料品質問題。

新的體驗會針對資料不一致採取更精細的方法。遇到有問題的儲存格時，只有不一致的值會轉換為 null 值，同時保留整個資料列。此保留可確保其他資料欄中的相關資料仍可供分析使用。

**對資料集品質的影響**

當來源資料包含不一致時，在新體驗中建立的資料集通常會包含比其傳統對等資料更多的資料列。此增強型方法提供數種優點：
+ 透過保留所有資料列來改善資料完整性
+ 識別資料品質問題的透明度更高
+ 更好的修復問題值可見性
+ 在不受影響的資料欄中保留相關資料

此變更可讓分析師更有效地識別和解決資料品質問題，而不是從資料集無提示地省略有問題的資料列。

# 常見問答集
<a name="new-data-prep-faqs"></a>

## 1. 使用者何時需要從新的 切換到舊版體驗？
<a name="faq-1"></a>

使用包含目前[不支援功能的](unsupported-features.md)資料集時，使用者必須返回舊版體驗。Quick Sight 正積極努力將這些功能納入即將推出版本的新體驗中。

## 2. 為什麼嘗試在新體驗中新增資料集時，資料集會呈現灰色？ 資料集可以在傳統和新體驗之間合併嗎？
<a name="faq-2"></a>

目前，父資料集和子資料集必須存在於相同的體驗環境中。您無法跨舊版和新體驗結合資料集，因為新體驗包含舊版中無法使用的其他功能，例如附加功能、樞紐功能和差異。

**使用舊版體驗中的父資料集**

若要使用舊版體驗的父資料集，您可以切換回該環境。只需導覽至資料準備頁面，然後選擇右上角**的切換回舊版體驗**。到達該處後，您可以視需要建立子資料集。

**未來開發**

我們計劃實作功能，允許使用者將舊版資料集升級至新的體驗。此升級的路徑將在新的體驗中使用舊版父資料集。

## 3. 為什麼 Quick Sight 要在實現與舊版體驗的完整功能同位之前啟動新的資料準備體驗？
<a name="faq-3"></a>

新的資料準備體驗是透過廣泛的客戶協作開發，以解決真實世界的分析挑戰。初始啟動會排定優先順序：

**增強功能**
+ 視覺化轉換工作流程
+ 改善程序透明度
+ 透過差異的進階準備技術
+ 強大的新功能，例如附加、彙總和樞紐

**彈性採用**

使用者可以在發佈資料集之前在體驗之間進行選擇，確保在團隊以自己的步調進行轉換的同時，工作流程不會中斷。這種方法允許立即存取新功能，同時透過傳統體驗維持對特殊需求的支援。

## 4. 目前僅適用於舊版體驗的功能是否會新增至新的體驗？
<a name="faq-4"></a>

是。Quick Sight 正積極努力將傳統功能納入新的體驗。

## 5. API 變更如何影響現有的資料集建立指令碼？
<a name="faq-5"></a>

Quick Sight 可維持回溯相容性，同時引進新功能：
+ 現有指令碼：舊版 API 指令碼將繼續運作，在舊版體驗中建立資料集
+ API 命名：目前的 API 名稱保持不變
+ 新功能：其他 API 格式支援新體驗的增強功能
+ 文件：我們的 API 參考提供適用於新體驗的完整 API 規格

## 6. 資料集是否可以在發佈後在體驗之間轉換？
<a name="faq-6"></a>
+ 未來遷移路徑：Quick Sight 將在未來新增功能，以輕鬆將舊版資料集遷移至新的體驗。
+ 單向程序：由於進階功能相依性，不支援將資料集從新體驗轉換為舊版格式

# 描述資料
<a name="describing-data"></a>

使用 Amazon Quick Sight，您可以新增資料集中資料欄 （欄位） 的相關資訊或*中繼資料*。透過新增中繼資料，您可以使資料集自我解釋並且更易於重複使用。這樣做可以協助資料管理者及其客戶了解資料的來源及其意義。這是您與使用資料集或將其與其他資料集結合起來建立儀表板的人員交流的一種方式。中繼資料針對組織之間共用的資訊尤其重要。

將中繼資料新增至資料集後，使用該資料集的任何人都可以使用欄位描述。當正在瀏覽**欄位**清單的使用者暫停在某個欄位名稱上時，資料欄描述便會出現。資料欄描述對於編輯資料集或分析的人員可見，但對於檢視儀表板的人員不可見。描述未格式化。您可以輸入換行符號和格式標記，編輯器會保留這些內容。但顯示的描述工具提示只能顯示單字、數字和符號，而不能顯示格式。

**編輯資料欄或欄位的描述**

1. 在快速首頁中，選擇左側**的資料**。

1. 在**資料**索引標籤中，選擇您要使用的資料集。

1. 在開啟的資料集詳細資訊頁面上，選擇右上角的**編輯資料集**。

1. 在開啟的資料集頁面上，在底部的資料表預覽或左側的欄位清單中選擇資料欄。

1. 若要新增或變更描述，請執行下列操作之一：
   + 在螢幕底部，透過欄位名稱旁邊的鉛筆圖示開啟欄位的設定。
   + 在欄位清單中，從欄位名稱旁的選單 開啟欄位的設定。然後從內容選單中選擇**編輯名稱和描述**。

1. 新增或變更欄位的描述。

   若要刪除現有描述，請刪除「描述」方塊中的所有文字。

1. (選用) 針對**名稱**，若要變更欄位的名稱，可以在此輸入新名稱。

1. 選擇 **Apply (套用)** 來儲存您的變更。選擇「取消」以退出。

# 選擇檔案上傳設定
<a name="choosing-file-upload-settings"></a>

如果您使用的是檔案資料來源，則確認上傳設定，並進行必要更正。

**重要**  
如果需要變更上傳設定，請先進行這些變更，然後再對資料集進行任何其他變更。變更上傳設定會導致 Amazon Quick Sight 重新匯入檔案。此程序會覆寫您目前所做的任何變更。

## 變更文字檔案上傳設定
<a name="change-text-file-upload-settings"></a>

文字檔案上傳設定包含檔案標頭指標、檔案格式、文字分隔符號、文字限定詞，以及開始資料列。如果您使用的是 Amazon S3 資料來源，則您選取的上傳設定會套用到您選擇要在此資料集中使用的所有檔案。

請透過以下程序來變更文字檔案上傳設定。

1. 在資料準備頁面上，選擇展開圖示來開啟**上傳設定**窗格。

1. 在 **File format (檔案格式)** 中，選擇檔案格式類型。

1. 如果您選擇**自訂分隔 (自訂)**格式，請在**分隔符號**中指定分隔字元。

1. 如果檔案未包含標頭資料列，請取消選取 **Files include headers (檔案包含標頭)** 核取方塊。

1. 如果您想要從第一列以外的資料列開始，請在 **Start from row (從第幾列開始)** 中指定資料列號碼。如果已選取 **Files include headers (檔案包含標頭)** 核取方塊，則新的開始資料列會被視為標頭資料列。如果未選取 **Files include headers (檔案包含標頭)** 核取方塊，則新的開始資料列會被視為第一個資料列。

1. 在 **Text qualifier (文字限定詞)** 中，選擇文字限定詞 (單引號 (') 或雙引號 ("))。

## 變更 Microsoft Excel 檔案上傳設定
<a name="change-excel-file-upload-settings"></a>

Microsoft Excel 檔案上傳設定包括範圍標頭指標和整個工作表選取器。

請透過以下程序來變更 Microsoft Excel 檔案上傳設定。

1. 在資料準備頁面上，選擇展開圖示來開啟**上傳設定**窗格。

1. 讓 **Upload whole sheet (上傳整個圖表)** 保持選取。

1. 如果檔案未包含標頭資料列，請取消選取 **Range contains headers (範圍包含標頭)** 核取方塊。

# 資料準備體驗 （舊版）
<a name="data-prep-experience-legacy"></a>

**Topics**
+ [

# 新增計算
](working-with-calculated-fields.md)
+ [

# 聯結資料
](joining-data.md)
+ [

# 在 Amazon Quick Sight 中準備用於分析的資料欄位
](preparing-data-fields.md)
+ [

# 在 Amazon Quick Sight 中篩選資料
](adding-a-filter.md)
+ [

# 預覽資料集中的資料表
](previewing-tables-in-a-dataset.md)

# 新增計算
<a name="working-with-calculated-fields"></a>

透過使用以下一項或多項建立計算欄位以轉換資料：
+ [運算子](arithmetic-and-comparison-operators.md)
+ [函數](functions.md)
+ 包含資料的欄位
+ 其他計算欄位

您可以在資料準備期間或從分析頁面，將計算欄位新增至資料集。當您在資料準備期間將計算欄位新增至資料集時，所有使用該資料集的分析都可以使用此計算欄位。當您將計算欄位新增至分析中的資料集時，只有在該分析中才可使用此計算欄位。如需新增計算欄位的詳細資訊，請參閱下列主題。

**Topics**
+ [

# 新增計算欄位
](adding-a-calculated-field-analysis.md)
+ [

# Amazon Quick Sight 中的評估順序
](order-of-evaluation-quicksight.md)
+ [

# 在 Quick Sight 中使用關卡感知計算
](level-aware-calculations.md)
+ [

# Amazon Quick 的計算欄位函數和運算子參考
](calculated-field-reference.md)

# 新增計算欄位
<a name="adding-a-calculated-field-analysis"></a>

透過使用以下一項或多項建立計算欄位以轉換資料：
+ [運算子](arithmetic-and-comparison-operators.md)
+ [函數](functions.md)
+ 彙總函數 (只能將這些函數新增至分析)
+ 包含資料的欄位
+ 其他計算欄位

您可以在資料準備期間或從分析頁面，將計算欄位新增至資料集。當您在資料準備期間將計算欄位新增至資料集時，所有使用該資料集的分析都可以使用此計算欄位。當您將計算欄位新增至分析中的資料集時，只有在該分析中才可使用此計算欄位。

分析同時支援單一資料列操作和彙總操作。單一資料列操作是對於每個資料列提供 (可能) 不同結果的操作。彙總操作為整個資料列集提供一律相同的結果。例如，如果您使用無任何條件的簡單字串函數，這會變更每個資料列。如果您使用彙總函數，這會套用到群組中的所有資料列。如果您要求美國的總銷售額，相同的字數會套用到整個集。如果您要求特定狀態的資料，總銷售金額會變更，以反映新的分組。這仍然會對於整個集提供一個結果。

透過在分析中建立彙總計算欄位，即可深入檢視資料。系統會適當地針對每個層集重新計算該彙總欄位的值。這類彙總無法在資料集準備期間進行。

例如，假設您想要找出每個國家、區域和州的營利百分比。您可以將計算欄位新增到分析 `(sum(salesAmount - cost)) / sum(salesAmount)`。您的分析深入探索地理位置時，系統會對於每個國家、區域和州計算此欄位。

**Topics**
+ [

## 新增計算欄位至分析
](#using-the-calculated-field-editor-analysis)
+ [

## 新增計算欄位至資料集
](#using-the-calculated-field-editor)
+ [

## 處理計算欄位中的小數值
](#handling-decimal-fields)

## 新增計算欄位至分析
<a name="using-the-calculated-field-editor-analysis"></a>

當您新增資料集至分析時，資料集中的每個計算欄位都會新增至分析。您可以在分析層級新增其他計算欄位，以建立僅在該分析中可用的計算欄位。

**若要新增計算欄位至分析**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟要變更的分析。

1. 在**資料**窗格中，選擇左上角的**新增**，然後選擇 **\$1 計算欄位**。

   1. 在開啟的計算編輯器中，執行下列動作：

   1. 輸入計算欄位的名稱。

   1. 使用資料集、函數和運算子中的欄位輸入公式。

1. 完成時，選擇**儲存**。

如需如何在 Quick Sight 中使用可用函數建立公式的詳細資訊，請參閱 [Amazon Quick 的計算欄位函數和運算子參考函式和運算子](calculated-field-reference.md)。

## 新增計算欄位至資料集
<a name="using-the-calculated-field-editor"></a>

Amazon Quick Sight 作者可以在資料集建立的資料準備階段期間產生計算欄位。當您為資料集建立計算欄位時，該等欄位會變成資料集中的新資料欄。使用資料集的所有分析，都會繼承資料集的計算欄位。

如果計算欄位在資料列層級運作，且資料集存放在 中SPICE，Quick Sight 會運算並將結果具體化為 SPICE。如果計算欄位依賴彙總函數，Quick Sight 會保留公式，並在分析產生時執行計算。這類計算欄位稱為未具體化的計算欄位。

**若要新增或編輯資料集的計算欄位**

1. 開啟您要使用的資料集。如需詳細資訊，請參閱[編輯資料集](edit-a-data-set.md)。

1. 在資料準備頁面上，執行下列動作之一：
   + 若要建立新欄位，選擇左側的**新增計算欄位**。
   + 若要編輯現有計算欄位，從左側的**計算欄位**中選擇對應欄位，然後從上下文 (按一下滑鼠右鍵) 選單中選擇**編輯**。

1. 在計算編輯器的**新增標題**中輸入一個描述性的名稱，為新計算欄位命名。此名稱出現在資料集的欄位清單中，因此看起來應該與其他欄位類似。在此範例中，我們將欄位命名為 `Total Sales This Year`。

1. (選用) 新增註解，例如將文字括在斜杠和星號中來說明運算式的作用。

   ```
   /* Calculates sales per year for this year*/
   ```

1. 確定要使用的指標、函數和其他項目。在此範例中，我們需要確定以下內容：
   + 要使用的指標
   + 函數：`ifelse` 和 `datediff`

   我們想要建置一個陳述式，例如「如果銷售發生在今年，則顯示總銷售額，否則顯示 0。」

   若要新增 `ifelse` 函數，開啟**函數**清單。選擇**全部**以關閉所有函數的清單。現在您應該會看到函數群組：**彙總**、**有條件**、**日期**等。

   選擇**有條件**，然後按兩下 `ifelse` 將其新增至工作區。

   ```
   ifelse()
   ```

1. 將游標放置於工作區中的括弧內，然後新增三個空白行。

   ```
   ifelse(
                                               
                                               
                                               
   )
   ```

1. 將游標置於第一個空白行，找到 `dateDiff` 函數。它列在**日期**下的**函數**中。您也可以透過在**搜尋函數**中輸入 **date** 來尋找它。`dateDiff` 函數會返回名稱中包含 *`date`* 的所有函數。它不會傳回**日期**下列出的所有函數；例如，搜尋結果中缺少 `now` 函數。

   連按兩下 `dateDiff` 以將其新增至 `ifelse` 陳述式的第一個空白行。

   ```
   ifelse(
   dateDiff()                                            
                                               
                                               
   )
   ```

   新增 `dateDiff` 使用的參數。將游標放置於 `dateDiff` 括弧內以開始新增 `date1`、`date2` 和 `period`：

   1. 對於 `date1`：第一個參數是內含日期的欄位。在**欄位**下找到它，然後按兩下或輸入其名稱以將其新增至工作區。

   1. 對於 `date2`，新增逗號，然後為**函數**選擇 `truncDate()`。在其括弧內新增句點和日期，如下所示：**truncDate( "YYYY", now() )**

   1. 對於 `period`：在 `date2` 後新增逗號並輸入 **YYYY**。這是一年的期間。若要查看所有支援期間的清單，請在**函數**清單中尋找 `dateDiff`，然後選擇**進一步了解**開啟文件。如果您正在檢視文件，就像現在一樣，請參閱 [dateDiff](dateDiff-function.md)。

   如果您願意，可以新增一些空格以提高可讀性。運算式應如下所示。

   ```
   ifelse(
      dateDiff( {Date}, truncDate( "YYYY", now() ) ,"YYYY" )                                       
                                               
                                               
   )
   ```

1. 指定傳回值。在我們的範例中，`ifelse` 中的第一個參數需要傳回 `TRUE` 或 `FALSE` 的值。因為我們想要目前的年份，並且正在將其與今年進行比較，所以指定 `dateDiff` 陳述式應傳回 `0`。對於銷售年份與目前年份之間沒有差異的資料列，`ifelse` 的 `if` 部分評估為 true。

   ```
      dateDiff( {Date}, truncDate( "YYYY", now() ) ,"YYYY" ) = 0 
   ```

   若要建立去年 `TotalSales` 的欄位，可以將 `0` 變更為 `1`。

   實現這個目標的另外一種做法是使用 `addDateTime` 而不是 `truncDate`。然後，對於每個前一年，您可以變更 `addDateTime` 的第一個參數來表示每個年份。為此，您為去年使用 `-1`，為前年使用 `-2`，依此類推。如果使用 `addDateTime`，則每年的 `dateDiff` 函數都保留為 `= 0`。

   ```
      dateDiff( {Discharge Date}, addDateTime(-1, "YYYY", now() ) ,"YYYY" ) = 0 /* Last year */
   ```

1. 將游標移至第一個空白行 `dateDiff` 的正下方。新增逗號。

   對於 `ifelse` 陳述式的 `then` 部分，我們需要選擇包含銷售金額的量值 (指標) `TotalSales`。

   若要選擇欄位，請開啟**欄位**清單，然後按兩下某個欄位以將其新增至螢幕。也可以輸入名稱。在包含空格的名稱周圍新增大括弧 `{ }`。您的指標可能有不同的名稱。您可以透過欄位前面的數字符號 (**\$1**) 知道哪個欄位是指標。

   陳述式應如下所示。

   ```
   ifelse(
      dateDiff( {Date}, truncDate( "YYYY", now() ) ,"YYYY" ) = 0
      ,{TotalSales}                            
                                              
   )
   ```

1. 新增 `else` 子句。子句對於 `ifelse` 函數而言並非必需，但我們想要新增。出於報告目的，您通常不希望有任何 Null 值，因為有時包含 null 值的資料列會被略過。

   我們將 ifelse 的其他部分設定為 `0`。結果是對於包含前幾年之銷售額的資料列，此欄位為 `0`。

   為此，在空白行依序新增一個逗號和 `0`。如已在開頭新增註解，則完成的 `ifelse` 運算式應如下所示。

   ```
   /* Calculates sales per year for this year*/
   ifelse(
      dateDiff( {Date}, truncDate( "YYYY", now() ) ,"YYYY" ) = 0
      ,{TotalSales}                            
      ,0                                         
   )
   ```

1. 選擇右上角的**儲存**以儲存您的工作。

   如果運算式中有錯誤，編輯器底部會顯示錯誤訊息。檢查您的運算式是否有紅色波浪線，然後將游標懸停在該行上方以查看錯誤訊息為何。常見錯誤包括缺少標點符號、缺少參數、拼字錯誤和資料類型無效。

   若要避免進行任何變更，請選擇**取消**。

**若要新增參數值至計算欄位**

1. 您可以引用計算欄位中的參數。透過新增參數加入至運算式，您可以新增該參數的目前值。

1. 若要新增參數，請開啟**參數**清單，然後選取您想要納入其值的參數。

1. (選用) 若要手動新增參數至運算式，請鍵入參數名稱。然後用大括弧 `{}` 括住它，並新增前綴 `$`，例如 `${parameterName}`。

您可以變更資料集中任何欄位的資料類型，包括計算欄位的類型。您只能選擇與欄位中的資料相符的資料類型。

**若要變更計算欄位的資料類型**
+ 對於**計算欄位** (左側)，選擇要變更的欄位，然後從上下文 (按一下滑鼠右鍵) 選單中選擇**變更資料類型**。

與資料集中的其他欄位不同，計算欄位無法停用。可以刪除它們。

**若要刪除計算欄位**
+ 對於**計算欄位** (左側)，選擇要變更的欄位，然後從上下文 (按一下滑鼠右鍵) 選單中選擇**刪除**。

## 處理計算欄位中的小數值
<a name="handling-decimal-fields"></a>

當您的資料集使用「直接查詢」模式時，小數資料類型的計算由來源引擎 (資料集的來源) 的行為決定。在某些情況下，Quick Sight 會套用特殊處理來判斷輸出計算的資料類型。

當您的資料集使用 SPICE 查詢模式且計算欄位被具體化時，結果的資料類型取決於特定函數運算子和輸入的資料類型。下表顯示某些數值計算欄位的預期行為。

**一元運算子**

下表顯示根據您使用的運算子以及所輸入值的資料類型輸出的資料類型。例如，如果您在 `abs` 計算中輸入整數，則輸出值的資料類型為整數。


****  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/adding-a-calculated-field-analysis.html)

**二元運算子**

下表顯示根據您輸入的兩個值的資料類型輸出的資料類型。例如，對於算術運算子，如果您提供兩種整數資料類型，則計算輸出的結果為整數。

對於基本運算子 (\$1、-、\$1)：


|  | **整數** | **小數-定點** | **小數-浮點** | 
| --- | --- | --- | --- | 
|  **整數**  |  Integer  |  小數-定點  |  小數-浮點  | 
|  **小數-定點**  |  小數-定點  |  小數-定點  |  小數-浮點  | 
|  **小數-浮點**  |  小數-浮點  |  小數-浮點  |  小數-浮點  | 

對於除法運算子 (/)：


|  | **整數** | **小數-定點** | **小數-浮點** | 
| --- | --- | --- | --- | 
|  **整數**  |  小數-浮點  |  小數-浮點  |  小數-浮點  | 
|  **小數-定點**  |  小數-浮點  |  小數-定點  |  小數-浮點  | 
|  **小數-浮點**  |  小數-浮點  |  小數-浮點  |  小數-浮點  | 

對於指數運算子和模數運算子 (^、%)：


|  | **整數** | **小數-定點** | **小數-浮點** | 
| --- | --- | --- | --- | 
|  **整數**  |  小數-浮點  |  小數-浮點  |  小數-浮點  | 
|  **小數-定點**  |  小數-浮點  |  小數-浮點  |  小數-浮點  | 
|  **小數-浮點**  |  小數-浮點  |  小數-浮點  |  小數-浮點  | 

# Amazon Quick Sight 中的評估順序
<a name="order-of-evaluation-quicksight"></a>

當您開啟或更新分析時，在顯示分析之前，Amazon Quick Sight 會以特定序列評估分析中設定的所有項目。Amazon Quick Sight 會將組態轉換為資料庫引擎可執行的查詢。無論您連線到資料庫、軟體即服務 (SaaS) 來源或 Amazon Quick Sight 分析引擎 ()，查詢都會以類似的方式傳回資料[SPICE](spice.md)。

如果您了解組態的評估順序，您就會知道指定何時將特定篩選條件或計算套用到資料的順序。

下圖顯示評估的順序。左側資料欄顯示不涉及等級感知計算視窗 (LAC-W) 或彙總 (LAC-A) 函數時的評估順序。第二個資料欄顯示分析 (包含要在預先篩選層級 (`PRE_FILTER`) 計算 LAC-W 運算式的計算欄位) 的評估順序。第三個資料欄顯示分析 (包含要在預先彙總層級 (`PRE_AGG`) 計算 LAC-W 運算式的計算欄位) 的評估順序。最後一個資料欄顯示分析 (包含計算 LAC-A 運算式的計算欄位) 的評估順序。在圖例之後，會更詳細地說明評估順序。如需有關等級感知計算的詳細資訊，請參閱 [在 Quick Sight 中使用關卡感知計算](level-aware-calculations.md)。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/order-of-evaluation2.png)


下列清單顯示 Amazon Quick Sight 在分析中套用組態的順序。資料集中設定的任何內容都會發生在您的分析外，例如資料集層級的計算、篩選條件和安全設定。這些都適用於基礎資料。以下清單只涵蓋分析內部發生的情況。

1. **LAC-W 預先篩選層級**：在分析篩選器之前，對原始資料表基數的資料求值

   1. **簡單計算**：標量層級的計算，不含任何彙總或視窗計算。例如 `date_metric/60, parseDate(date, 'yyyy/MM/dd'), ifelse(metric > 0, metric, 0), split(string_column, '|' 0)`。

   1. **LAC-W 函數 PRE\$1FILTER**：如果視覺效果中涉及任何 LAC-W PRE\$1FILTER 表達式，Amazon Quick Sight 會先在原始資料表層級運算視窗函數，再使用任何篩選條件。如果在篩選器中使用 LAC-W PRE\$1FILTER 運算式，則會在此時套用該運算式。例如 `maxOver(Population, [State, County], PRE_FILTER) > 1000`。

1. **LAC-W PRE\$1AGG**：彙總之前對原始資料表基數的資料求值

   1. **分析期間新增的篩選器**：此時會套用針對視覺效果中為未彙總的欄位建立的篩選器，類似於 WHERE 子句。例如 `year > 2020`。

   1. **LAC-W 函數 PRE\$1AGG**：如果視覺效果中涉及任何 LAC-W PRE\$1AGG 表達式，Amazon Quick Sight 會在套用任何彙總之前計算視窗函數。如果在篩選器中使用 LAC-W PRE\$1AGG 運算式，則會在此時套用該運算式。例如 `maxOver(Population, [State, County], PRE_AGG) > 1000`。

   1. **前/後 N 個篩選器**：對維度設定的篩選器，可顯示前/後 N 個項目。

1. **LAC-A 層級**：在視覺效果彙總之前，在自訂層級對彙總求值

   1. **自訂層級彙總**：如果視覺效果中涉及任何 LAC-A 運算式，則會在此時計算該運算式。Amazon QuickSight 會根據上述篩選器之後的資料表計算彙總，並依計算欄位中指定的維度分組。例如 `max(Sales, [Region])`。

1. **視覺效果層級**：在視覺效果層級對彙總求值，進行彙總後資料表計算，並在視覺效果中套用其餘組態

   1. **視覺效果層級彙總**：除資料表式資料表 (維度為空) 之外，應永遠套用視覺效果彙總。透過此設定，系統將根據欄位區中的欄位計算彙總，並依置於視覺效果中的維度分組。如果任何篩選器建置在彙總結果之上，此時即會套用，類似 HAVING 子句。例如 `min(distance) > 100`。

   1. **資料表計算**：如果視覺效果中引用了任何彙總後資料表計算 (應將彙總運算式作為運算元)，則在此時計算。Amazon Quick Sight 會在視覺化彙總後執行視窗計算。同樣地，也會套用建置在此類計算上的篩選器。

   1. **其他類別計算**：此類計算僅存在於拆線圖/長條圖/圓餅圖/環形圖中。如需詳細資訊，請參閱[顯示限制](working-with-visual-types.md#display-limits)。

   1. **總計和小計**：如果要求，總計和小計會在環形圖 (僅總計)、資料表 (僅總計) 和樞紐分析表中計算。

# 在 Quick Sight 中使用關卡感知計算
<a name="level-aware-calculations"></a>


|  | 
| --- |
|    適用對象：企業版和標準版  | 

使用*等級感知計算* (LAC)，您可以指定要計算視窗函數或彙總函數的資料粒度等級。LAC 函數有兩種類型：等級感知計算 – 彙總 (LAC-A) 函數，以及等級感知計算 – 視窗 (LAC-W) 函數。

**Topics**
+ [LAC-A 函數](#level-aware-calculations-aggregate)
+ [LAC-W 函數](#level-aware-calculations-window)

## 等級感知計算 – 彙總 (LAC-A) 函數
<a name="level-aware-calculations-aggregate"></a>

使用 LAC-A 函數，您可以指定在哪個等級進行計算分組。透過將一個引數新增至現有的彙總函數 (例如 `sum() , max() , count()`)，您可以定義任何想要用於彙總的分組等級。新增的等級可以是與新增至視覺效果的維度無關的任何維度。例如：

```
sum(measure,[group_field_A])
```

若要使用 LAC-A 函數，請直接在計算編輯器中輸入它們，方法是將預期的彙總等級作為置於括弧之間的第二個引數新增。以下是彙總函數和 LAC-A 函數的示例，方便進行比較。
+ 彙總函數：`sum({sales})`
+ LAC-A 函數：`sum({sales}, [{Country},{Product}])`

LAC-A 結果使用括弧 `[ ]` 中的指定級別計算，可以用作彙總函數的運算元。彙總函數的分組等級是視覺效果等級，並將**分組依據**欄位新增至視覺效果的欄位區。

除了在括弧 `[ ]` 中建立靜態 LAC 群組金鑰之外，您還可以透過將參數 `$visualDimensions` 放在括弧中，使其動態適應視覺效果分組依據欄位。這是系統提供的參數，不同於使用者定義的參數。`[$visualDimensions]` 參數表示在當前視覺效果中新增至**分組依據**欄位區的欄位。下列範例顯示如何將群組金鑰動態新增至視覺效果維度，或從視覺效果維度移除群組金鑰
+ 具有動態新增之群組金鑰的 LAC-A：`sum({sales}, [${visualDimensions},{Country},{Products}])`

  它會在計算視覺效果等級的彙總之前，計算依據 `country`、`products` 以及**分組依據**欄位區中的任何其他欄位分組的銷售總和。
+ 具有動態移除之群組金鑰的 LAC-A：`sum({sales}, [${visualDimensions},!{Country},!{Products}])`

  它會在計算視覺效果等級的彙總之前，計算依據視覺效果**分組依據**欄位區中除 `country` 和 `product` 之外的其他欄位分組的銷售總和。

您可以在 LAC 運算式上指定新增的或移除的群組金鑰，但不能同時指定兩者。

下列彙總函數支援 LAC-A 函數：
+ [avg](avg-function.md)
+ [count](count-function.md)
+ [distinct\$1count](distinct_count-function.md)
+ [max](max-function.md)
+ [median](median-function.md)
+ [min](min-function.md)
+ [percentile](percentile-function.md)
+ [percentileCont](percentileCont-function.md)
+ [percentileDisc (百分位數)](percentileDisc-function.md)
+ [stdev](stdev-function.md)
+ [stdevp](stdevp-function.md)
+ [sum](sum-function.md)
+ [var](var-function.md)
+ [varp](varp-function.md)

### LAC-A 的範例
<a name="level-aware-calculations-aggregate-examples"></a>

您可以使用 LAC-A 函數執行下列作業：
+ 執行獨立於視覺效果中的等級的計算。例如，如果進行以下計算，只會在國家/地區等級彙總銷售數字，但不會在視覺效果中的其他維度 (區域或產品) 彙總。

  ```
  sum({Sales},[{Country}])
  ```
+ 對不在視覺效果中的維度執行計算。例如，如果您有以下函數，可以按區域計算國家/地區的平均總銷售額。

  ```
  sum({Sales},[{Country}])
  ```

  雖然國家/地區不包含在視覺效果中，但 LAC-A 函數會先在國家/地區等級彙總銷售額，然後視覺效果等級的計算會產生每個區域的平均數。如果未使用 LAC-A 函數來指定等級，則會在最低粒度等級 (資料集的基礎等級) 計算每個區域的平均銷售額 (顯示在「銷售額」資料欄中)。
+ LAC-A 與其他彙總函數和 LAC-W 函數結合使用。您可以透過兩種方式將 LAC-A 函數巢狀其他函數。
  + 您可以在建立計算時撰寫巢狀語法。例如，LAC-A 函數可以巢狀 LAC-W 函數，依國家/地區按每種產品的平均價格計算總銷售額：

    ```
    sum(avgOver({Sales},[{Product}],PRE_AGG),[{Country}])
    ```
  + 將 LAC-A 函數新增至視覺效果時，計算可以與您在欄位中選取的視覺層級彙總函數進一步巢狀。如需如何變更視覺效果中的欄位彙總的詳細資訊，請參閱 [使用欄位集在欄位中變更或新增彙總](changing-field-aggregation.md#change-field-aggregation-field-wells)。

### LAC-A 限制
<a name="level-aware-calculations-aggregate-limitations"></a>

下列限制會套用於 LAC-A 函數：
+ 所有加法和非加法彙總函數都支援 LAC-A 函數，例如 `sum()`、`count()` 和 `percentile()`。LAC-A 函數不支援以「if」結尾的條件式彙總函數，例如 `sumif()` 和 `countif()`，也不支援以「periodToDate」開頭的週期彙總函數，例如 `periodToDateSum()` 和 `periodToDateMax()`。
+ 資料表和樞紐分析表中的 LAC-A 函數目前不支援資料列等級和資料欄等級的總計。當您將資料列或資料欄等級的總計新增至圖表時，總數將顯示為空白。其他非 LAC 維度不受影響。
+ 目前不支援巢狀 LAC-A 函數。支援與一般彙總函數和 LAC-W 函數巢狀的 LAC-A 函數的有限功能。

  例如，以下函數有效：
  + `Aggregation(LAC-A())`。例如：`max(sum({sales}, [{country}]))`
  + `LAC-A(LAC-W())`。例如：`sum(sumOver({Sales},[{Product}],PRE_AGG), [{Country}])`

  以下函數無效：
  + `LAC-A(Aggregation())`。例如：`sum(max({sales}), [{country}])`
  + `LAC-A(LAC-A())`。例如：`sum(max({sales}, [{country}]),[category])`
  + `LAC-W(LAC-A())`。例如：`sumOver(sum({Sales},[{Product}]),[{Country}],PRE_AGG)`

## 等級感知計算 – 視窗 (LAC-W) 函數
<a name="level-aware-calculations-window"></a>

使用 LAC-W 函數，您可以指定要執行計算的視窗或分割區。LAC-W 函數是您可以在預先篩選或預先彙總等級執行的一組視窗函數，例如 `sumover()`、`(maxover)`、`denseRank`。例如：`sumOver(measure,[partition_field_A],pre_agg)`。

LAC-W 函數之前被稱為等級感知彙總 (LAA)。

LAC-W 函數有助於您回答下列類型的問題：
+ 有多少客戶只簽訂 1 份採購訂單？ 或 10 份？ 或 50 份？ 我們希望視覺效果使用計數做為維度，而不是視覺效果中的指標。
+ 生命週期花費超過 100,000 美元的客戶，在每個市場區隔的總銷售額是多少？ 視覺效果應該只顯示市場區隔及其各自的總銷售額。
+ 每種產業對整個公司獲利的貢獻是多少 (佔總數的百分比)？ 我們希望能夠篩選視覺效果，以顯示一些產業及它們對所顯示產業的總銷售額的貢獻。不過，我們也希望查看各項產業在整個公司總銷售額 (包括篩選掉的產業) 的佔比。
+ 相較於產業平均值，每個類別的總銷售額是多少？ 即使篩選後，產業平均值也應該包含所有類別。
+ 我的客戶如何分組到累積花費範圍？ 我們希望使用分組做為維度，不是指標。

對於更複雜的問題，您可以在 Quick Sight 到達評估設定的特定點之前插入計算或篩選條件。若要直接影響結果，請將計算層級關鍵字新增至資料表計算。如需 Quick Sight 如何評估查詢的詳細資訊，請參閱 [Amazon Quick Sight 中的評估順序](order-of-evaluation-quicksight.md)。

LAC-W 函數支援下列計算等級：
+ **`PRE_FILTER`** – 從分析套用篩選條件之前，Quick Sight 會評估預先篩選條件計算。然後，它會套用這些預先篩選條件計算上設定的任何篩選條件。
+ **`PRE_AGG`** – 在運算顯示層級彙總之前，Quick Sight 會執行預先彙總計算。然後，它會套用這些預先彙總計算上設定的任何篩選條件。這項工作會在套用排名最前與倒數 *N 個* 篩選條件之前發生。

您可以在下列資料表計算函數中使用 `PRE_FILTER` 或 `PRE_AGG` 關鍵字作為參數。指定計算層級時，您會在函數中使用未彙總的量值。例如，您可以使用 `countOver({ORDER ID}, [{Customer ID}], PRE_AGG)`. 使用 `PRE_AGG`，藉以指定在預先彙總層級執行 `countOver`。
+ [avgOver](avgOver-function.md)
+ [countOver](countOver-function.md)
+ [denseRank](denseRank-function.md)
+ [distinctCountOver](distinctCountOver-function.md)
+ [minOver](minOver-function.md)
+ [maxOver](maxOver-function.md)
+ [percentileRank](percentileRank-function.md)
+ [rank](rank-function.md)
+ [stdevOver](stdevOver-function.md)
+ [stdevpOver](stdevpOver-function.md)
+ [sumOver](sumOver-function.md)
+ [varOver](varOver-function.md)
+ [varpOver](varpOver-function.md)

根據預設，每個函數的第一個參數都必須是彙總的量值。如果您使用 `PRE_FILTER` 或 `PRE_AGG`，則第一個參數要使用非彙總的度量。

對於 LAC-W 函數，視覺效果彙總預設為 `MIN` 以消除重複項。若要變更彙總，請開啟欄位的內容功能表 (按一下滑鼠右鍵)，然後選擇不同的彙總。

如需在真實案例使用 LAC-W 函數的時間和方法範例，請參閱大 AWS 數據部落格中的下列文章：[在 Amazon QuickSight 中使用關卡感知彙總建立進階洞見。](https://aws.amazon.com/jp/blogs/big-data/create-advanced-insights-using-level-aware-aggregations-in-amazon-quicksight/)

# Amazon Quick 的計算欄位函數和運算子參考
<a name="calculated-field-reference"></a>

您可以在資料準備期間或從分析頁面，將計算欄位新增至資料集。當您在資料準備期間將計算欄位新增至資料集時，所有使用該資料集的分析都可以使用此計算欄位。當您將計算欄位新增至分析中的資料集時，只有在該分析中才可使用此計算欄位。

您可以使用下列函數與運算子來建立計算欄位，以轉換資料。

**Topics**
+ [

# 運算子
](arithmetic-and-comparison-operators.md)
+ [

# 依類別的函數
](functions-by-category.md)
+ [

# 函數
](functions.md)
+ [

# 彙總函數
](calculated-field-aggregations.md)
+ [

# 資料表計算函數
](table-calculation-functions.md)

# 運算子
<a name="arithmetic-and-comparison-operators"></a>

您可以在計算欄位中使用以下運算子。Quick 使用標準操作順序：括號、指數、乘法、除法、加法、減法 (PEMDAS)。等於 (=) 和不等於 (<>) 比較會區分大小寫。
+ 加法 (\$1)
+ 減法 (-)
+ 乘法 (\$1)
+ 除法 (/)
+ 模數 (%)：另請參閱下列清單中的 `mod()`。
+ 次方 (^)：另請參閱下列清單中的 `exp()`。
+ 等於 (=)
+ 不等於 (<>)
+ 大於 (>)
+ 大於或等於 (>=)
+ 小於 (<)
+ 小於或等於 (<=)
+ AND
+ 或
+ NOT

Amazon Quick 支援將下列數學函數套用至表達式。
+ `[https://docs.aws.amazon.com/quicksight/latest/user/mod-function.html](https://docs.aws.amazon.com/quicksight/latest/user/mod-function.html)(number, divisor)`：會在以除數除以數字後找到餘數。
+ `[https://docs.aws.amazon.com/quicksight/latest/user/log-function.html](https://docs.aws.amazon.com/quicksight/latest/user/log-function.html)(expression) `：會傳回指定表達式之以 10 為底的對數。
+ `[https://docs.aws.amazon.com/quicksight/latest/user/ln-function.html](https://docs.aws.amazon.com/quicksight/latest/user/ln-function.html)(expression) `：會傳回指定表達式的自然對數。
+ `[https://docs.aws.amazon.com/quicksight/latest/user/abs-function.html](https://docs.aws.amazon.com/quicksight/latest/user/abs-function.html)(expression) `：會傳回指定表達式的絕對值。
+ `[https://docs.aws.amazon.com/quicksight/latest/user/sqrt-function.html](https://docs.aws.amazon.com/quicksight/latest/user/sqrt-function.html)(expression) `：會傳回指定表達式的平方根。
+ `[https://docs.aws.amazon.com/quicksight/latest/user/exp-function.html](https://docs.aws.amazon.com/quicksight/latest/user/exp-function.html)(expression) `：會傳回指定表達式之以自然對數為底的 *e* 次方。

若要讓冗長的計算易於閱讀，您可以使用括號來釐清計算中的分組和優先順序。在以下陳述式中，您不需要使用括號。先處理乘法陳述式，然後將結果加上五，傳回值 26。不過，括號會讓陳述式更易於閱讀進而維護。

```
5 + (7 * 3)
```

由於括號是運算中的第一個順序，您可以變更套用其他運算子的順序。例如，在以下陳述式中，會先處理加法陳述式，然後再將結果乘以三，傳回值 36。

```
(5 + 7) * 3
```

## 範例：算術運算子
<a name="operator-example-multiple-operators"></a>

以下範例使用多個算術運算子來判斷折扣後的銷售總計。

```
(Quantity * Amount) - Discount
```

## 範例：(/) 除法
<a name="operator-example-division-operators"></a>

下列範例使用除法將 3 除以 2。傳回 1.5 的值。Amazon Quick 使用浮點分割。

```
3/2
```

## 範例：(=) 等於
<a name="operator-example-equal"></a>

使用 = 來對值執行區分大小寫的比較。結果集會中包含比較為 TRUE 的資料列。

在下列範例中，結果中會包含 `Region` 欄位為 **South** 的資料列。如果 `Region` 為 **south**，則會排除這些資料列。

```
Region = 'South'
```

在下列範例中，比較會評估為 FALSE。

```
Region = 'south'
```

以下範例顯示的比較會將 `Region` 轉換為全大寫 (**SOUTH**)，並將它和 **SOUTH** 比較。這樣會傳回區域為 **south**、**South** 或 **SOUTH** 的資料列。

```
toUpper(Region) = 'SOUTH'
```

## 範例：(<>)
<a name="operator-example-not-equal"></a>

不等於符號 <> 表示小於或大於**。

因此，如果假設 **x<>1**，則我們是指*如果 x 小於 1 或如果 x 大於 1*。< 和 > 會一起評估。換句話說，*如果 x 是 1 以外的任何值*。或是，*x 不等於 1*。

**注意**  
使用 <>，而非 \$1=。

以下範例會將 `Status Code` 與數值比較。這樣會傳回 `Status Code` 不等於 **1** 的資料列。

```
statusCode <> 1
```

以下範例會比較多個 `statusCode` 值。在此情況下，作用中記錄會有 `activeFlag = 1`。此範例會傳回以下其中一項適用的資料列：
+ 針對作用中記錄，顯示狀態不是 1 或 2 的資料列
+ 針對非作用中記錄，顯示狀態為 99 或 -1 的資料列

```
( activeFlag = 1 AND (statusCode <> 1 AND statusCode <> 2) )
OR
( activeFlag = 0 AND (statusCode= 99 OR statusCode= -1) )
```

## 範例：(^)
<a name="operator-example-power"></a>

次方符號 `^` 表示*的次方*。您可以在任何數值欄位使用乘冪運算子，搭配任何有效的指數。

以下範例是 2 的 4 次方或 (2\$1 2\$1 2\$1 2) 的簡單表達式。這會傳回值 16。

```
2^4
```

以下範例會計算收入欄位的平方根。

```
revenue^0.5
```

## 範例：AND、OR 和 NOT
<a name="operator-example-and-or-not"></a>

以下範例使用 AND、OR 和 NOT 來比較多個表達式。它使用條件式運算子來標記某次促銷中不在華盛頓或俄勒岡州的最大客戶，這些客戶的訂單數均超過 10。如果沒有傳回任何值，則會使用值 'n/a'。

```
ifelse(( (NOT (State = 'WA' OR State = 'OR')) AND Orders > 10), 'Special Promotion XYZ', 'n/a')
```

## 範例：建立「在」或「不在」之類的比較清單
<a name="operator-example-in-or-not-in"></a>

此範例使用運算子來建立比較，以尋找存在或不存在於指定值清單中的值。

以下範例會將 `promoCode` 與指定的值清單比較。此範例會傳回 `promoCode` 在清單 **(1, 2, 3)** 中的資料列。

```
promoCode    = 1
OR promoCode = 2
OR promoCode = 3
```

以下範例會將 `promoCode` 與指定的值清單比較。此範例會傳回 `promoCode` 不在清單 **(1, 2, 3)** 中的資料列。

```
NOT(promoCode = 1
OR promoCode  = 2
OR promoCode  = 3
)
```

表達此比較的另一個方式是提供一個清單，其中的 `promoCode` 不等於清單中的任何項目。

```
promoCode     <> 1
AND promoCode <> 2
AND promoCode <> 3
```

## 範例：建立「介於」比較
<a name="operator-example-between"></a>

此範例使用比較運算子來建立比較，顯示存在於一個值和另一個值之間的值。

以下範例會檢查 `OrderDate`，並傳回 `OrderDate` 介於 2016 年的第一天和最後一天之間的資料列。在此情況下，我們要包含第一天和最後一天，因此我們在比較運算子上使用「或等於」。

```
OrderDate >= "1/1/2016" AND OrderDate <= "12/31/2016"
```

# 依類別的函數
<a name="functions-by-category"></a>

在本節中，您可以找到 Amazon Quick 中可用的函數清單，依類別排序。

**Topics**
+ [

## 彙總函數
](#aggregate-functions)
+ [

## 條件函數
](#conditional-functions)
+ [

## 日期函數
](#date-functions)
+ [

## 數值函數
](#numeric-functions)
+ [

## 數學函式
](#mathematical-functions)
+ [

## 字串函數
](#string-functions)
+ [

## 資料表計算
](#table-calculations)

## 彙總函數
<a name="aggregate-functions"></a>

Amazon Quick 中計算欄位的彙總函數包括下列項目。這些項目只能在分析和視覺化期間使用。這些函數會傳回依照所選擇的一或多個維度分組的值。每一種彙總計算另提供了有條件彙總。其將根據條件執行同一類型的彙總。
+ [https://docs.aws.amazon.com/quicksight/latest/user/avg-function.html](https://docs.aws.amazon.com/quicksight/latest/user/avg-function.html) 計算指定度量中一組數字的平均值，依照所選的一個或多個維度分組。
+ [https://docs.aws.amazon.com/quicksight/latest/user/avgIf-function.html](https://docs.aws.amazon.com/quicksight/latest/user/avgIf-function.html) 會根據條件陳述式計算平均值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/count-function.html](https://docs.aws.amazon.com/quicksight/latest/user/count-function.html) 計算維度或度量中的值數目，依照所選的一個或多個維度分組。
+ [https://docs.aws.amazon.com/quicksight/latest/user/countIf-function.html](https://docs.aws.amazon.com/quicksight/latest/user/countIf-function.html) 會根據條件陳述式計算計數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/distinct_count-function.html](https://docs.aws.amazon.com/quicksight/latest/user/distinct_count-function.html) 計算維度或度量中的相異值數目，依照所選的一個或多個維度分組。
+ [https://docs.aws.amazon.com/quicksight/latest/user/distinct_countIf-function.html](https://docs.aws.amazon.com/quicksight/latest/user/distinct_countIf-function.html) 會根據條件陳述式計算相異計數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/max-function.html](https://docs.aws.amazon.com/quicksight/latest/user/max-function.html) 傳回指定度量的最大值，依照所選的一個或多個維度分組。
+ [https://docs.aws.amazon.com/quicksight/latest/user/maxIf-function.html](https://docs.aws.amazon.com/quicksight/latest/user/maxIf-function.html) 會根據條件陳述式計算最大值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/median-function.html](https://docs.aws.amazon.com/quicksight/latest/user/median-function.html) 傳回指定度量的最小值，依照所選的一個或多個維度分組。
+ [https://docs.aws.amazon.com/quicksight/latest/user/medianIf-function.html](https://docs.aws.amazon.com/quicksight/latest/user/medianIf-function.html) 會根據條件陳述式計算中位數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/min-function.html](https://docs.aws.amazon.com/quicksight/latest/user/min-function.html) 傳回指定度量的最小值，依照所選的一個或多個維度分組。
+ [https://docs.aws.amazon.com/quicksight/latest/user/minIf-function.html](https://docs.aws.amazon.com/quicksight/latest/user/minIf-function.html) 會根據條件陳述式計算最小值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/percentile-function.html](https://docs.aws.amazon.com/quicksight/latest/user/percentile-function.html) (`percentileDisc` 的別名) 會運算指定量值 (按所選維度分組) 的第 *n* 百分位數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/percentileCont-function.html](https://docs.aws.amazon.com/quicksight/latest/user/percentileCont-function.html) 會根據指定量值的連續分佈 (按所選維度分組)，計算第 *n* 百分位數。
+ [percentileDisc （百分位數）](https://docs.aws.amazon.com/quicksight/latest/user/percentileDisc-function.html) 會根據指定量值的實際數字計算第 *n* 個百分位數，並依選擇的維度分組。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodToDateAvg-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodToDateAvg-function.html) 會根據指定時間精細程度 (例如一個季度)，計算到某個時間點指定量值中一組數字的平均值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodToDateCount-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodToDateCount-function.html) 會根據指定時間精細程度 (例如一個季度)，計算指定量值中一個維度或量值中的值數量 (計算到某個時間點，包含重複項目)。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodToDateMax-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodToDateMax-function.html) 會根據指定時間精細程度 (例如一個季度)，傳回到某個時間點指定量值的最大值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodToDateMedian-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodToDateMedian-function.html) 會根據指定時間精細程度 (例如一個季度)，傳回到某個時間點指定量值的中位數值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodToDateMin-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodToDateMin-function.html) 會根據指定時間精細程度 (例如一個季度)，傳回到某個時間點指定量值或日期的最小值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodToDatePercentile-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodToDatePercentile-function.html) 會根據指定時間精細程度 (例如一個季度)，基於到某個時間點的實際量值數字，計算百分位數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodToDatePercentileCont-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodToDatePercentileCont-function.html) 會根據指定時間精細程度 (例如一個季度)，基於到某個時間點量值數字的連續分佈，計算百分位數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodToDateStDev-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodToDateStDev-function.html) 會根據指定時間精細程度 (例如一個季度)，計算到某個時間點指定量值中一組數字的標準偏差。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodToDateStDevP-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodToDateStDevP-function.html) 會根據指定時間精細程度 (例如一個季度)，計算到某個時間點指定量值中一組數字的母體標準偏差。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodToDateSum-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodToDateSum-function.html) 會根據指定時間精細程度 (例如一個季度)，加總到某個時間點指定量值中的一組數字。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodToDateVar-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodToDateVar-function.html) 會根據指定時間精細程度 (例如一個季度)，計算到某個時間點指定量值中一組數字的樣本變異數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodToDateVarP-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodToDateVarP-function.html) 會根據指定時間精細程度 (例如一個季度)，計算到某個時間點指定量值中一組數字的母體變異數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/stdev-function.html](https://docs.aws.amazon.com/quicksight/latest/user/stdev-function.html) 會計算指定量值中一組數字的標準偏差，根據範例依照所選的一個或多個維度分組。
+ [https://docs.aws.amazon.com/quicksight/latest/user/stdevIf-function.html](https://docs.aws.amazon.com/quicksight/latest/user/stdevIf-function.html) 會根據條件陳述式計算樣本標準差。
+ [https://docs.aws.amazon.com/quicksight/latest/user/stdevp-function.html](https://docs.aws.amazon.com/quicksight/latest/user/stdevp-function.html) 計算指定度量中一組數字的標準差，根據母體偏差依照所選的一個或多個維度分組。
+ [https://docs.aws.amazon.com/quicksight/latest/user/stdevpIf-function.html](https://docs.aws.amazon.com/quicksight/latest/user/stdevpIf-function.html) 會根據條件陳述式計算母體偏差。
+ [https://docs.aws.amazon.com/quicksight/latest/user/var-function.html](https://docs.aws.amazon.com/quicksight/latest/user/var-function.html) 會計算指定量值中一組數字的差異數，根據範例依照所選的一個或多個維度分組。
+ [https://docs.aws.amazon.com/quicksight/latest/user/varIf-function.html](https://docs.aws.amazon.com/quicksight/latest/user/varIf-function.html) 會根據條件陳述式計算樣本變異數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/varp-function.html](https://docs.aws.amazon.com/quicksight/latest/user/varp-function.html) 會計算指定量值中一組數字的差異，根據母體偏差依照所選的一個或多個維度分組。
+ [https://docs.aws.amazon.com/quicksight/latest/user/varpIf-function.html](https://docs.aws.amazon.com/quicksight/latest/user/varpIf-function.html) 會根據條件陳述式計算母體變異數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/sum-function.html](https://docs.aws.amazon.com/quicksight/latest/user/sum-function.html) 會將指定量值中的一組數字相加，依照所選的一個或多個維度分組。
+ [https://docs.aws.amazon.com/quicksight/latest/user/sumIf-function.html](https://docs.aws.amazon.com/quicksight/latest/user/sumIf-function.html)) 會根據條件陳述式計算總和。

## 條件函數
<a name="conditional-functions"></a>

Amazon Quick 中計算欄位的條件函數包括下列項目：
+ [https://docs.aws.amazon.com/quicksight/latest/user/coalesce-function.html](https://docs.aws.amazon.com/quicksight/latest/user/coalesce-function.html) 會傳回非 Null 的第一個引數的值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/ifelse-function.html](https://docs.aws.amazon.com/quicksight/latest/user/ifelse-function.html) 會評估一組 *if* 和 *then* 表達式對，並傳回第一個評估結果為 true 的 *if* 引數的 *then* 引數值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/in-function.html](https://docs.aws.amazon.com/quicksight/latest/user/in-function.html) 會評估一個表達式是否在指定的值清單中。
+ [https://docs.aws.amazon.com/quicksight/latest/user/isNotNull-function.html](https://docs.aws.amazon.com/quicksight/latest/user/isNotNull-function.html) 會評估表達式來查看它是否非 Null。
+ [https://docs.aws.amazon.com/quicksight/latest/user/isNull-function.html](https://docs.aws.amazon.com/quicksight/latest/user/isNull-function.html) 會評估表達式來查看它是否為 Null。如果表達式為 Null，`isNull` 會傳回 true，否則會傳回 false。
+ [https://docs.aws.amazon.com/quicksight/latest/user/notIn-function.html](https://docs.aws.amazon.com/quicksight/latest/user/notIn-function.html) 會評估一個表達式是否不在指定的值清單中。
+ [https://docs.aws.amazon.com/quicksight/latest/user/nullIf-function.html](https://docs.aws.amazon.com/quicksight/latest/user/nullIf-function.html) 會比較兩個表達式。如果它們相等，則函數會傳回 Null。如果它們值不相等，則函數會傳回第一個表達式。
+ [https://docs.aws.amazon.com/quicksight/latest/user/switch-function.html](https://docs.aws.amazon.com/quicksight/latest/user/switch-function.html) 會傳回與第一個標籤相符且等於條件表達式的表達式。

## 日期函數
<a name="date-functions"></a>

Amazon Quick 中計算欄位的日期函數包括下列項目：
+ [https://docs.aws.amazon.com/quicksight/latest/user/addDateTime-function.html](https://docs.aws.amazon.com/quicksight/latest/user/addDateTime-function.html) 會對提供的日期或時間加上或減去某個單位的時間。
+ [https://docs.aws.amazon.com/quicksight/latest/user/addWorkDays-function.html](https://docs.aws.amazon.com/quicksight/latest/user/addWorkDays-function.html) 會對提供的日期或時間加上或減去指定的工作天數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/dateDiff-function.html](https://docs.aws.amazon.com/quicksight/latest/user/dateDiff-function.html) 會以天為單位，傳回兩個日期欄位之間的差異。
+ [https://docs.aws.amazon.com/quicksight/latest/user/epochDate-function.html](https://docs.aws.amazon.com/quicksight/latest/user/epochDate-function.html) 會將一個 epoch 日期轉換為標準日期。
+ [https://docs.aws.amazon.com/quicksight/latest/user/extract-function.html](https://docs.aws.amazon.com/quicksight/latest/user/extract-function.html) 會傳回日期值的指定部分。
+ [https://docs.aws.amazon.com/quicksight/latest/user/formatDate-function.html](https://docs.aws.amazon.com/quicksight/latest/user/formatDate-function.html) 會使用您指定的模式設定日期格式。
+ [https://docs.aws.amazon.com/quicksight/latest/user/isWorkDay-function.html](https://docs.aws.amazon.com/quicksight/latest/user/isWorkDay-function.html) 會在指定的日期時間值是工作日或營業日時傳回 TRUE。
+ [https://docs.aws.amazon.com/quicksight/latest/user/netWorkDays-function.html](https://docs.aws.amazon.com/quicksight/latest/user/netWorkDays-function.html) 會傳回提供的兩個日期值之間的工作日數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/now-function.html](https://docs.aws.amazon.com/quicksight/latest/user/now-function.html) 會使用資料庫的設定或檔案和 Salesforce 的 UTC 傳回目前的日期和時間。
+ [https://docs.aws.amazon.com/quicksight/latest/user/truncDate-function.html](https://docs.aws.amazon.com/quicksight/latest/user/truncDate-function.html) 會傳回代表日期指定部分的日期值。

## 數值函數
<a name="numeric-functions"></a>

Amazon Quick 中計算欄位的數值函數包括下列項目：
+ [https://docs.aws.amazon.com/quicksight/latest/user/ceil-function.html](https://docs.aws.amazon.com/quicksight/latest/user/ceil-function.html) 會將小數值無條件進位至最接近的整數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/decimalToInt-function.html](https://docs.aws.amazon.com/quicksight/latest/user/decimalToInt-function.html) 會將小數值轉換成整數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/floor-function.html](https://docs.aws.amazon.com/quicksight/latest/user/floor-function.html) 會將小數值遞減至下一個最低的整數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/intToDecimal-function.html](https://docs.aws.amazon.com/quicksight/latest/user/intToDecimal-function.html) 會將整數值轉換成小數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/round-function.html](https://docs.aws.amazon.com/quicksight/latest/user/round-function.html) 會將小數值四捨五入至最接近的整數，或如果有指定比例，則到最接近的小數位數。

## 數學函式
<a name="mathematical-functions"></a>

Amazon Quick 中計算欄位的數學函數包括下列項目：
+ `[https://docs.aws.amazon.com/quicksight/latest/user/mod-function.html](https://docs.aws.amazon.com/quicksight/latest/user/mod-function.html)(number, divisor)`：會在以除數除以數字後找到餘數。
+ `[https://docs.aws.amazon.com/quicksight/latest/user/log-function.html](https://docs.aws.amazon.com/quicksight/latest/user/log-function.html)(expression) `：會傳回指定表達式之以 10 為底的對數。
+ `[https://docs.aws.amazon.com/quicksight/latest/user/ln-function.html](https://docs.aws.amazon.com/quicksight/latest/user/ln-function.html)(expression) `：會傳回指定表達式的自然對數。
+ `[https://docs.aws.amazon.com/quicksight/latest/user/abs-function.html](https://docs.aws.amazon.com/quicksight/latest/user/abs-function.html)(expression) `：會傳回指定表達式的絕對值。
+ `[https://docs.aws.amazon.com/quicksight/latest/user/sqrt-function.html](https://docs.aws.amazon.com/quicksight/latest/user/sqrt-function.html)(expression) `：會傳回指定表達式的平方根。
+ `[https://docs.aws.amazon.com/quicksight/latest/user/exp-function.html](https://docs.aws.amazon.com/quicksight/latest/user/exp-function.html)(expression) `：會傳回指定表達式之以自然對數為底的 *e* 次方。

## 字串函數
<a name="string-functions"></a>

Amazon Quick 中計算欄位的字串 （文字） 函數包括下列項目：
+ [https://docs.aws.amazon.com/quicksight/latest/user/concat-function.html](https://docs.aws.amazon.com/quicksight/latest/user/concat-function.html) 會串連兩或多個字串。
+ [https://docs.aws.amazon.com/quicksight/latest/user/contains-function.html](https://docs.aws.amazon.com/quicksight/latest/user/contains-function.html) 會檢查表達式是否包含某個子字串。
+ [https://docs.aws.amazon.com/quicksight/latest/user/endsWith-function.html](https://docs.aws.amazon.com/quicksight/latest/user/endsWith-function.html) 會檢查表達式是否以指定的子字串結尾。
+ [https://docs.aws.amazon.com/quicksight/latest/user/left-function.html](https://docs.aws.amazon.com/quicksight/latest/user/left-function.html) 會傳回來自某個字串最左邊的指定字元數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/locate-function.html](https://docs.aws.amazon.com/quicksight/latest/user/locate-function.html) 會尋找在另一個字串內的子字串，並傳回子字串之前的字元數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/ltrim-function.html](https://docs.aws.amazon.com/quicksight/latest/user/ltrim-function.html) 會從字串移除前面的空白。
+ [https://docs.aws.amazon.com/quicksight/latest/user/parseDate-function.html](https://docs.aws.amazon.com/quicksight/latest/user/parseDate-function.html) 會剖析字串以判斷它是否包含日期值，並在找到時傳回該日期。
+ [https://docs.aws.amazon.com/quicksight/latest/user/parseDecimal-function.html](https://docs.aws.amazon.com/quicksight/latest/user/parseDecimal-function.html) 會剖析字串以判斷其是否包含小數值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/parseInt-function.html](https://docs.aws.amazon.com/quicksight/latest/user/parseInt-function.html) 會剖析字串以判斷其是否包含整數值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/parseJson-function.html](https://docs.aws.amazon.com/quicksight/latest/user/parseJson-function.html) 會剖析文字欄位中來自原生 JSON 或 JSON 物件的值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/replace-function.html](https://docs.aws.amazon.com/quicksight/latest/user/replace-function.html) 會以新字串取代字串的一部分。
+ [https://docs.aws.amazon.com/quicksight/latest/user/right-function.html](https://docs.aws.amazon.com/quicksight/latest/user/right-function.html) 會傳回來自某個字串最右邊的指定字元數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/rtrim-function.html](https://docs.aws.amazon.com/quicksight/latest/user/rtrim-function.html) 會從字串移除後面的空白。
+ [https://docs.aws.amazon.com/quicksight/latest/user/split-function.html](https://docs.aws.amazon.com/quicksight/latest/user/split-function.html) 會根據您選擇的分隔符號將字串分割成子字串的陣列，並傳回位置指定的項目。
+ [https://docs.aws.amazon.com/quicksight/latest/user/startsWith-function.html](https://docs.aws.amazon.com/quicksight/latest/user/startsWith-function.html) 會檢查表達式是否以指定的子字串開頭。
+ [https://docs.aws.amazon.com/quicksight/latest/user/strlen-function.html](https://docs.aws.amazon.com/quicksight/latest/user/strlen-function.html) 會傳回字串中的字元數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/substring-function.html](https://docs.aws.amazon.com/quicksight/latest/user/substring-function.html) 會傳回字串中指定的位置開始的指定字元數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/toLower-function.html](https://docs.aws.amazon.com/quicksight/latest/user/toLower-function.html) 會將字串設定為全小寫格式。
+ [https://docs.aws.amazon.com/quicksight/latest/user/toString-function.html](https://docs.aws.amazon.com/quicksight/latest/user/toString-function.html) 會將輸入表達式設定為字串格式。
+ [https://docs.aws.amazon.com/quicksight/latest/user/toUpper-function.html](https://docs.aws.amazon.com/quicksight/latest/user/toUpper-function.html) 會將字串設定為全大寫格式。
+ [https://docs.aws.amazon.com/quicksight/latest/user/trim-function.html](https://docs.aws.amazon.com/quicksight/latest/user/trim-function.html) 會從字串同時移除前面和後面的空白。

## 資料表計算
<a name="table-calculations"></a>

資料表計算會形成一組函數，提供分析的內容。它們可為豐富的彙總分析提供支援。使用這些計算，您可以解決常見的業務案例，例如計算總計百分比、執行總和、差異、常見的基準和排名。

要分析特定視覺化效果中的資料時，您可以對目前的資料集套用特定資料表計算，以探索維度如何影響度量 (或彼此影響)。視覺化資料是基於您目前的資料集的結果集，並套用了所有篩選器、欄位選項和自訂。若要查看這個結果集確切為何，可以將視覺效果匯出到一個檔案中。資料表計算函數會對資料執行運算，以顯示欄位之間的關係。

**查詢型函數**
+ [https://docs.aws.amazon.com/quicksight/latest/user/difference-function.html](https://docs.aws.amazon.com/quicksight/latest/user/difference-function.html) 會計算基於一組分割和排序之間的不同度量，以及基於彼此的度量。
+ [https://docs.aws.amazon.com/quicksight/latest/user/lag-function.html](https://docs.aws.amazon.com/quicksight/latest/user/lag-function.html) 會計算度量的滯後 (前面) 值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/lead-function.html](https://docs.aws.amazon.com/quicksight/latest/user/lead-function.html) 會計算度量的前導 (後面) 值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/percentDifference-function.html](https://docs.aws.amazon.com/quicksight/latest/user/percentDifference-function.html) 會計算目前值和比較值之間的百分比差異。

**分佈函數**
+ [https://docs.aws.amazon.com/quicksight/latest/user/avgOver-function.html](https://docs.aws.amazon.com/quicksight/latest/user/avgOver-function.html) 會計算一或多個維度的度量平均值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/countOver-function.html](https://docs.aws.amazon.com/quicksight/latest/user/countOver-function.html) 會計算一或多個維度的欄位計數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/distinctCountOver-function.html](https://docs.aws.amazon.com/quicksight/latest/user/distinctCountOver-function.html) 會計算由指定的屬性在指定級別分割的相異運算元的計數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/maxOver-function.html](https://docs.aws.amazon.com/quicksight/latest/user/maxOver-function.html) 會計算一或多個維度的度量最大值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/minOver-function.html](https://docs.aws.amazon.com/quicksight/latest/user/minOver-function.html) 一或多個維度的度量最小值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/percentileOver-function.html](https://docs.aws.amazon.com/quicksight/latest/user/percentileOver-function.html) (`percentileDiscOver` 的別名) 會計算依維度清單分割之量值的第 *n* 百分位數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/percentileContOver-function.html](https://docs.aws.amazon.com/quicksight/latest/user/percentileContOver-function.html) 會根據依維度清單分割之量值的數值連續分佈，計算第 *n* 百分位數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/percentileDiscOver-function.html](https://docs.aws.amazon.com/quicksight/latest/user/percentileDiscOver-function.html) 會根據依維度清單分割之量值的實際數值，計算第 *n* 百分位數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/percentOfTotal-function.html](https://docs.aws.amazon.com/quicksight/latest/user/percentOfTotal-function.html) 會計算量值對總計所佔的百分比。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodOverPeriodDifference-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodOverPeriodDifference-function.html) 會計算由週期精細程度和偏移量指定的兩個不同期間內的量值差異。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodOverPeriodLastValue-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodOverPeriodLastValue-function.html) 會根據期間精細程度和偏移量指定的前一個期間，計算量值的最後一個 (前一個) 值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodOverPeriodPercentDifference-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodOverPeriodPercentDifference-function.html) 會計算由週期精細程度和偏移量指定的兩個不同期間內的量值差異百分比。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodToDateAvgOverTime-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodToDateAvgOverTime-function.html) 根據指定時間精細程度 (例如一個季度)，計算到某個時間點某個量值的平均值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodToDateCountOverTime-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodToDateCountOverTime-function.html) 根據指定時間精細程度 (例如一個季度)，計算到某個時間點某個維度或量值的計數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodToDateMaxOverTime-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodToDateMaxOverTime-function.html) 根據指定時間精細程度 (例如一個季度)，計算到某個時間點某個量值或日期的最大值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodToDateMinOverTime-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodToDateMinOverTime-function.html) 根據指定時間精細程度 (例如一個季度)，計算到某個時間點某個量值或日期的最小值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/periodToDateSumOverTime-function.html](https://docs.aws.amazon.com/quicksight/latest/user/periodToDateSumOverTime-function.html) 根據指定時間精細程度 (例如一個季度)，計算到某個時間點某個量值的總和。
+ [https://docs.aws.amazon.com/quicksight/latest/user/sumOver-function.html](https://docs.aws.amazon.com/quicksight/latest/user/sumOver-function.html) 會計算一或多個維度的度量總和。
+ [https://docs.aws.amazon.com/quicksight/latest/user/stdevOver-function.html](https://docs.aws.amazon.com/quicksight/latest/user/stdevOver-function.html) 計算指定度量中的標準差，根據範例依照所選的一個或多個屬性區分。
+ [https://docs.aws.amazon.com/quicksight/latest/user/stdevpOver-function.html](https://docs.aws.amazon.com/quicksight/latest/user/stdevpOver-function.html) 計算指定度量中的標準差，根據母體偏差依照所選的一個或多個屬性區分。
+ [https://docs.aws.amazon.com/quicksight/latest/user/varOver-function.html](https://docs.aws.amazon.com/quicksight/latest/user/varOver-function.html) 計算指定度量中的差異，根據範例依照所選的一個或多個屬性區分。
+ [https://docs.aws.amazon.com/quicksight/latest/user/varpOver-function.html](https://docs.aws.amazon.com/quicksight/latest/user/varpOver-function.html) 計算指定度量中的差異，根據母體偏差依照所選的一個或多個屬性區分。

**排名函數**
+ [https://docs.aws.amazon.com/quicksight/latest/user/rank-function.html](https://docs.aws.amazon.com/quicksight/latest/user/rank-function.html) 會計算度量或維度的排名。
+ [https://docs.aws.amazon.com/quicksight/latest/user/denseRank-function.html](https://docs.aws.amazon.com/quicksight/latest/user/denseRank-function.html) 會計算度量或維度的排名，忽略重複項目。
+ [https://docs.aws.amazon.com/quicksight/latest/user/percentileRank-function.html](https://docs.aws.amazon.com/quicksight/latest/user/percentileRank-function.html) 會計算度量或維度的排名，根據重複項目。

**移動函數**
+ [https://docs.aws.amazon.com/quicksight/latest/user/runningAvg-function.html](https://docs.aws.amazon.com/quicksight/latest/user/runningAvg-function.html) 會計算度量的執行中平均值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/runningCount-function.html](https://docs.aws.amazon.com/quicksight/latest/user/runningCount-function.html) 會計算度量的執行中計數。
+ [https://docs.aws.amazon.com/quicksight/latest/user/runningMax-function.html](https://docs.aws.amazon.com/quicksight/latest/user/runningMax-function.html) 會計算度量的執行中最大值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/runningMin-function.html](https://docs.aws.amazon.com/quicksight/latest/user/runningMin-function.html) 會計算度量的執行中最小值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/runningSum-function.html](https://docs.aws.amazon.com/quicksight/latest/user/runningSum-function.html) 會計算度量的執行中總和。

**視窗函數**
+ [https://docs.aws.amazon.com/quicksight/latest/user/firstValue-function.html](https://docs.aws.amazon.com/quicksight/latest/user/firstValue-function.html) 會計算依指定屬性分割和排序的彙總量值或維度的第一個值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/lastValue-function.html](https://docs.aws.amazon.com/quicksight/latest/user/lastValue-function.html) 會計算依指定屬性分割和排序的彙總量值或維度的最後一個值。
+ [https://docs.aws.amazon.com/quicksight/latest/user/windowAvg-function.html](https://docs.aws.amazon.com/quicksight/latest/user/windowAvg-function.html) 計算在自訂時段中彙總的度量的平均值，該時段依指定的屬性分割和排序。
+ [https://docs.aws.amazon.com/quicksight/latest/user/windowCount-function.html](https://docs.aws.amazon.com/quicksight/latest/user/windowCount-function.html) 計算在自訂時段中彙總的度量的計數，該時段依指定的屬性分割和排序。
+ [https://docs.aws.amazon.com/quicksight/latest/user/windowMax-function.html](https://docs.aws.amazon.com/quicksight/latest/user/windowMax-function.html) 計算在自訂時段中彙總的度量的最大值，該時段依指定的屬性分割和排序。
+ [https://docs.aws.amazon.com/quicksight/latest/user/windowMin-function.html](https://docs.aws.amazon.com/quicksight/latest/user/windowMin-function.html) 計算在自訂時段中彙總的度量的最小值，該時段依定的屬性分割和排序。
+ [https://docs.aws.amazon.com/quicksight/latest/user/windowSum-function.html](https://docs.aws.amazon.com/quicksight/latest/user/windowSum-function.html) 計算在自訂時段中彙總的度量的總和，該時段依指定的屬性分割和排序。

# 函數
<a name="functions"></a>

在本節中，您可以找到 Amazon Quick 中可用的函數清單。若要檢視依類別排序的函數清單，並具有簡短定義，請參閱[依類別排序的函數](https://docs.aws.amazon.com/quicksight/latest/user/functions-by-category.html)。

**Topics**
+ [

# addDateTime
](addDateTime-function.md)
+ [

# addWorkDays
](addWorkDays-function.md)
+ [

# Abs
](abs-function.md)
+ [

# Ceil
](ceil-function.md)
+ [

# Coalesce
](coalesce-function.md)
+ [

# Concat
](concat-function.md)
+ [

# contains
](contains-function.md)
+ [

# decimalToInt
](decimalToInt-function.md)
+ [

# dateDiff
](dateDiff-function.md)
+ [

# endsWith
](endsWith-function.md)
+ [

# epochDate
](epochDate-function.md)
+ [

# Exp
](exp-function.md)
+ [

# Extract
](extract-function.md)
+ [

# Floor
](floor-function.md)
+ [

# formatDate
](formatDate-function.md)
+ [

# Ifelse
](ifelse-function.md)
+ [

# in
](in-function.md)
+ [

# intToDecimal
](intToDecimal-function.md)
+ [

# isNotNull
](isNotNull-function.md)
+ [

# isNull
](isNull-function.md)
+ [

# isWorkDay
](isWorkDay-function.md)
+ [

# Left
](left-function.md)
+ [

# Locate
](locate-function.md)
+ [

# Log
](log-function.md)
+ [

# Ln
](ln-function.md)
+ [

# Ltrim
](ltrim-function.md)
+ [

# Mod
](mod-function.md)
+ [

# netWorkDays
](netWorkDays-function.md)
+ [

# Now
](now-function.md)
+ [

# notIn
](notIn-function.md)
+ [

# nullIf
](nullIf-function.md)
+ [

# parseDate
](parseDate-function.md)
+ [

# parseDecimal
](parseDecimal-function.md)
+ [

# parseInt
](parseInt-function.md)
+ [

# parseJson
](parseJson-function.md)
+ [

# Replace
](replace-function.md)
+ [

# Right
](right-function.md)
+ [

# Round
](round-function.md)
+ [

# Rtrim
](rtrim-function.md)
+ [

# Split
](split-function.md)
+ [

# Sqrt
](sqrt-function.md)
+ [

# startsWith
](startsWith-function.md)
+ [

# Strlen
](strlen-function.md)
+ [

# Substring
](substring-function.md)
+ [

# switch
](switch-function.md)
+ [

# toLower
](toLower-function.md)
+ [

# toString
](toString-function.md)
+ [

# toUpper
](toUpper-function.md)
+ [

# trim
](trim-function.md)
+ [

# truncDate
](truncDate-function.md)

# addDateTime
<a name="addDateTime-function"></a>

`addDateTime` 會從日期時間值加上或減去某個單位的時間。例如，`addDateTime(2,'YYYY',parseDate('02-JUL-2018', 'dd-MMM-yyyy') )` 傳回 `02-JUL-2020`。您可以使用此函數對您的日期和時間資料執行日期數學。

## 語法
<a name="addDateTime-function-syntax"></a>

```
addDateTime(amount, period, datetime)
```

## 引數
<a name="addDateTime-function-arguments"></a>

 *amount*   
正數或負整數值，代表您要從提供的日期時間欄位加上或減去的時間量。

 *period*   
正數或負數值，代表您要從提供的日期時間欄位加上或減去的時間量。有效的期間如下：  
+ YYYY：這會傳回日期的年份部分。
+ Q：這會傳回日期所屬的季別 (1–4)。
+ MM：這會傳回日期的月份部分。
+ DD：這會傳回日期的日部分。
+ WK：這會傳回日期的週部分。本週從 Amazon Quick 的星期日開始。
+ HH：這會傳回日期的小時部分。
+ MI：這會傳回日期的分鐘部分。
+ SS：這會傳回日期的秒部分。
+ MS：這會傳回日期的毫秒部分。

 *datetime*   
您想要執行日期數學的日期或時間。

## 傳回類型
<a name="addDateTime-function-return-type"></a>

日期時間

## 範例
<a name="addDateTime-function-example"></a>

假設您有一個名為 `purchase_date` 的欄位，它有以下值。

```
2018 May 13 13:24
2017 Jan 31 23:06
2016 Dec 28 06:45
```

使用以下計算，`addDateTime` 會如下所示修改值。

```
addDateTime(-2, 'YYYY', purchaseDate)

2016 May 13 13:24
2015 Jan 31 23:06
2014 Dec 28 06:45


addDateTime(4, 'DD', purchaseDate)

2018 May 17 13:24
2017 Feb 4 23:06
2017 Jan 1 06:45


addDateTime(20, 'MI', purchaseDate)

2018 May 13 13:44
2017 Jan 31 23:26
2016 Dec 28 07:05
```

# addWorkDays
<a name="addWorkDays-function"></a>

`addWorkDays` 會在指定日期值上加上或減去指定的工作天數。此函數傳回工作日的日期，該日期位於指定輸入日期值之後或之前的指定工作日天數。

## 語法
<a name="addWorkDays-function-syntax"></a>

```
addWorkDays(initDate, numWorkDays)
```

## 引數
<a name="addWorkDays-function-arguments"></a>

*initDate*  
充當計算開始日期的有效非 NULL 日期。  
+ **資料集欄位**：您要在其中新增此函數的資料集中的任何 `date` 欄位。
+ **日期函數**：從另一個 `date` 函數輸出的任何日期，例如 `parseDate`、`epochDate`、`addDateTime` 等。  
**Example**  

  ```
  addWorkDays(epochDate(1659484800), numWorkDays)
  ```
+ **計算欄位** – 傳回`date`值的任何快速計算欄位。  
**Example**  

  ```
  calcFieldStartDate = addDateTime(10, “DD”, startDate)
  addWorkDays(calcFieldStartDate, numWorkDays)
  ```
+ **參數** – 任何快速`datetime`參數。  
**Example**  

  ```
  addWorkDays($paramStartDate, numWorkDays)
  ```
+ 上述引數值的任意組合。

 *numWorkDays*   
充當計算結束日期的非 NULL 整數。  
+ **常值**：直接在表達式編輯器中鍵入的整數常值。  
**Example**  

  ```
  ```
+ **資料集欄位**：資料集中的任何日期欄位   
**Example**  

  ```
  ```
+ **純量函數或計算** – 從另一個函數傳回整數輸出的任何純量快速函數，例如 `decimalToInt`、 `abs`等。  
**Example**  

  ```
  addWorkDays(initDate, decimalToInt(sqrt (abs(numWorkDays)) ) )
  ```
+ **計算欄位** – 傳回`date`值的任何快速計算欄位。  
**Example**  

  ```
  someOtherIntegerCalcField = (num_days * 2) + 12
  addWorkDays(initDate, someOtherIntegerCalcField)
  ```
+ **參數** – 任何快速`datetime`參數。  
**Example**  

  ```
  addWorkDays(initDate, $param_numWorkDays)
  ```
+ 上述引數值的任意組合。

## 傳回類型
<a name="addWorkDays-function-return-type"></a>

Integer 

## 輸出值
<a name="addWorkDays-function-output-type"></a>

預期輸出值包括：
+ 正整數 (當 start\$1date < end\$1date 時)
+ 負整數 (當 start\$1date > end\$1date 時)
+ 當一個或兩個引數從 `dataset field` 取得 null 值時為 NULL。

## 輸入錯誤
<a name="addWorkDays-function-errors"></a>

不允許的引數值會導致錯誤，如以下範例所示。
+ 不允許在表達式中使用常值 NULL 作為引數。  
**Example**  

  ```
  addWorkDays(NULL, numWorkDays) 
  ```  
**Example**  

  ```
  Error
  At least one of the arguments in this function does not have correct type. 
  Correct the expression and choose Create again.
  ```
+ 不允許在表達式中使用字串常值作為引數，或使用日期以外的任何其他資料類型。在下面的範例中，字串 **"2022-08-10"** 看似日期，但它實際上是一個字串。若要使用它，您必須使用可將其轉換為日期資料類型的函數。  
**Example**  

  ```
  addWorkDays("2022-08-10", 10)
  ```  
**Example**  

  ```
  Error
  Expression addWorkDays("2022-08-10", numWorkDays) for function addWorkDays has 
  incorrect argument type addWorkDays(String, Number). 
  Function syntax expects Date, Integer.
  ```

## 範例
<a name="addWorkDays-function-example"></a>

將正整數作為 `numWorkDays` 引數將產生相對於輸入日期未來的日期。將負整數作為 `numWorkDays` 引數將產生相對於輸入日期過去的日期。`numWorkDays` 引數的值為零時會產生與輸入日期相同的值，無論該日期是工作日還是週末。

`addWorkDays` 函數的運作精細程度為：`DAY`。在低於或高於 `DAY` 精細程度的任何精細程度下都無法保持準確性。

```
addWorkDays(startDate, endDate)
```

假設有一個名為 `employmentStartDate` 的欄位，其值如下：

```
2022-08-10 2022-08-06 2022-08-07 
```

使用上述欄位和以下計算，`addWorkDays` 傳回的修改後的值如下所示：

```
addWorkDays(employmentStartDate, 7)

2022-08-19 
2022-08-16 
2022-08-16 

addWorkDays(employmentStartDate, -5)

2022-08-02 
2022-08-01 
2022-08-03 

addWorkDays(employmentStartDate, 0)

2022-08-10 
2022-08-06 
2022-08-07
```

以下範例根據每位員工實際工作天數，計算 2 年內按比例支付給每位員工的獎金總額。

```
last_day_of_work = addWorkDays(employment_start_date, 730)
total_days_worked = netWorkDays(employment_start_date, last_day_of_work)
total_bonus = total_days_worked * bonus_per_day
```

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/addWorkDays-function-example.png)


# Abs
<a name="abs-function"></a>

`abs` 會傳回指定運算式的絕對值。

## 語法
<a name="abs-function-syntax"></a>

```
abs(expression)
```

## 引數
<a name="abs-function-arguments"></a>

 *表達式*   
表達式必須是數字。它可以是欄位名稱、常值或另一個函數。

# Ceil
<a name="ceil-function"></a>

`ceil` 會將小數值無條件進位至最接近的整數。例如，`ceil(29.02)` 傳回 `30`。

## 語法
<a name="ceil-function-syntax"></a>

```
ceil(decimal)
```

## 引數
<a name="ceil-function-arguments"></a>

 *decimal*   
使用小數資料類型的欄位、**17.62** 之類的常值，或對輸出小數的另一個函數的呼叫。

## 傳回類型
<a name="ceil-function-return-type"></a>

Integer

## 範例
<a name="ceil-function-example"></a>

以下範例會將小數欄位四捨五入到下一個最高整數。

```
ceil(salesAmount)
```

以下是指定欄位的值。

```
20.13
892.03
57.54
```

對於這些欄位值，會傳回以下值。

```
21
893
58
```

# Coalesce
<a name="coalesce-function"></a>

`coalesce` 會傳回非 Null 的第一個引數的值。找到非 Null 值時，就不會評估清單中剩餘的引數。如果所有引數都是 Null，則結果為 Null。長度為 0 的字串為有效值，不會將它視為等同於 Null。

## 語法
<a name="coalesce-function-syntax"></a>

```
coalesce(expression1, expression2 [, expression3, ...])
```

## 引數
<a name="coalesce-function-arguments"></a>

`coalesce` 需要兩個或多個表達式做為引數。所有表達式必須擁有相同資料類型，或可以是隱含轉換為相同資料類型。

 *表達式*   
表達式可以是數字、日期時間或字串。它可以是欄位名稱、常值或另一個函數。

## 傳回類型
<a name="coalesce-function-return-type"></a>

`coalesce` 會傳回與輸入引數相同資料類型的值。

## 範例
<a name="coalesce-function-example"></a>

以下範例會擷取客戶的帳單地址 (如果存在)、其街道地址 (如果沒有帳單地址)，或如果前述兩個地址不存在，則傳回「地址列未列出」。

```
coalesce(billingAddress, streetAddress, 'No address listed')
```

# Concat
<a name="concat-function"></a>

`concat` 會串連兩或多個字串。

## 語法
<a name="concat-function-syntax"></a>

```
concat(expression1, expression2 [, expression3 ...])
```

## 引數
<a name="concat-function-arguments"></a>

`concat` 需要兩個或多個字串表達式為做為引數。

 *表達式*   
表達式必須是字串。它可以是使用字串資料類型的欄位、**'12 Main Street'** 之類的常值，或對輸出字串的另一個函數的呼叫。

## 傳回類型
<a name="concat-function-return-type"></a>

String

## 範例
<a name="concat-function-example"></a>

以下範例會串連三個字串欄位，並新增適當的空隔。

```
concat(salutation, ' ', firstName, ' ', lastName)
```

以下是指定欄位的值。

```
salutation     firstName          lastName
-------------------------------------------------------
Ms.            Li                  Juan
Dr.            Ana Carolina        Silva
Mr.            Nikhil              Jayashankar
```

對於這些欄位值，會傳回以下值。

```
Ms. Li Juan
Dr. Ana Carolina Silva
Mr. Nikhil Jayashankar
```

下列範例會串連兩個字串常值。

```
concat('Hello', 'world')
```

會傳回下列值。

```
Helloworld
```

# contains
<a name="contains-function"></a>

`contains` 會評估您指定的子字串是否存在於某個表達式中。如果相應表達式包含該子字串，contains 會傳回 true，否則會傳回 false。

## 語法
<a name="contains-function-syntax"></a>

```
contains(expression, substring, string-comparison-mode)
```

## 引數
<a name="contains-function-arguments"></a>

 *表達式*   
表達式必須是字串。它可以是使用字串資料類型的欄位、**'12 Main Street'** 之類的常值，或對輸出字串的另一個函數的呼叫。

 *substring*   
要針對表達式**檢查的字元集。該子字串在表達式**中可能出現一或多次。

 字串比較模式**   
(選用) 指定要使用的字串比較模式：  
+ `CASE_SENSITIVE`：字串比較區分大小寫。
+ `CASE_INSENSITIVE`：字串比較不區分大小寫。
空白時此值會預設為 `CASE_SENSITIVE`。

## 傳回類型
<a name="contains-function-return-type"></a>

Boolean

## 範例
<a name="contains-function-example"></a>

### 預設區分大小寫的範例
<a name="contains-function-example-default-case-sensitive"></a>

以下區分大小寫的範例評估 `state_nm` 是否包含 **New**。

```
contains(state_nm, "New")
```

以下是指定欄位的值。

```
New York
new york
```

對於這些欄位值，會傳回以下值。

```
true
false
```

### 不區分大小寫的範例
<a name="contains-function-example-case-insensitive"></a>

以下不區分大小寫的範例評估 `state_nm` 是否包含 **new**。

```
contains(state_nm, "new", CASE_INSENSITIVE)
```

以下是指定欄位的值。

```
New York
new york
```

對於這些欄位值，會傳回以下值。

```
true
true
```

### 條件陳述式範例
<a name="contains-function-example-conditional-statements"></a>

contains 函數可用作以下 If 函數中的條件陳述式：[avgIf](https://docs.aws.amazon.com/quicksight/latest/user/avgIf-function.html)、[minIf](https://docs.aws.amazon.com/quicksight/latest/user/minIf-function.html)、[distinct\$1countIf](https://docs.aws.amazon.com/quicksight/latest/user/distinct_countIf-function.html)、[countIf](https://docs.aws.amazon.com/quicksight/latest/user/countIf-function.html)、[maxIf](https://docs.aws.amazon.com/quicksight/latest/user/maxIf-function.html)、[medianIf](https://docs.aws.amazon.com/quicksight/latest/user/medianIf-function.html)、[stdevIf](https://docs.aws.amazon.com/quicksight/latest/user/stdevIf-function.html)、[stdevpIf](https://docs.aws.amazon.com/quicksight/latest/user/stdevpIf-function.html)、[sumIf](https://docs.aws.amazon.com/quicksight/latest/user/sumIf-function.html)、[varIf](https://docs.aws.amazon.com/quicksight/latest/user/varIf-function.html) 和 [varpIf](https://docs.aws.amazon.com/quicksight/latest/user/varpIf-function.html)。

以下範例僅當 `state_nm` 包含 **New** 時才對 `Sales` 求和。

```
sumIf(Sales,contains(state_nm, "New"))
```

### 不包含範例
<a name="contains-function-example-does-not-contain"></a>

條件 `NOT` 運算子可用來評估表達式是否不包含指定的子字串。

```
NOT(contains(state_nm, "New"))
```

### 使用數值的範例
<a name="contains-function-example-numeric-values"></a>

透過套用 `toString` 函數，可以在表達式或子字串引數中使用數值。

```
contains(state_nm, toString(5) )
```

# decimalToInt
<a name="decimalToInt-function"></a>

`decimalToInt` 會藉由去除小數點和所有後方數字，將小數值轉換成整數資料類型。`decimalToInt` 不會四捨五入。例如，`decimalToInt(29.99)` 傳回 `29`。

## 語法
<a name="decimalToInt-function-syntax"></a>

```
decimalToInt(decimal)
```

## 引數
<a name="decimalToInt-function-arguments"></a>

 *decimal*   
使用小數資料類型的欄位、**17.62** 之類的常值，或對輸出小數的另一個函數的呼叫。

## 傳回類型
<a name="decimalToInt-function-return-type"></a>

Integer

## 範例
<a name="decimalToInt-function-example"></a>

以下範例會將小數欄位轉換為整數。

```
decimalToInt(salesAmount)
```

以下是指定欄位的值。

```
 20.13
892.03
 57.54
```

對於這些欄位值，會傳回以下值。

```
 20
892
 57
```

# dateDiff
<a name="dateDiff-function"></a>

`dateDiff` 會以天為單位，傳回兩個日期欄位之間的差異。如果您包含的值為一段期間，`dateDiff` 傳回的差異則以期間間隔為單位，而非以天為單位。

## 語法
<a name="dateDiff-function-syntax"></a>

```
dateDiff(date1, date2,[period])
```

## 引數
<a name="dateDiff-function-arguments"></a>

`dateDiff` 需要兩個日期做為引數。指定期間為選用。

 *date 1*   
第一個日期比較。日期欄位或對輸出日期的另一個函數的呼叫。

 *date 2*   
第二個日期比較。日期欄位或對輸出日期的另一個函數的呼叫。

 *period*   
您想要傳回差異的期間，將其括在引號中。有效的期間如下：  
+ YYYY：這會傳回日期的年份部分。
+ Q：這會傳回日期所屬的季別第一天的日期。
+ MM：這會傳回日期的月份部分。
+ DD：這會傳回日期的日部分。
+ WK：這會傳回日期的週部分。本週從 Amazon Quick 的星期日開始。
+ HH：這會傳回日期的小時部分。
+ MI：這會傳回日期的分鐘部分。
+ SS：這會傳回日期的秒部分。
+ MS：這會傳回日期的毫秒部分。

## 傳回類型
<a name="dateDiff-function-return-type"></a>

Integer

## 範例
<a name="dateDiff-function-example"></a>

以下範例會傳回兩個日期之間的差異。

```
dateDiff(orderDate, shipDate, "MM")
```

以下是指定欄位的值。

```
orderDate          shipdate
=============================
01/01/18            03/05/18
09/13/17            10/20/17
```

對於這些欄位值，會傳回以下值。

```
2
1
```

# endsWith
<a name="endsWith-function"></a>

`endsWith` 會評估表達式是否以您指定的子字串結尾。如果表達式以相應子字符串結束，則 `endsWith` 會返回 true，否則會返回 false。

## 語法
<a name="endsWith-function-syntax"></a>

```
endsWith(expression, substring, string-comparison-mode)
```

## 引數
<a name="endsWith-function-arguments"></a>

 *表達式*   
表達式必須是字串。它可以是使用字串資料類型的欄位、**'12 Main Street'** 之類的常值，或對輸出字串的另一個函數的呼叫。

 *substring*   
要針對表達式**檢查的字元集。該子字串在表達式**中可能出現一或多次。

 字串比較模式**   
(選用) 指定要使用的字串比較模式：  
+ `CASE_SENSITIVE`：字串比較區分大小寫。
+ `CASE_INSENSITIVE`：字串比較不區分大小寫。
空白時此值會預設為 `CASE_SENSITIVE`。

## 傳回類型
<a name="endsWith-function-return-type"></a>

Boolean

## 範例
<a name="endsWith-function-example"></a>

### 預設區分大小寫的範例
<a name="endsWith-function-example-default-case-sensitive"></a>

以下區分大小寫的範例評估 `state_nm` 是否以 **"York"** 結尾。

```
endsWith(state_nm, "York")
```

以下是指定欄位的值。

```
New York
new york
```

對於這些欄位值，會傳回以下值。

```
true
false
```

### 不區分大小寫的範例
<a name="endsWith-function-example-case-insensitive"></a>

以下不區分大小寫的範例評估 `state_nm` 是否以 **"york"** 結尾。

```
endsWith(state_nm, "york", CASE_INSENSITIVE)
```

以下是指定欄位的值。

```
New York
new york
```

對於這些欄位值，會傳回以下值。

```
true
true
```

### 條件陳述式範例
<a name="endsWith-function-example-conditional-statements"></a>

`endsWith` 函數可用作以下 If 函數中的條件陳述式：[avgIf](https://docs.aws.amazon.com/quicksight/latest/user/avgIf-function.html)、[minIf](https://docs.aws.amazon.com/quicksight/latest/user/minIf-function.html)、[distinct\$1countIf](https://docs.aws.amazon.com/quicksight/latest/user/distinct_countIf-function.html)、[countIf](https://docs.aws.amazon.com/quicksight/latest/user/countIf-function.html)、[maxIf](https://docs.aws.amazon.com/quicksight/latest/user/maxIf-function.html)、[medianIf](https://docs.aws.amazon.com/quicksight/latest/user/medianIf-function.html)、[stdevIf](https://docs.aws.amazon.com/quicksight/latest/user/stdevIf-function.html)、[stdevpIf](https://docs.aws.amazon.com/quicksight/latest/user/stdevpIf-function.html)、[sumIf](https://docs.aws.amazon.com/quicksight/latest/user/sumIf-function.html)、[varIf](https://docs.aws.amazon.com/quicksight/latest/user/varIf-function.html) 和 [varpIf](https://docs.aws.amazon.com/quicksight/latest/user/varpIf-function.html)。

以下範例僅當 `state_nm` 以 **"York"** 結尾時才對 `Sales` 求和。

```
sumIf(Sales,endsWith(state_nm, "York"))
```

### 不包含範例
<a name="endsWith-function-example-does-not-start-with"></a>

條件 `NOT` 運算子可用來評估表達式是否以指定的子字串開頭。

```
NOT(endsWith(state_nm, "York"))
```

### 使用數值的範例
<a name="endsWith-function-example-numeric-values"></a>

透過套用 `toString` 函數，可以在表達式或子字串引數中使用數值。

```
endsWith(state_nm, toString(5) )
```

# epochDate
<a name="epochDate-function"></a>

`epochDate` 會將 epoch 日期轉換為格式為 yyyy-MM-dd**T**kk:mm:ss.SSS**Z** 的標準日期，使用 Joda 專案文件[類別 DateTimeFormat](http://www.joda.org/joda-time/apidocs/org/joda/time/format/DateTimeFormat.html) 中指定的格式模式語法。例如，`2015-10-15T19:11:51.003Z`。

`epochDate` 支援與根據存放在 Quick () 中的資料集進行分析搭配使用SPICE。

## 語法
<a name="epochDate-function-syntax"></a>

```
epochDate(epochdate)
```

## 引數
<a name="epochDate-function-arguments"></a>

 *epochdate*   
epoch 日期，是日期的整數表示，即自 1970 年 1 月 1 日 00:00:00 UTC 起的秒數。  
*epochdate* 必須為整數。它可以是使用整數資料類型的欄位、常值整數值，或對輸出整數的另一個函數的呼叫。如果整數值超過 10 位數字，則會捨棄第 10 位數之後的數字。

## 傳回類型
<a name="epochDate-function-return-type"></a>

Date

## 範例
<a name="epochDate-function-example"></a>

以下範例會將 epoch 日期轉換為標準日期。

```
epochDate(3100768000)
```

會傳回下列值。

```
2068-04-04T12:26:40.000Z
```

# Exp
<a name="exp-function"></a>

`exp` 會傳回指定運算式之以自然對數為底的 e 次方。

## 語法
<a name="exp-function-syntax"></a>

```
exp(expression)
```

## 引數
<a name="exp-function-arguments"></a>

 *表達式*   
表達式必須是數字。它可以是欄位名稱、常值或另一個函數。

# Extract
<a name="extract-function"></a>

`extract` 會傳回日期值的指定部分。請求未包含時間資訊的日期的時間相關部分會傳回 0。

## 語法
<a name="extract-function-syntax"></a>

```
extract(period, date)
```

## 引數
<a name="extract-function-arguments"></a>

 *period*   
您要從日期值擷取的期間。有效的期間如下：  
+ YYYY：這會傳回日期的年份部分。
+ Q：這會傳回日期所屬的季別 (1–4)。
+ MM：這會傳回日期的月份部分。
+ DD：這會傳回日期的日部分。
+ WD：這會以整數形式傳回當週的星期幾，星期日為 1。
+ HH：這會傳回日期的小時部分。
+ MI：這會傳回日期的分鐘部分。
+ SS：這會傳回日期的秒部分。
+ MS：這會傳回日期的毫秒部分。
**注意**  
Presto 0.216 以下版本的資料庫不支援擷取毫秒。

 *date*   
日期欄位或對輸出日期的另一個函數的呼叫。

## 傳回類型
<a name="extract-function-return-type"></a>

Integer

## 範例
<a name="extract-function-example"></a>

以下範例會從日期值擷取日。

```
extract('DD', orderDate)
```

以下是指定欄位的值。

```
orderDate
=========
01/01/14  
09/13/16
```

對於這些欄位值，會傳回以下值。

```
01
13
```

# Floor
<a name="floor-function"></a>

`floor` 會將小數值遞減至下一個最低的整數。例如，`floor(29.08)` 傳回 `29`。

## 語法
<a name="floor-function-syntax"></a>

```
floor(decimal)
```

## 引數
<a name="floor-function-arguments"></a>

 *decimal*   
使用小數資料類型的欄位、**17.62** 之類的常值，或對輸出小數的另一個函數的呼叫。

## 傳回類型
<a name="floor-function-return-type"></a>

Integer

## 範例
<a name="floor-function-example"></a>

以下範例會將小數欄位遞減至下一個最低整數。

```
floor(salesAmount)
```

以下是指定欄位的值。

```
20.13
892.03
57.54
```

對於這些欄位值，會傳回以下值。

```
20
892
57
```

# formatDate
<a name="formatDate-function"></a>

`formatDate` 會使用您指定的模式設定日期格式。在您準備資料時，您可以使用 `formatDate` 來重新格式化日期。若要重新格式化分析中的日期，您可以從日期欄位的內容功能表中選擇 format (格式) 選項。

## 語法
<a name="formatDate-function-syntax"></a>

```
formatDate(date, ['format'])
```

## 引數
<a name="formatDate-function-arguments"></a>

 *date*   
日期欄位或對輸出日期的另一個函數的呼叫。

 *format*   
(選用) 包含要套用的格式模式的字串。此引數接受[以支援的日期格式指定的格式](https://docs.aws.amazon.com/quicksight/latest/user/supported-date-formats.html)模式。  
如果您不指定格式，這個字串預設為 yyyy-MM-dd**T**kk:mm:ss:SSS。

## 傳回類型
<a name="formatDate-function-return-type"></a>

String

## 範例
<a name="formatDate-function-example"></a>

下列範例將 UTC 日期格式化。

```
formatDate(orderDate, 'dd-MMM-yyyy')
```

以下是指定欄位的值。

```
order date      
=========
2012-12-14T00:00:00.000Z  
2013-12-29T00:00:00.000Z
2012-11-15T00:00:00.000Z
```

對於這些欄位值，會傳回以下值。

```
13 Dec 2012
28 Dec 2013
14 Nov 2012
```

## 範例
<a name="formatDate-function-example2"></a>

如果日期包含單引號或撇號，例如 `yyyyMMdd'T'HHmmss`，您可以使用下列方法之一來處理此日期格式。
+ 將整個日期用雙引號括起來，如下例所示：

  ```
  formatDate({myDateField}, "yyyyMMdd'T'HHmmss")
  ```
+ 透過在單引號或撇號左側新增反斜線 (`\`) 讓單引號或撇號進行逸出，如下例所示：

  ```
  formatDate({myDateField}, 'yyyyMMdd\'T\'HHmmss')
  ```

# Ifelse
<a name="ifelse-function"></a>

`ifelse` 會評估一組 *if* 和 *then* 表達式對，並傳回第一個評估結果為 true 的 *if* 引數的 *then* 引數值。如果 *if* 引數評估為 true，則會傳回 *else* 引數的值。

## 語法
<a name="ifelse-function-syntax"></a>

```
ifelse(if-expression-1, then-expression-1 [, if-expression-n, then-expression-n ...], else-expression)
```

## 引數
<a name="ifelse-function-arguments"></a>

`ifelse` 需要一或多個 *if* 和 *then* 表達式配對，加上 *else* 引數的正好一個表達式。

 *if-expression*   
要評估為 true 或否的表達式。它可以是 **address1** 之類的欄位名稱、**'Unknown'** 之類的常值，或 `toString(salesAmount)` 之類的函數。例如，`isNotNull(FieldName)`。  
如果您在 `if` 引數中使用多個 AND 和 OR 運算子，請將陳述式含括在括號中，以識別處理順序。例如，下列 `if` 引數會傳回月份 1、2、或 5 且年份為 2000 年的記錄。  

```
ifelse((month = 5 OR month < 3) AND year = 2000, 'yes', 'no')
```
下一個 `if` 引數會使用相同的運算子，但傳回月份為 5 和任何年份，或月份為 1 或 2 且年份為 2000 年的記錄。  

```
ifelse(month = 5 OR (month < 3 AND year = 2000), 'yes', 'no')
```

 *then-expression*   
如果其 *if* 引數評估為 true，要傳回的表達式。它可以是 **address1** 之類的欄位名稱、**'Unknown'** 之類的常值，或對另一個函數的呼叫。運算式必須與其他 `then` 引數和 `else` 引數擁有相同的資料類型。

 *else-expression*   
如果沒有任何 *if* 引數評估為 true，要傳回的表達式。它可以是 **address1** 之類的欄位名稱、**'Unknown'** 之類的常值，或 `toString(salesAmount)` 之類的函數。運算式必須與所有 `then` 引數擁有相同的資料類型。

## 傳回類型
<a name="ifelse-function-return-type"></a>

`ifelse` 會傳回與 *then-expression* 中的值具有相同資料類型的值。從 *then* 和 *else* 表達式傳回的所有資料必須具有相同的資料類型或轉換為相同的資料類型。

## 範例
<a name="ifelse-function-example"></a>

以下範例為欄位 `country` 產生別名資料欄。

```
ifelse(country = "United States", "US", country = "China", "CN", country = "India", "IN", "Others") 
```

對於此類根據常值清單評估欄位中每個值，並傳回與第一個相符值相對應的結果的使用案例，建議使用函數 switch 來簡化工作。可以使用 [https://docs.aws.amazon.com/quicksight/latest/user/switch-function.html](https://docs.aws.amazon.com/quicksight/latest/user/switch-function.html) 將前面的範例重寫為以下陳述式：

```
switch(country,"United States","US","China","CN","India","IN","Others")
```

以下範例將每位客戶的銷售額分類為人類可讀的等級。

```
ifelse(salesPerCustomer < 1000, “VERY_LOW”, salesPerCustomer < 10000, “LOW”, salesPerCustomer < 100000, “MEDIUM”, “HIGH”)
```

以下範例使用 AND、OR 和 NOT 來比較多個表達式，使用條件運算子來標記特殊促銷活動中，不在華盛頓或奧勒岡、提出了 10 個以上訂單的前幾大客戶。如果沒有傳回任何值，則會使用值 `'n/a'`。

```
ifelse(( (NOT (State = 'WA' OR State =  'OR')) AND Orders > 10),  'Special Promotion XYZ',  'n/a')
```

以下範例僅使用 OR 產生一個新資料欄，其中包含與每個 `country` 對應的大洲名稱。

```
ifelse(country = "United States" OR country = "Canada", "North America", country = "China" OR country = "India" OR country = "Japan", "Asia", "Others")
```

前面的範例可以簡化稱如下範例。以下範例使用 `ifelse` 和 [https://docs.aws.amazon.com/quicksight/latest/user/in-function.html](https://docs.aws.amazon.com/quicksight/latest/user/in-function.html) 針對測試值位於常值清單中的任何列在新資料欄中建立一個值。您也可以將 `ifelse` 與 [https://docs.aws.amazon.com/quicksight/latest/user/notIn-function.html](https://docs.aws.amazon.com/quicksight/latest/user/notIn-function.html) 搭配使用。

```
ifelse(in(country,["United States", "Canada"]), "North America", in(country,["China","Japan","India"]),"Asia","Others")
```

作者可以將常值清單儲存在多值參數中，並在 [https://docs.aws.amazon.com/quicksight/latest/user/in-function.html](https://docs.aws.amazon.com/quicksight/latest/user/in-function.html) 或 [https://docs.aws.amazon.com/quicksight/latest/user/notIn-function.html](https://docs.aws.amazon.com/quicksight/latest/user/notIn-function.html) 函數中使用。以下範例與前面的範例等效，只是這裡的常值清單儲存在兩個多值參數中。

```
ifelse(in(country,${NorthAmericaCountryParam}), "North America", in(country,${AsiaCountryParam}),"Asia", "Others") 
```

以下範例會根據銷售總計，將群組指派給銷售記錄。每個 `if-then` 片語的結構模仿 *between* (該關鍵字目前在計算欄位表達式中不起作用) 的行為。例如，比較 `salesTotal >= 0 AND salesTotal < 500` 的結果傳回與 SQL 比較 `salesTotal between 0 and 499` 相同的值。

```
ifelse(salesTotal >= 0 AND salesTotal < 500, 'Group 1', salesTotal >= 500 AND salesTotal < 1000, 'Group 2', 'Group 3')
```

以下範例透過使用 `coalesce` 傳回第一個非 NULL 值來測試 NULL 值。您可以為日期欄位使用可讀的描述，從而無需記住 NULL 的含義。如果中斷連線日期為 NULL，則此範例會傳回暫停日期，除非兩者皆為 NULL。然後 `coalesce(DiscoDate, SuspendDate, '12/31/2491')` 會回傳 `'12/31/2491'`。傳回值必須與其他資料類型相符。這個日期看似一個不尋常的值，但 25 世紀的某個日期作為「結束時間」 (定義為資料市集中的最晚日期) 是合理的。

```
ifelse (  (coalesce(DiscoDate, SuspendDate, '12/31/2491') = '12/31/2491'),  'Active subscriber', 'Inactive subscriber')
```

下面以更易讀的格式顯示了一個更複雜的範例，目的在於表明您不需要將所有程式碼壓縮成一長行。此範例提供了對調查結果值的多重比較。它處理該欄位的潛在 NULL 值，並對兩個可接受的範圍進行分類。它還標記了一個需要更多測試的範圍，以及另一個無效 (超出範圍) 的範圍。對於所有剩餘值，它會套用 `else` 條件，並將相應列標記為需要在列上的日期三年後重新測試。

```
ifelse
( 
    isNull({SurveyResult}), 'Untested',  
    {SurveyResult}=1, 'Range 1', 
    {SurveyResult}=2, 'Range 2', 
    {SurveyResult}=3, 'Need more testing',
    {SurveyResult}=99, 'Out of Range',
    concat  
    (
        'Retest by ', 
        toString    
        (
           addDateTime(3, "YYYY", {Date}) 
        )
    )
)
```

以下範例將「手動」建立的地區名稱指派給一個州名群組。它還使用空白和包含在 `/* */` 中的註解，以便讓維護程式碼更輕鬆。

```
ifelse 
(    /* NE REGION*/
     locate('New York, New Jersey, Connecticut, Vermont, Maine, Rhode Island, New Hampshire',{State}) > 0,
    'Northeast',

     /* SE REGION*/
     locate('Georgia, Alabama, South Carolina, Louisiana',{State}) > 0,
    'Southeast',

    'Other Region'
)
```

地區標記的邏輯分解如下：

1. 我們列出每個地區相應的州，將每個清單括在引號中以使每個清單成為一個字串，如下所示：
   + `'New York, New Jersey, Connecticut, Vermont, Maine, Rhode Island, New Hampshire'`
   + `'Georgia, Alabama, South Carolina, Louisiana'`
   + 您可以新增更多集合，或根據需要使用國家/地區、城市、省份或 What3Words。

1. 我們使用 `locate` 函數詢問是否在清單中找到了 `State` (每列) 的值，如果在清單中找到了相應州，則傳回非零值，如下所示。

   ```
   locate('New York, New Jersey, Connecticut, Vermont, Maine, Rhode Island, New Hampshire',{State}) 
   
   and
   
   locate('Georgia, Alabama, South Carolina, Louisiana',{State})
   ```

1. `locate` 函數傳回一個數字，而不是 `TRUE` 或 `FALSE`，但 `ifelse` 需要 `TRUE`/`FALSE` 布林值。為了解決這個問題，我們可以將 `locate` 的結果與某個數字進行比較。如果相應州在清單中，則傳回值大於零。

   1. 詢問相應州是否存在。

      ```
      locate('New York, New Jersey, Connecticut, Vermont, Maine, Rhode Island, New Hampshire',{State}) > 0
      ```

   1. 如果存在於相應地區，則將其標記為特定地區，在本例中為 Northeast 地區。

      ```
      /*The if expression:*/     locate('New York, New Jersey, Connecticut, Vermont, Maine, Rhode Island, New Hampshire',{State}) > 0,
      /*The then expression:*/   'Northeast',
      ```

1. 由於有些州不在清單中，而且 `ifelse` 需要單一 `else` 表達式，因此我們提供 `'Other Region'` 作為剩餘州的標籤。

   ```
   /*The if expression:*/     locate('New York, New Jersey, Connecticut, Vermont, Maine, Rhode Island, New Hampshire',{State}) > 0,
   /*The then expression:*/   'Northeast',
   /*The else expression:*/   'Other Region'
   ```

1. 我們將所有內容包裝在 `ifelse( )` 函數中以取得最終版本。以下範例省略了原始範例中屬於 Southeast 地區的州。您可以使用它們取代 *`<insert more regions here>`* 標籤將它們加回來。

   如果您想新增更多地區，您可以建立這兩行的更多複本，並變更州清單以滿足您的需求。您可以將地區名稱變更為所需名稱，並將欄位名稱從 `State` 變更為您需要的任何名稱。

   ```
   ifelse 
   (
   /*The if expression:*/     locate('New York, New Jersey, Connecticut, Vermont, Maine, Rhode Island, New Hampshire',{State}) > 0,
   /*The then expression:*/   'Northeast',
   
   /*<insert more regions here>*/
   
   /*The else expression:*/   'Other Region'
   )
   ```
**注意**  
還有其他方法可以對上述 if 表達式進行初始比較。例如，假設您提出問題「此清單中未缺少哪些州？」，而不是「哪些州在清單上？」。如果是這樣，那麼編碼可能會不同。您可以將 locate 陳述式與零進行比較，以尋找清單中缺少的值，然後使用 NOT 運算子將它們分類為「未缺失」，如下所示。  

   ```
   /*The if expression:*/      NOT (locate('New York, New Jersey, Connecticut, Vermont, Maine, Rhode Island, New Hampshire',{State}) = 0),
   ```
兩個版本均正確。不論選擇何版本，應該讓編碼易於您和您的團隊理解，從而讓維護程式碼更輕鬆。如果所有選項看起來等效，則建議選擇最簡單的選項。

# in
<a name="in-function"></a>

`in` 會評估表達式是否存在於某個常值清單中。如果清單包含相應表達式，則 in 傳回 true，否則傳回 false。`in` 對於字串類型輸入區分大小寫。

`in` 接受兩種常值清單，一種是手動輸入清單，另一種是[多值參數](https://docs.aws.amazon.com/quicksight/latest/user/parameters-in-quicksight.html)。

## 語法
<a name="in-function-syntax"></a>

使用手動輸入的清單：

```
in(expression, [literal-1, ...])  
```

使用多值參數：

```
in(expression, $multivalue_parameter)
```

## 引數
<a name="in-function-arguments"></a>

 *表達式*   
要與常值清單中的元素進行比較的表達式。它可以是欄位名稱 (如 `address`)、常值 (如 "**Unknown**")、單值參數或對另一個純量函數的呼叫 (前提是該函數不是彙總函數或表計算)。

 *literal list*   
(必要) 這可以是手動輸入的清單或多值參數。此引數最多接受 5,000 個元素。但是，在直接查詢第三方資料來源 (例如 Oracle 或 Teradata) 時，限制可能會更小。  
+ ***手動輸入清單***：包含要與表達式進行比較的一個或多個常值的清單。此清單應括在方括號內。所有要比較的常值必須具有與表達式相同的資料類型。
+ ***多值參數***：作為常值清單傳入的預定義多值參數。此多值參數必須具有與表達式相同的資料類型。


## 傳回類型
<a name="in-function-return-type"></a>

布林值：TRUE/FALSE

## 靜態清單範例
<a name="in-function-example-static-list"></a>

以下範例針對某個字串清單中的值評估 `origin_state_name` 欄位。比較字串類型輸入時，`in` 僅支援區分大小寫的比較。

```
in(origin_state_name,["Georgia", "Ohio", "Texas"])
```

以下是指定欄位的值。

```
"Washington"
        "ohio"
        "Texas"
```

對於這些欄位值，會傳回以下值。

```
false
        false
        true
```

第三個傳回值為 true，因為只有 "Texas" 是包含的值之一。

以下範例針對某個字串清單中的值評估 `fl_date` 欄位。為了與類型相符，使用 `toString` 將日期類型轉換為字串類型。

```
in(toString(fl_date),["2015-05-14","2015-05-15","2015-05-16"])
```

![\[函數範例結果的影像 (以資料表形式顯示)。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/in-function-example-manual-list.png)


與清單中的常值進行比較的表達式引數支援常值和 NULL 值。以下兩個範例都將產生一個新的 TRUE 值資料欄。

```
in("Washington",["Washington","Ohio"])
```

```
in(NULL,[NULL,"Ohio"])
```

## 多值參數的範例
<a name="in-function-example-mutivalue-parameter"></a>

假設某個作者建立了一個[多值參數](https://docs.aws.amazon.com/quicksight/latest/user/parameters-in-quicksight.html)，其中包含所有州名稱的清單。然後該作者新增了一個控制項，以允許讀者從清單中選取值。

接著，有讀者從參數的下拉式清單控制項中選取三個值 "Georgia"、"Ohio" 和 "Texas"。在這種情況下，以下表達式等效於第一個範例，其中三個州名稱作為常值清單傳遞以與 `original_state_name` 欄位進行比較。

```
in (origin_state_name, ${stateName MultivalueParameter})
```

## `ifelse` 的範例
<a name="in-function-example-with-ifelse"></a>

`in` 可以作為布林值以巢狀結構置於其他函數中。一個例子是，作者可以使用 `in` 和 `ifelse` 評估清單中的任何表達式，並傳回他們想要的值。以下範例評估航班的 `dest_state_name` 是否位於特定美國州清單中，並根據比較返回不同的州類別。

```
ifelse(in(dest_state_name,["Washington", "Oregon","California"]), "WestCoastUSState", "Other US State")
```

![\[函數範例結果的影像 (以資料表形式顯示)。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/in-function-with-ifelse.png)


# intToDecimal
<a name="intToDecimal-function"></a>

`intToDecimal` 會將整數值轉換成小數資料類型。

## 語法
<a name="intToDecimal-function-syntax"></a>

```
intToDecimal(integer)
```

## 引數
<a name="intToDecimal-function-arguments"></a>

 *int*   
使用整數資料類型的欄位、**14** 之類的常值，或對輸出整數的另一個函數的呼叫。

## 傳回類型
<a name="intToDecimal-function-return-type"></a>

舊版資料準備體驗中的小數 （固定）。

新資料準備體驗中的小數 （浮點數）。

## 範例
<a name="intToDecimal-function-example"></a>

以下範例會將整數欄位轉換為小數。

```
intToDecimal(price)
```

以下是指定欄位的值。

```
20
892
57
```

對於這些欄位值，會傳回以下值。

```
20.0
892.0
58.0
```

您可以在分析內套用格式，例如將 `price` 格式化為貨幣。

# isNotNull
<a name="isNotNull-function"></a>

`isNotNull` 會評估表達式來查看它是否非 Null。如果表達式不是 Null，`isNotNull` 會傳回 true，否則會傳回 false。

## 語法
<a name="isNotNull-function-syntax"></a>

```
isNotNull(expression)
```

## 引數
<a name="isNotNull-function-arguments"></a>

 *表達式*   
要評估為 Null 或否的表達式。它可以是欄位名稱，例如，**address1**，或是對可輸出字串的另一個函數的呼叫。

## 傳回類型
<a name="isNotNull-function-return-type"></a>

Boolean

## 範例
<a name="isNotNull-function-example"></a>

以下範例會評估 sales\$1amount 欄位是否有 Null 值。

```
isNotNull(salesAmount)
```

以下是指定欄位的值。

```
20.13
(null)
57.54
```

對於這些欄位值，會傳回以下值。

```
true
false
true
```

# isNull
<a name="isNull-function"></a>

`isNull` 會評估表達式來查看它是否為 Null。如果表達式為 Null，`isNull` 會傳回 true，否則會傳回 false。

## 語法
<a name="isNull-function-syntax"></a>

```
isNull(expression)
```

## 引數
<a name="isNull-function-arguments"></a>

 *表達式*   
要評估為 Null 或否的表達式。它可以是欄位名稱，例如，**address1**，或是對可輸出字串的另一個函數的呼叫。

## 傳回類型
<a name="isNull-function-return-type"></a>

Boolean

## 範例
<a name="isNull-function-example"></a>

以下範例會評估 sales\$1amount 欄位是否有 Null 值。

```
isNull(salesAmount)
```

以下是指定欄位的值。

```
20.13
(null)
57.54
```

對於這些欄位值，會傳回以下值。

```
false
true
false
```

以下範例測試 `ifelse` 陳述式中的 NULL 值，並傳回人類可讀的值。

```
ifelse( isNull({ActiveFlag}) , 'Inactive',  'Active') 
```

# isWorkDay
<a name="isWorkDay-function"></a>

`isWorkDay` 會評估指定的日期時間值，以判斷該值是否為工作日。

`isWorkDay` 假設標準的每週工作 5 天，從週一開始到週五結束。週六和週日為週末。此函數永遠以 `DAY` 精細程度計算其結果，並且不包含指定的輸入日期。

## 語法
<a name="isWorkDay-function-syntax"></a>

```
isWorkDay(inputDate)
```

## 引數
<a name="isWorkDay-function-arguments"></a>

 *inputDate*   
您要評估的日期時間值。有效值如下：  
+ 資料集欄位：您要在其中新增此函數的資料集中的任何 `date` 欄位。
+ 日期函數：從另一個 `date` 函數輸出的任何日期，例如 `parseDate`。
+ 計算欄位：傳回`date`值的任何快速計算欄位。
+ 參數：任何快速`DateTime`參數。

## 傳回類型
<a name="isWorkDay-function-return-type"></a>

整數 (`0` 或 `1`)

## 範例
<a name="isWorkDay-function-example"></a>

以下範例判斷 `application_date` 欄位是否為工作日。

假設有一個名為 `application_date` 的欄位，其值如下：

```
2022-08-10 
2022-08-06 
2022-08-07
```

當您使用這些欄位並新增以下計算時，`isWorkDay` 傳回下列值：

```
isWorkDay({application_date})     
                                                     
1
0
0
```

以下範例使用條件格式篩選在工作日離職的員工，並判斷他們入職當天是工作日還是週末：

```
is_start_date_work_day = isWorkDay(employment_start_date)
is_end_date_work_day = isWorkDay(employment_end_date)
```

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/isWorkDay-example.png)


# Left
<a name="left-function"></a>

`left` 會傳回來自某個字串最左邊的字元，包括空格。您可以指定要傳回的字元數。

## 語法
<a name="left-function-syntax"></a>

```
left(expression, limit)
```

## 引數
<a name="left-function-arguments"></a>

 *表達式*   
表達式必須是字串。它可以是使用字串資料類型的欄位、**'12 Main Street'** 之類的常值，或對輸出字串的另一個函數的呼叫。

 *limit*   
要從 *expression* 傳回的字元數，從字串中的第一個字元開始。

## 傳回類型
<a name="left-function-return-type"></a>

String

## 範例
<a name="left-function-example"></a>

以下範例會傳回字串前 3 個字元。

```
left('Seattle Store #14', 3)
```

會傳回下列值。

```
Sea
```

# Locate
<a name="locate-function"></a>

`locate` 會找到您在另一個字串內指定的子字串，並傳回字元數，直到子字串中的第一個字元為止。如果找不到子字串，函數會傳回 0。該函數從 1 開始。

## 語法
<a name="locate-function-syntax"></a>

```
locate(expression, substring, start)
```

## 引數
<a name="locate-function-arguments"></a>

 *表達式*   
表達式必須是字串。它可以是使用字串資料類型的欄位、**'12 Main Street'** 之類的常值，或對輸出字串的另一個函數的呼叫。

 *substring*   
您要尋找的 *expression* 中的一組字元。該子字串在 *expression* 中可能出現一或多次。

 *start*   
(選用) 如果 *substring* 出現不只一次，請使用 *start* 來識別字串中，函數應該開始尋找子字串的位置。例如，假設您想要找到子字串的第二個範例，並且您認為它一般會發生在前 10 個字元之後。您指定的 *start* 值為 10。應該從 1 開始。

## 傳回類型
<a name="locate-function-return-type"></a>

Integer

## 範例
<a name="locate-function-example"></a>

以下範例會傳回有關字串中第一個出現子字串 'and' 的位置資訊。

```
locate('1 and 2 and 3 and 4', 'and')
```

會傳回下列值。

```
3
```

以下範例會傳回有關字串中第四個字元之後，第一個出現子字串 'and' 的位置資訊。

```
locate('1 and 2 and 3 and 4', 'and', 4)
```

會傳回下列值。

```
9
```

# Log
<a name="log-function"></a>

`log` 會傳回指定運算式之以 10 為底的對數。

## 語法
<a name="log-function-syntax"></a>

```
log(expression)
```

## 引數
<a name="log-function-arguments"></a>

 *表達式*   
表達式必須是數字。它可以是欄位名稱、常值或另一個函數。

# Ln
<a name="ln-function"></a>

`ln` 會傳回指定運算式的自然對數。

## 語法
<a name="ln-function-syntax"></a>

```
ln(expression)
```

## 引數
<a name="ln-function-arguments"></a>

 *表達式*   
表達式必須是數字。它可以是欄位名稱、常值或另一個函數。

# Ltrim
<a name="ltrim-function"></a>

`ltrim` 會從字串移除前面的空白。

## 語法
<a name="ltrim-function-syntax"></a>

```
ltrim(expression)
```

## 引數
<a name="ltrim-function-arguments"></a>

 *表達式*   
表達式必須是字串。它可以是使用字串資料類型的欄位、**'12 Main Street'** 之類的常值，或對輸出字串的另一個函數的呼叫。

## 傳回類型
<a name="ltrim-function-return-type"></a>

String

## 範例
<a name="ltrim-function-example"></a>

下列範例會從字串中移除前述空格。

```
ltrim('   Seattle Store #14')
```

會傳回下列值。

```
Seattle Store #14
```

# Mod
<a name="mod-function"></a>

在以除數除以數字後使用 `mod` 函數找到餘數。您可以交替使用 `mod` 函數或模數運算子 (%)。

## 語法
<a name="mod-function-syntax"></a>

```
mod(number, divisor)
```

```
number%divisor
```

## 引數
<a name="mod-function-arguments"></a>

 *number*   
該數字是您要除以並找到餘數的正整數。

 除數**   
除數是您要用來除的正整數。如果除數為零，則此函數會傳回除以 0 的錯誤。

## 範例
<a name="mod-function-example"></a>

下列範例除以 6 時傳回 17 的模數。第一個範例使用 % 運算子，而第二個範例使用 mod 函數。

```
17%6
```

```
mod( 17, 6 )
```

會傳回下列值。

```
5
```

# netWorkDays
<a name="netWorkDays-function"></a>

`netWorkDays` 傳回提供兩個日期欄位之間的工作天數，甚至是使用其他快速日期函數產生的自訂日期值，例如 `parseDate`或 `epochDate`作為整數。

`netWorkDays` 假設標準的每週工作 5 天，從週一開始到週五結束。週六和週日為週末。此計算包含 `startDate` 和 `endDate`。此函數以天精細程度執行並顯示結果。

## 語法
<a name="netWorkDays-function-syntax"></a>

```
netWorkDays(startDate, endDate)
```

## 引數
<a name="netWorkDays-function-arguments"></a>

 *startDate*   
充當計算開始日期的有效非 NULL 日期。  
+ 資料集欄位：您要在其中新增此函數的資料集中的任何 `date` 欄位。
+ 日期函數：從另一個 `date` 函數輸出的任何日期，例如 `parseDate`。
+ 計算欄位：傳回`date`值的任何快速計算欄位。
+ 參數：任何快速`DateTime`參數。
+ 上述引數值的任意組合。

 *endDate*   
充當計算結束日期的有效非 NULL 日期。  
+ 資料集欄位：您要在其中新增此函數的資料集中的任何 `date` 欄位。
+ 日期函數：從另一個 `date` 函數輸出的任何日期，例如 `parseDate`。
+ 計算欄位：傳回`date`值的任何快速計算欄位。
+ 參數：任何快速`DateTime`參數。
+ 上述引數值的任意組合。

## 傳回類型
<a name="netWorkDays-function-return-type"></a>

Integer 

## 輸出值
<a name="netWorkDays-function-output-type"></a>

預期輸出值包括：
+ 正整數 (當 start\$1date < end\$1date 時)
+ 負整數 (當 start\$1date > end\$1date 時)
+ 當一個或兩個引數從 `dataset field` 取得 null 值時為 NULL。

## 範例
<a name="netWorkDays-function-example"></a>

以下範例傳回兩個日期之間的工作天數。

假設有一個名為 `application_date` 的欄位，其值如下：

```
netWorkDays({startDate}, {endDate})
```

以下是指定欄位的值。

```
startDate	endDate	netWorkDays
        9/4/2022	9/11/2022	5
        9/9/2022	9/2/2022	-6
        9/10/2022	9/11/2022	0
        9/12/2022	9/12/2022	1
```

以下範例計算每位員工的工作天數，以及每位員工的每天平均工資：

```
days_worked = netWorkDays({employment_start_date}, {employment_end_date})
        salary_per_day = {salary}/{days_worked}
```

以下範例使用條件格式篩選在工作日離職的員工，並判斷他們入職當天是工作日還是週末：

```
is_start_date_work_day = netWorkDays(employment_start_date)
        is_end_date_work_day = netWorkDays(employment_end_date)
```

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/netWorkDays-function-example.png)


# Now
<a name="now-function"></a>

對於直接查詢資料庫的資料庫的資料集，`now` 會使用資料庫伺服器指定的設定和格式，傳回目前的日期和時間。針對 SPICE 和 Salesforce 資料集，`now` 會以 `yyyy-MM-ddTkk:mm:ss:SSSZ` 的格式傳回 UTC 日期和時間 (例如，2015-10-15T19:11:51:003Z)。

## 語法
<a name="now-function-syntax"></a>

```
now()
```

## 傳回類型
<a name="now-function-return-type"></a>

Date

# notIn
<a name="notIn-function"></a>

`notIn` 會評估表達式是否存在於某個常值清單中。如果清單不包含相應表達式，則 `notIn` 傳回 true，否則傳回 false。`notIn` 對於字串類型輸入區分大小寫。

`notIn` 接受兩種常值清單，一種是手動輸入清單，另一種是[多值參數](https://docs.aws.amazon.com/quicksight/latest/user/parameters-in-quicksight.html)。

## 語法
<a name="notIn-function-syntax"></a>

使用手動輸入的清單：

```
notIn(expression, [literal-1, ...])  
```

使用多值參數：

```
notIn(expression, $multivalue_parameter)
```

## 引數
<a name="notIn-function-arguments"></a>

 *表達式*   
要與常值清單中的元素進行比較的表達式。它可以是欄位名稱 (如 `address`)、常值 (如 "**Unknown**")、單值參數或對另一個純量函數的呼叫 (前提是該函數不是彙總函數或表計算)。

 *literal list*   
(必要) 這可以是手動輸入的清單或多值參數。此引數最多接受 5,000 個元素。但是，在直接查詢第三方資料來源 (例如 Oracle 或 Teradata) 時，限制可能會更小。  
+ ***手動輸入清單***：包含要與表達式進行比較的一個或多個常值的清單。此清單應括在方括號內。所有要比較的常值必須具有與表達式相同的資料類型。
+ ***多值參數***：作為常值清單傳入的預定義多值參數。此多值參數必須具有與表達式相同的資料類型。


## 傳回類型
<a name="notIn-function-return-type"></a>

布林值：TRUE/FALSE

## 手動輸入清單的範例
<a name="notIn-function-example-manual-list"></a>

以下範例針對某個字串清單中的值評估 `origin_state_name` 欄位。比較字串類型輸入時，`notIn` 僅支援區分大小寫的比較。

```
notIn(origin_state_name,["Georgia", "Ohio", "Texas"])
```

以下是指定欄位的值。

```
"Washington"
        "ohio"
        "Texas"
```

對於這些欄位值，會傳回以下值。

```
true
        true
        false
```

第三個傳回值為 false，因為只有 "Texas" 是排除的值之一。

以下範例針對某個字串清單中的值評估 `fl_date` 欄位。為了與類型相符，使用 `toString` 將日期類型轉換為字串類型。

```
notIn(toString(fl_date),["2015-05-14","2015-05-15","2015-05-16"])
```

![\[函數範例結果的影像 (以資料表形式顯示)。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/notin-function-example-manual-list.png)


與清單中的常值進行比較的表達式引數支援常值和 NULL 值。以下兩個範例都將產生一個新的 FALSE 值資料欄。

```
notIn("Washington",["Washington","Ohio"])
```

```
notIn(NULL,[NULL,"Ohio"])
```

## 多值參數的範例
<a name="notIn-function-example-mutivalue-parameter"></a>

假設某個作者建立了一個[多值參數](https://docs.aws.amazon.com/quicksight/latest/user/parameters-in-quicksight.html)，其中包含所有州名稱的清單。然後該作者新增了一個控制項，以允許讀者從清單中選取值。

接著，有讀者從參數的下拉式清單控制項中選取三個值 "Georgia"、"Ohio" 和 "Texas"。在這種情況下，以下表達式等效於第一個範例，其中三個州名稱作為常值清單傳遞以與 `original_state_name` 欄位進行比較。

```
notIn (origin_state_name, ${stateName MultivalueParameter})
```

## `ifelse` 的範例
<a name="notIn-function-example-with-ifelse"></a>

`notIn` 可以作為布林值以巢狀結構置於其他函數中。一個例子是，作者可以使用 `notIn` 和 `ifelse` 評估清單中的任何表達式，並傳回他們想要的值。以下範例評估航班的 `dest_state_name` 是否位於特定美國州清單中，並根據比較返回不同的州類別。

```
ifelse(notIn(dest_state_name,["Washington", "Oregon","California"]), "notWestCoastUSState", "WestCoastUSState")
```

![\[函數範例結果的影像 (以資料表形式顯示)。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/notin-function-with-ifelse.png)


# nullIf
<a name="nullIf-function"></a>

`nullIf` 會比較兩個表達式。如果它們相等，則函數會傳回 Null。如果它們值不相等，則函數會傳回第一個表達式。

## 語法
<a name="nullIf-function-syntax"></a>

```
nullIf(expression1, expression2)
```

## 引數
<a name="nullIf-function-arguments"></a>

`nullIf` 需要兩個表達式做為引數。

 *表達式*   
表達式可以是數字、日期時間或字串。它可以是欄位名稱、常值或另一個函數。

## 傳回類型
<a name="nullIf-function-return-type"></a>

String

## 範例
<a name="nullIf-function-example"></a>

以下範例會在交貨延遲的原因不明時傳回 Null。

```
nullIf(delayReason, 'unknown')
```

以下是指定欄位的值。

```
delayReason
============
unknown         
back ordered 
weather delay
```

對於這些欄位值，會傳回以下值。

```
(null)
back ordered 
weather delay
```

# parseDate
<a name="parseDate-function"></a>

`parseDate` 會剖析字串，以判斷它是否包含日期值，而且會傳回標準日期，採用格式 `yyyy-MM-ddTkk:mm:ss.SSSZ` (使用 Joda 專案文件的 [類別 DateTimeFormat](http://www.joda.org/joda-time/apidocs/org/joda/time/format/DateTimeFormat.html) 中指定的格式模式語法)，例如 2015-10-15T19:11:51.003Z。此函數會傳回所有包含有效格式日期的列，並略過所有不包含的列，包括含 Null 值的列。

快速支援 1900 年 1 月 1 日至 2037 年 12 月 31 日 23：59：59 UTC 範圍內的日期。如需詳細資訊，請參閱[支援的日期格式](https://docs.aws.amazon.com/quicksight/latest/user/supported-date-formats.html)。

## 語法
<a name="parseDate-function-syntax"></a>

```
parseDate(expression, ['format'])
```

## 引數
<a name="parseDate-function-arguments"></a>

 *表達式*   
表達式必須是字串。它可以是使用字串資料類型的欄位、**'1/1/2016'** 之類的常值，或對輸出字串的另一個函數的呼叫。

 *format*   
(選用) 包含 *date\$1string* 必須符合的格式模式字串。例如，如果您使用具有 **01/03/2016** 之類資料的欄位，您可以指定格式 'MM/dd/yyyy'。如果您不指定格式，則會預設為 `yyyy-MM-dd`。會略過資料不符合 *format* 的資料列。  
根據使用的資料集類型，支援不同的日期格式。使用以下表格來查看支援的日期格式的詳細資訊。    
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/parseDate-function.html)

## 傳回類型
<a name="parseDate-function-return-type"></a>

Date

## 範例
<a name="parseDate-function-example"></a>

以下範例會評估 `prodDate` 來判斷它是否包含日期值。

```
parseDate(prodDate, 'MM/dd/yyyy')
```

以下是指定欄位的值。

```
prodDate
--------
01-01-1999
12/31/2006
1/18/1982 
7/4/2010
```

對於這些欄位值，會傳回以下資料列。

```
12-31-2006T00:00:00.000Z
01-18-1982T00:00:00.000Z
07-04-2010T00:00:00.000Z
```

# parseDecimal
<a name="parseDecimal-function"></a>

`parseDecimal` 會剖析字串以判斷其是否包含小數值。此函數會傳回包含小數、整數或 Null 值的所有資料列，並略過未包含的任何資料列。如果資料列包含整數值，則會以最多 4 位小數的形式傳回。例如，'2' 的值會以 '2.0' 形式傳回。

## 語法
<a name="parseDecimal-function-syntax"></a>

```
parseDecimal(expression)
```

## 引數
<a name="parseDecimal-function-arguments"></a>

 *表達式*   
表達式必須是字串。它可以是使用字串資料類型的欄位、**'9.62'** 之類的常值，或對輸出字串的另一個函數的呼叫。

## 傳回類型
<a name="parseDecimal-function-return-type"></a>

舊版資料準備體驗中的小數 （固定）。

新資料準備體驗中的小數 （浮點數）。

## 範例
<a name="parseDecimal-function-example"></a>

以下範例會評估 `fee` 來判斷它是否包含小數值。

```
parseDecimal(fee)
```

以下是指定欄位的值。

```
fee
--------
2
2a
12.13
3b
3.9
(null)
198.353398
```

對於這些欄位值，會傳回以下資料列。

```
2.0
12.13
3.9
(null)
198.3533
```

# parseInt
<a name="parseInt-function"></a>

`parseInt` 會剖析字串以判斷其是否包含整數值。此函數會傳回包含小數、整數或 Null 值的所有資料列，並略過未包含的任何資料列。如果資料列包含小數值，則會以最接近的整數形式傳回，無條件捨去。例如，'2.99' 的值會以 '2' 形式傳回。

## 語法
<a name="parseInt-function-syntax"></a>

```
parseInt(expression)
```

## 引數
<a name="parseInt-function-arguments"></a>

 *表達式*   
表達式必須是字串。它可以是使用字串資料類型的欄位、**'3'** 之類的常值，或對輸出字串的另一個函數的呼叫。

## 傳回類型
<a name="parseInt-function-return-type"></a>

Integer

## 範例
<a name="parseInt-function-example"></a>

以下範例會評估 `feeType` 來判斷它是否包含整數值。

```
parseInt(feeType)
```

以下是指定欄位的值。

```
feeType
--------
2
2.1
2a
3
3b
(null)
5
```

對於這些欄位值，會傳回以下資料列。

```
2
2
3
(null)
5
```

# parseJson
<a name="parseJson-function"></a>

使用 `parseJson` 從 JSON 物件擷取值。

如果您的資料集存放在快速 中SPICE，您可以在準備資料集`parseJson`時使用 ，但不能在分析期間的計算欄位中使用。

對於直接查詢，您可以同時對資料準備和分析使用 `parseJson`。如下表所示，取決於方言，`parseJson` 函數會套用至字串或 JSON 原生資料類型。


| 方言 | Type | 
| --- | --- | 
| PostgreSQL | JSON | 
| Amazon Redshift | String | 
| Microsoft SQL Server | String | 
| MySQL | JSON | 
| Teradata | JSON | 
| Oracle | String | 
| Presto | String | 
| Snowflake | 半結構化的資料類型物件和陣列 | 
| Hive | String | 

## 語法
<a name="parseJson-function-syntax"></a>

```
parseJson(fieldName, path)
```

## 引數
<a name="parseJson-function-arguments"></a>

 *fieldName*   
包含您希望剖析的 JSON 物件的欄位。

 *路徑*   
您想要從 JSON 物件剖析的資料元素的路徑。路徑引數中僅支援字母、數字與空格。有效路徑的語法包括：  
+ *\$1*：根物件
+ *.*：子運算子
+ *[ ]*：陣列的下標運算子

## 傳回類型
<a name="parseJson-function-return-type"></a>

String

## 範例
<a name="parseJson-function-example-query"></a>

以下範例會評估傳入的 JSON 以擷取項目數量的值。透過使用此資料準備，您可以從 JSON 建立資料表。

```
parseJson({jsonField}, “$.items.qty”)
```

以下顯示 JSON。

```
{
    "customer": "John Doe",
    "items": {
        "product": "Beer",
        "qty": 6
    },
    "list1": [
        "val1",
        "val2"
    ],
    "list2": [
        {
            "list21key1": "list1value1"
        }
    ]
}
```

針對此範例，會傳回下列值。

```
6
```

## 範例
<a name="parseJson-function-example"></a>

以下範例會評估 `JSONObject1` 來擷取標籤為 `"State"` 的第一個金鑰值組 (KVP)，並將值指派到您要建立的評估欄位。

```
parseJson(JSONObject1, “$.state”)
```

以下是指定欄位的值。

```
JSONObject1
-----------
{"State":"New York","Product":"Produce","Date Sold":"1/16/2018","Sales Amount":"$3423.39"}
{"State":"North Carolina","Product":"Bakery Products","Date Sold":"2/1/2018","Sales Amount":"$3226.42"}
{"State":"Utah","Product":"Water","Date Sold":"4/24/2018","Sales Amount":"$7001.52"}
```

對於這些欄位值，會傳回以下資料列。

```
New York
North Carolina
Utah
```

# Replace
<a name="replace-function"></a>

`replace` 會以您指定的另一個字串取代字串的一部分。

## 語法
<a name="replace-function-syntax"></a>

```
replace(expression, substring, replacement)
```

## 引數
<a name="replace-function-arguments"></a>

 *表達式*   
表達式必須是字串。它可以是使用字串資料類型的欄位、**'12 Main Street'** 之類的常值，或對輸出字串的另一個函數的呼叫。

 *substring*   
您要取代的 *expression* 中的一組字元。該子字串在 *expression* 中可能出現一或多次。

 *replacement*   
您想要對 *substring* 替換的字串。

## 傳回類型
<a name="replace-function-return-type"></a>

String

## 範例
<a name="replace-function-example"></a>

以下範例會以 'or' 取代子字串 'and'。

```
replace('1 and 2 and 3', 'and', 'or')
```

會傳回下列字串。

```
1 or 2 or 3
```

# Right
<a name="right-function"></a>

`right` 會傳回來自某個字串最右邊的字元，包括空格。您可以指定要傳回的字元數。

## 語法
<a name="right-function-syntax"></a>

```
right(expression, limit)
```

## 引數
<a name="right-function-arguments"></a>

 *表達式*   
表達式必須是字串。它可以是使用字串資料類型的欄位、**'12 Main Street'** 之類的常值，或對輸出字串的另一個函數的呼叫。

 *limit*   
要從 *expression* 傳回的字元數，從字串中的最後一個字元開始。

## 傳回類型
<a name="right-function-return-type"></a>

String

## 範例
<a name="right-function-example"></a>

以下範例會傳回來自字串的最後五個字元。

```
right('Seattle Store#14', 12)
```

會傳回下列值。

```
tle Store#14
```

# Round
<a name="round-function"></a>

如果未指定比例，`round` 會將小數值四捨五入至最接近的整數，或如果有指定比例，則到最接近的小數位數。

## 語法
<a name="round-function-syntax"></a>

```
round(decimal, scale)
```

## 引數
<a name="round-function-arguments"></a>

 *decimal*   
使用小數資料類型的欄位、**17.62** 之類的常值，或對輸出小數的另一個函數的呼叫。

 *scale*   
要用於傳回值的小數位數。

## 傳回類型
<a name="round-function-return-type"></a>


| 運算元 | 舊版資料準備體驗中的傳回類型 | 新資料準備體驗中的傳回類型 | 
| --- | --- | --- | 
|  INT  |  DECIMAL（已修正）  |  DECIMAL（已修正）  | 
|  DECIMAL（已修正）  |  DECIMAL（已修正）  |  DECIMAL（已修正）  | 
|  DECIMAL(FLOAT)  |  DECIMAL（已修正）  |  DECIMAL(FLOAT)  | 

## 範例
<a name="round-function-example"></a>

以下範例會將小數欄位四捨五入到最接近的第二個小數位數。

```
round(salesAmount, 2)
```

以下是指定欄位的值。

```
20.1307
892.0388
57.5447
```

對於這些欄位值，會傳回以下值。

```
20.13
892.04
58.54
```

# Rtrim
<a name="rtrim-function"></a>

`rtrim` 會從字串移除後面的空白。

## 語法
<a name="rtrim-function-syntax"></a>

```
rtrim(expression)
```

## 引數
<a name="rtrim-function-arguments"></a>

 *表達式*   
表達式必須是字串。它可以是使用字串資料類型的欄位、**'12 Main Street'** 之類的常值，或對輸出字串的另一個函數的呼叫。

## 傳回類型
<a name="rtrim-function-return-type"></a>

String

## 範例
<a name="rtrim-function-example"></a>

下列範例會從字串中移除後面的空格。

```
rtrim('Seattle Store #14   ')
```

對於這些欄位值，會傳回以下值。

```
Seattle Store #14
```

# Split
<a name="split-function"></a>

`split` 會根據您選擇的分隔符號將字串分割成子字串的陣列，並傳回位置指定的項目。

您僅可在資料準備時將 `split` 新增至計算欄位，而非新增至分析。Microsoft SQL Server 的直接查詢不支援此函數。

## 語法
<a name="split-function-syntax"></a>

```
split(expression, delimiter , position)
```

## 引數
<a name="split-function-arguments"></a>

 *表達式*   
表達式必須是字串。它可以是使用字串資料類型的欄位、**'12 Main Street;1402 35th Ave;1818 Elm Ct;11 Janes Lane'** 之類的常值，或對輸出字串的另一個函數的呼叫。

 *delimiter*   
將字串劃分成子字串的分隔符號字元。例如，`split('one|two|three', '|', 2)` 會變成下列。  

```
one
two
three
```
如果選擇 `position = 2`，`split` 會傳回 `'two'`。

 *position*   
(必要) 要從陣列傳回的項目位置。陣列中第一個項目的位置為 1。

## 傳回類型
<a name="split-function-return-type"></a>

字串陣列

## 範例
<a name="split-function-example"></a>

以下範例會將字串分割為陣列，使用分號字元 (;) 做為分隔符號，並傳回陣列的第三個元素。

```
split('123 Test St;1402 35th Ave;1818 Elm Ct;11 Janes Lane', ';', 3)
```

會傳回下列項目。

```
1818 Elm Ct
```

此函數會略過包含 Null 值或空白字串的項目。

# Sqrt
<a name="sqrt-function"></a>

`sqrt` 會傳回指定運算式的平方根。

## 語法
<a name="sqrt-function-syntax"></a>

```
sqrt(expression)
```

## 引數
<a name="sqrt-function-arguments"></a>

 *表達式*   
表達式必須是數字。它可以是欄位名稱、常值或另一個函數。

# startsWith
<a name="startsWith-function"></a>

`startsWith` 會評估表達式是否以您指定的子字串開頭。如果表達式以相應子字符串開頭，則 `startsWith` 會返回 true，否則會返回 false。

## 語法
<a name="startsWith-function-syntax"></a>

```
startsWith(expression, substring, string-comparison-mode)
```

## 引數
<a name="startsWith-function-arguments"></a>

 *表達式*   
表達式必須是字串。它可以是使用字串資料類型的欄位、**'12 Main Street'** 之類的常值，或對輸出字串的另一個函數的呼叫。

 *substring*   
要針對表達式**檢查的字元集。該子字串在表達式**中可能出現一或多次。

 字串比較模式**   
(選用) 指定要使用的字串比較模式：  
+ `CASE_SENSITIVE`：字串比較區分大小寫。
+ `CASE_INSENSITIVE`：字串比較不區分大小寫。
空白時此值會預設為 `CASE_SENSITIVE`。

## 傳回類型
<a name="startsWith-function-return-type"></a>

Boolean

## 範例
<a name="startsWith-function-example"></a>

### 預設區分大小寫的範例
<a name="startsWith-function-example-default-case-sensitive"></a>

以下區分大小寫的範例評估 `state_nm` 是否以 **New** 開頭。

```
startsWith(state_nm, "New")
```

以下是指定欄位的值。

```
New York
new york
```

對於這些欄位值，會傳回以下值。

```
true
false
```

### 不區分大小寫的範例
<a name="startsWith-function-example-case-insensitive"></a>

以下不區分大小寫的範例評估 `state_nm` 是否以 **new** 開頭。

```
startsWith(state_nm, "new", CASE_INSENSITIVE)
```

以下是指定欄位的值。

```
New York
new york
```

對於這些欄位值，會傳回以下值。

```
true
true
```

### 條件陳述式範例
<a name="startsWith-function-example-conditional-statements"></a>

`startsWith` 函數可用作以下 If 函數中的條件陳述式：[avgIf](https://docs.aws.amazon.com/quicksight/latest/user/avgIf-function.html)、[minIf](https://docs.aws.amazon.com/quicksight/latest/user/minIf-function.html)、[distinct\$1countIf](https://docs.aws.amazon.com/quicksight/latest/user/distinct_countIf-function.html)、[countIf](https://docs.aws.amazon.com/quicksight/latest/user/countIf-function.html)、[maxIf](https://docs.aws.amazon.com/quicksight/latest/user/maxIf-function.html)、[medianIf](https://docs.aws.amazon.com/quicksight/latest/user/medianIf-function.html)、[stdevIf](https://docs.aws.amazon.com/quicksight/latest/user/stdevIf-function.html)、[stdevpIf](https://docs.aws.amazon.com/quicksight/latest/user/stdevpIf-function.html)、[sumIf](https://docs.aws.amazon.com/quicksight/latest/user/sumIf-function.html)、[varIf](https://docs.aws.amazon.com/quicksight/latest/user/varIf-function.html) 和 [varpIf](https://docs.aws.amazon.com/quicksight/latest/user/varpIf-function.html)。

以下範例僅當 state\$1nm 以 **New** 開頭時才對 `Sales` 求和。

```
sumIf(Sales,startsWith(state_nm, "New"))
```

### 不包含範例
<a name="startsWith-function-example-does-not-start-with"></a>

條件 `NOT` 運算子可用來評估表達式是否以指定的子字串開頭。

```
NOT(startsWith(state_nm, "New"))
```

### 使用數值的範例
<a name="startsWith-function-example-numeric-values"></a>

透過套用 `toString` 函數，可以在表達式或子字串引數中使用數值。

```
startsWith(state_nm, toString(5) )
```

# Strlen
<a name="strlen-function"></a>

`strlen` 傳回字串中的字元數，包括空格。

## 語法
<a name="strlen-function-syntax"></a>

```
strlen(expression)
```

## 引數
<a name="strlen-function-arguments"></a>

 *表達式*   
表達式可以是使用 **address1** 之類字串資料類型的欄位、**'Unknown'** 之類的常值，或 `substring(field_name,0,5)` 之類的另一個函數。

## 傳回類型
<a name="strlen-function-return-type"></a>

Integer

## 範例
<a name="strlen-function-example"></a>

下列範例會傳回指定字串的長度。

```
strlen('1421 Main Street')
```

會傳回下列值。

```
16
```

# Substring
<a name="substring-function"></a>

`substring` 會傳回字串中的字元，由 *start* 引數指定的位置開始，直到 *length* 引數指定的字元數為止。

## 語法
<a name="substring-function-syntax"></a>

```
substring(expression, start, length)
```

## 引數
<a name="substring-function-arguments"></a>

 *表達式*   
表達式可以是使用 **address1** 之類字串資料類型的欄位、**'Unknown'** 之類的常值，或 `substring(field_name,1,5)` 之類的另一個函數。

 *start*   
要開始的字元位置。*start* 為包含，因此開始位置的字元為傳回值中的第一個字元。*start* 的最小值為 1。

 *長度*   
要併入在 *start* 後的額外字元數量。*length* 包含 *start*，因此，在開始字元之後傳回的最後一個字元是 (*length* - 1)。

## 傳回類型
<a name="substring-function-return-type"></a>

String

## 範例
<a name="substring-function-example"></a>

以下範例會傳回字串中的第 13 個到第 19 個字元。字串開頭的索引 1，因此從第一個字元開始計數。

```
substring('Fantasy and Science Fiction',13,7)
```

會傳回下列值。

```
Science
```

# switch
<a name="switch-function"></a>

`switch` 將 *condition-expression* 與在一組常值標籤和 *return-expression* 對中的常值標籤進行比較。然後，它會傳回與等於 *condition-expression* 的第一個常值標籤相對應的 *return-expression*。如果沒有標籤等於 *condition-expression*，則 `switch` 傳回 *default-expression*。每個 *return-expression* 和 *default-expression* 必須具有相同的資料類型。

## 語法
<a name="switch-function-syntax"></a>

```
switch(condition-expression, label-1, return-expression-1 [, label-n, return-expression-n ...], 
        default-expression)
```

## 引數
<a name="switch-function-arguments"></a>

`switch` 需要一或多個 *if* 和 *then* 表達式配對，加上 *else* 引數的正好一個表達式。

 *condition-expression*   
要與標籤常值進行比較的表達式。它可以是 `address` 之類的欄位名稱、`Unknown` 之類的常值，或 `toString(salesAmount)` 之類的純量函數。

 *label*   
要與 *condition-expression* 引數進行比較的常值，所有常值必須具有與 *condition-expression* 引數相同的資料類型。`switch` 最多可接受 5,000 個標籤。

 *return-expression*   
標籤值等於 *condition-expression* 的值傳回的表達式。它可以是 `address` 之類的欄位名稱、`Unknown` 之類的常值，或 `toString(salesAmount)` 之類的純量函數。所有 *return-expression* 引數必須與 *default-expression* 具有相同的資料類型。

 *default-expression*   
沒有任何標籤引數的值等於 *condition-expression* 的值時傳回的表達式。它可以是 `address` 之類的欄位名稱、`Unknown` 之類的常值，或 `toString(salesAmount)` 之類的純量函數。所有 *default-expression* 必須與 *default-expression* 的所有引數具有相同的資料類型。

## 傳回類型
<a name="switch-function-return-type"></a>

`switch` 會傳回與 *return-expression* 中的值具有相同資料類型的值。從 *return-expression* 和 *default-expression* 表達式傳回的所有資料必須具有相同的資料類型或轉換為相同的資料類型。

## 一般範例
<a name="switch-function-example"></a>

下列範例會傳回輸入區域名稱的 AWS 區域 程式碼。

```
switch(region_name, 
               "US East (N. Virginia)", "us-east-1", 
               "Europe (Ireland)", "eu-west-1", 
               "US West (N. California)", "us-west-1", 
               "other regions")
```

以下是指定欄位的值。

```
"US East (N. Virginia)"
        "US West (N. California)"
        "Asia Pacific (Tokyo)"
```

對於這些欄位值，會傳回以下值。

```
"us-east-1"
        "us-west-1"
        "other regions"
```

## 使用 switch 取代 `ifelse`
<a name="switch-instead-of-ifelse"></a>

以下 `ifelse` 使用案例與前面的範例等效，相較於使用 `ifelse` 評估一個欄位的值是否等於不同的常值，使用 `switch` 是更好的選擇。

```
ifelse(region_name = "US East (N. Virginia)", "us-east-1", 
               region_name = "Europe (Ireland)", "eu-west-1", 
               region_name = "US West (N. California)", "us-west-1", 
               "other regions")
```

## 表達式作為傳回值
<a name="switch-expression-as-return-value"></a>

以下範例在 *return-expressions* 中使用表達式：

```
switch({origin_city_name}, 
               "Albany, NY", {arr_delay} + 20, 
               "Alexandria, LA", {arr_delay} - 10,
               "New York, NY", {arr_delay} * 2, 
               {arr_delay})
```

前面的範例變更了來自特定城市的每個航班的預期延誤時間。

![\[函數範例結果的影像 (以資料表形式顯示)。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/switch-function-example.png)


# toLower
<a name="toLower-function"></a>

`toLower` 會將字串格式設為全部小寫。`toLower` 會略過含 Null 值的列。

## 語法
<a name="toLower-function-syntax"></a>

```
toLower(expression)
```

## 引數
<a name="toLower-function-arguments"></a>

 *表達式*   
表達式必須是字串。它可以是使用字串資料類型的欄位、**'12 Main Street'** 之類的常值，或對輸出字串的另一個函數的呼叫。

## 傳回類型
<a name="toLower-function-return-type"></a>

String

## 範例
<a name="toLower-function-example"></a>

下列範例會將字串值轉換為小寫。

```
toLower('Seattle Store #14')
```

會傳回下列值。

```
seattle store #14
```

# toString
<a name="toString-function"></a>

`toString` 會將輸入表達式格式化為字串。`toString` 會略過含 Null 值的資料列。

## 語法
<a name="toString-function-syntax"></a>

```
toString(expression)
```

## 引數
<a name="toString-function-arguments"></a>

 *表達式*   
 表達式可以是任何資料類型的欄位、**14.62** 之類的常值，或是對會傳回任何資料類型的另一個函數的呼叫。

## 傳回類型
<a name="toString-function-return-type"></a>

String

## 範例
<a name="toString-function-example"></a>

以下範例會將 `payDate` 的值 (其使用 `date` 資料類型) 以字串形式傳回。

```
toString(payDate)
```

以下是指定欄位的值。

```
payDate
--------
1992-11-14T00:00:00.000Z
2012-10-12T00:00:00.000Z
1973-04-08T00:00:00.000Z
```

對於這些欄位值，會傳回以下資料列。

```
1992-11-14T00:00:00.000Z
2012-10-12T00:00:00.000Z
1973-04-08T00:00:00.000Z
```

# toUpper
<a name="toUpper-function"></a>

`toUpper` 會將字串格式設為全部大寫。`toUpper` 會略過含 Null 值的資料列。

## 語法
<a name="toUpper-function-syntax"></a>

```
toUpper(expression)
```

## 引數
<a name="toUpper-function-arguments"></a>

 *表達式*   
表達式必須是字串。它可以是使用字串資料類型的欄位、**'12 Main Street'** 之類的常值，或對輸出字串的另一個函數的呼叫。

## 傳回類型
<a name="toUpper-function-return-type"></a>

String

## 範例
<a name="toUpper-function-example"></a>

下列範例會將字串值轉換為大寫。

```
toUpper('Seattle Store #14')
```

會傳回下列值。

```
SEATTLE STORE #14
```

# trim
<a name="trim-function"></a>

`trim` 會從字串同時移除前面和後面的空白。

## 語法
<a name="trim-function-syntax"></a>

```
trim(expression)
```

## 引數
<a name="trim-function-arguments"></a>

 *表達式*   
表達式必須是字串。它可以是使用字串資料類型的欄位、**'12 Main Street'** 之類的常值，或對輸出字串的另一個函數的呼叫。

## 傳回類型
<a name="trim-function-return-type"></a>

String

## 範例
<a name="trim-function-example"></a>

下列範例會從字串中移除後面的空格。

```
trim('   Seattle Store #14   ')
```

對於這些欄位值，會傳回以下值。

```
Seattle Store #14
```

# truncDate
<a name="truncDate-function"></a>

`truncDate` 會傳回代表日期指定部分的日期值。例如，請求值 2012-09-02T00:00:00.000Z 的年份部分會傳回 2012-01-01T00:00:00.000Z。指定未包含時間資訊之日期的時間相關期間，會傳回保持不變的初始日期值。

## 語法
<a name="truncDate-function-syntax"></a>

```
truncDate('period', date)
```

## 引數
<a name="truncDate-function-arguments"></a>

 *period*   
您想要傳回之日期的期間。有效的期間如下：  
+ YYYY：這會傳回日期的年份部分。
+ Q：這會傳回日期所屬的季別第一天的日期。
+ MM：這會傳回日期的月份部分。
+ DD：這會傳回日期的日部分。
+ WK：這會傳回日期的週部分。本週從 Amazon Quick 的星期日開始。
+ HH：這會傳回日期的小時部分。
+ MI：這會傳回日期的分鐘部分。
+ SS：這會傳回日期的秒部分。
+ MS：這會傳回日期的毫秒部分。

 *date*   
日期欄位或對輸出日期的另一個函數的呼叫。

## 傳回類型
<a name="truncDate-function-return-type"></a>

Date

## 範例
<a name="truncDate-function-example"></a>

下列範例會傳回代表訂單日期月份的日期。

```
truncDate('MM', orderDate)
```

以下是指定欄位的值。

```
orderDate      
=========
2012-12-14T00:00:00.000Z  
2013-12-29T00:00:00.000Z
2012-11-15T00:00:00.000Z
```

對於這些欄位值，會傳回以下值。

```
2012-12-01T00:00:00.000Z
2013-12-01T00:00:00.000Z
2012-11-01T00:00:00.000Z
```

# 彙總函數
<a name="calculated-field-aggregations"></a>

彙總函數只能在分析和視覺化期間使用。這些函數會傳回依照所選擇的一或多個維度分組的值。每一種彙總計算另提供了有條件彙總。其將根據條件執行同一類型的彙總。

計算欄位公式包含彙總時，會變成自訂彙總。為了確保您的資料準確顯示，Amazon Quick 會套用下列規則：
+ 自訂彙總不可包含巢狀彙總函數。例如，下列公式無作用：`sum(avg(x)/avg(y))`。不過，彙總函數內部或外部的巢狀非彙總函數會發揮作用。例如，`ceil(avg(x))` 有作用。`avg(ceil(x))` 也會發揮作用。
+ 自訂彙總不可同時包含彙總和非匯總欄位的任何組合。例如，下列公式無作用：`Sum(sales)+quantity`。
+ 篩選條件群組不可同時包含彙總和非彙總欄位。
+ 自訂彙總不可轉換到維度。這些也無法放入欄位和維度。
+ 在樞紐分析表中，不可將自訂彙總新增到表格計算。
+ 自訂彙總的散佈圖至少需要欄位集的 **Group/Color (群組/色彩)** 底下的至少一個維度。

如需支援函數和運算子的詳細資訊，請參閱 [Amazon Quick 的計算欄位函數和運算子參考](https://docs.aws.amazon.com/quicksight/latest/user/calculated-field-reference.html)。

Quick 中計算欄位的彙總函數包括下列項目。

**Topics**
+ [

# avg
](avg-function.md)
+ [

# avgIf
](avgIf-function.md)
+ [

# count
](count-function.md)
+ [

# countIf
](countIf-function.md)
+ [

# distinct\$1count
](distinct_count-function.md)
+ [

# distinct\$1countIf
](distinct_countIf-function.md)
+ [

# max
](max-function.md)
+ [

# maxIf
](maxIf-function.md)
+ [

# median
](median-function.md)
+ [

# medianIf
](medianIf-function.md)
+ [

# min
](min-function.md)
+ [

# minIf
](minIf-function.md)
+ [

# percentile
](percentile-function.md)
+ [

# percentileCont
](percentileCont-function.md)
+ [

# percentileDisc (百分位數)
](percentileDisc-function.md)
+ [

# periodToDateAvg
](periodToDateAvg-function.md)
+ [

# periodToDateCount
](periodToDateCount-function.md)
+ [

# periodToDateMax
](periodToDateMax-function.md)
+ [

# periodToDateMedian
](periodToDateMedian-function.md)
+ [

# periodToDateMin
](periodToDateMin-function.md)
+ [

# periodToDatePercentile
](periodToDatePercentile-function.md)
+ [

# periodToDatePercentileCont
](periodToDatePercentileCont-function.md)
+ [

# periodToDateStDev
](periodToDateStDev-function.md)
+ [

# periodToDateStDevP
](periodToDateStDevP-function.md)
+ [

# periodToDateSum
](periodToDateSum-function.md)
+ [

# periodToDateVar
](periodToDateVar-function.md)
+ [

# periodToDateVarP
](periodToDateVarP-function.md)
+ [

# stdev
](stdev-function.md)
+ [

# stdevp
](stdevp-function.md)
+ [

# stdevIf
](stdevIf-function.md)
+ [

# stdevpIf
](stdevpIf-function.md)
+ [

# sum
](sum-function.md)
+ [

# sumIf
](sumIf-function.md)
+ [

# var
](var-function.md)
+ [

# varIf
](varIf-function.md)
+ [

# varp
](varp-function.md)
+ [

# varpIf
](varpIf-function.md)

# avg
<a name="avg-function"></a>

`avg` 函數會計算指定量值中一組數字的平均值 (依照選擇的一個或多個維度分組)。例如，`avg(salesAmount)` 會傳回該量值依照 (選用) 所選的維度分組的平均值。

## 語法
<a name="avg-function-syntax"></a>

```
avg(decimal, [group-by level])
```

## 引數
<a name="avg-function-arguments"></a>

 *decimal*   
引數必須是量值。結果會省略空值。常值無作用。引數必須是欄位。

 *group-by level*   
(選用) 指定彙總分組依據的層級。新增的層級可以是與新增至視覺效果的維度無關的任何一個或多個維度。  
引數必須是維度欄位。分組依據層級必須以方括弧 `[ ]` 括起。如需詳細資訊，請參閱[關卡感知計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。

## 範例
<a name="avg-function-example"></a>

下列範例計算平均銷售額。

```
avg({Sales})
```

您也可以使用檢視或資料集中的一個或多個維度，指定在哪個層級將運算分組。這就是所謂的 LAC-A 函數。如需 LAC-A 函數的詳細資訊，請參閱[感知層級計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。下列範例計算國家/地區層級的平均銷售額，但不會計算視覺效果中其他維度 (區域或產品) 的平均銷售額。

```
avg({Sales}, [{Country}])
```

![\[平均銷售數字只會在國家/地區層級彙總。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/avg-function-example.png)


# avgIf
<a name="avgIf-function"></a>

根據條件陳述式，`avgIf` 函數會計算指定量值中一組數字的平均值 (依照選擇的一個或多個維度分組)。例如，`avgIf(ProdRev,CalendarDay >= ${BasePeriodStartDate} AND CalendarDay <= ${BasePeriodEndDate} AND SourcingType <> 'Indirect')` 將傳回當條件判斷值為 true 時，該量值依照 (選用) 所選的維度分組的平均值。

## 語法
<a name="avgIf-function-syntax"></a>

```
avgIf(dimension or measure, condition) 
```

## 引數
<a name="avgIf-function-arguments"></a>

 *decimal*   
引數必須是量值。結果會省略空值。常值無作用。引數必須是欄位。

 *condition*   
單一陳述式中的一個或多個條件。

# count
<a name="count-function"></a>

`count` 函數會計算維度或量值中的值數量 (依照選擇的一個或多個維度分組)。例如，`count(product type)` 會傳回依照 (選用) 選擇之維度分組的產品類型總數，包括任何重複類型。`count(sales)` 函數會傳回依照 (選用) 選擇之維度 (例如業務人員) 分組的完成銷售總數。

## 語法
<a name="count-function-syntax"></a>

```
count(dimension or measure, [group-by level])
```

## 引數
<a name="count-function-arguments"></a>

 *dimension or measure*   
引數必須是量值或維度。結果會省略空值。常值無作用。引數必須是欄位。

 *group-by level*   
(選用) 指定彙總分組依據的層級。新增的層級可以是與新增至視覺效果的維度無關的任何一個或多個維度。  
引數必須是維度欄位。分組依據層級必須以方括弧 `[ ]` 括起。如需詳細資訊，請參閱[關卡感知計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。

## 範例
<a name="count-function-example"></a>

下列範例依據視覺效果中的指定維度計算銷售額統計。此範例按月份顯示銷售額統計。

```
count({Sales})
```

![\[按月份顯示的銷售額統計。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/count-function-example.png)


您也可以使用檢視或資料集中的一個或多個維度，指定在哪個層級將運算分組。這就是所謂的 LAC-A 函數。如需 LAC-A 函數的詳細資訊，請參閱[感知層級計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。下列範例計算國家/地區層級的銷售統計，但不會計算視覺效果中其他維度 (區域或產品) 的銷售額統計。

```
count({Sales}, [{Country}])
```

![\[銷售額統計只會在國家/地區層級彙總。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/count-function-example2.png)


# countIf
<a name="countIf-function"></a>

根據條件陳述式，`countIf` 函數會計算維度或量值中的值數量 (依照選擇的一個或多個維度分組)。

## 語法
<a name="countIf-function-syntax"></a>

```
countIf(dimension or measure, condition)
```

## 引數
<a name="countIf-function-arguments"></a>

 *dimension or measure*   
引數必須是量值或維度。結果會省略空值。常值無作用。引數必須是欄位。

 *condition*   
單一陳述式中的一個或多個條件。

## 傳回類型
<a name="countIf-function-return-type"></a>

Integer

## 範例
<a name="countIf-function-example"></a>

下列函數會傳回符合條件的銷售交易 (`Revenue`) 統計，包括任何重複項。

```
countIf (
    Revenue,
    # Conditions
        CalendarDay >= ${BasePeriodStartDate} AND 
        CalendarDay <= ${BasePeriodEndDate} AND 
        SourcingType <> 'Indirect'
)
```

# distinct\$1count
<a name="distinct_count-function"></a>

`distinct_count` 函數會計算維度或量值中的相異值數量 (依照選擇的一個或多個維度分組)。例如，`distinct_count(product type)` 會傳回依照 (選用) 選擇之維度分組的個別產品類型總數，不包括任何重複類型。`distinct_count(ship date)` 函數會傳回依照 (選用) 選擇之維度 (例如區域) 分組的產品出貨日期總數。

## 語法
<a name="distinct_count-function-syntax"></a>

```
distinct_count(dimension or measure, [group-by level])
```

## 引數
<a name="distinct_count-function-arguments"></a>

 *dimension or measure*   
引數必須是量值或維度。結果會省略空值。常值無作用。引數必須是欄位。

 *group-by level*   
(選用) 指定彙總分組依據的層級。新增的層級可以是與新增至視覺效果的維度無關的任何一個或多個維度。  
引數必須是維度欄位。分組依據層級必須以方括弧 `[ ]` 括起。如需詳細資訊，請參閱[關卡感知計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。

## 範例
<a name="distinct_count-function-examples"></a>

下列範例計算產品在視覺效果中依據 (選用) 所選維度 (例如區域) 分組的訂購日期總數。

```
distinct_count({Order Date})
```

![\[在每個區域訂購產品的日期總數。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/distinct_count-function-example.png)


您也可以使用檢視或資料集中的一個或多個維度，指定在哪個層級將運算分組。這就是所謂的 LAC-A 函數。如需 LAC-A 函數的詳細資訊，請參閱[感知層級計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。下列範例計算國家/地區層級的平均銷售額，但不會計算視覺效果中其他維度 (區域) 的平均銷售額。

```
distinct_count({Order Date}, [Country])
```

![\[在每個國家/地區訂購產品的日期總數。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/distinct_count-function-example2.png)


# distinct\$1countIf
<a name="distinct_countIf-function"></a>

根據條件陳述式，`distinct_countIf` 函數會計算維度或量值中的相異值數目 (依照選擇的一個或多個維度分組)。例如，`distinct_countIf(product type)` 會傳回依照 (選用) 選擇之維度分組的個別產品類型總數，不包括任何重複類型。`distinct_countIf(ProdRev,CalendarDay >= ${BasePeriodStartDate} AND CalendarDay <= ${BasePeriodEndDate} AND SourcingType <> 'Indirect')` 函數將傳回條件判斷值為 true 時，依照 (選用) 所選的維度 (例如區域) 分組的產品出貨日期總數。

## 語法
<a name="distinct_countIf-function-syntax"></a>

```
distinct_countIf(dimension or measure, condition)
```

## 引數
<a name="distinct_countIf-function-arguments"></a>

 *dimension or measure*   
引數必須是量值或維度。結果會省略空值。常值無作用。引數必須是欄位。

 *condition*   
單一陳述式中的一個或多個條件。

# max
<a name="max-function"></a>

`max` 函數會傳回指定量值或日期的最大值 (依照選擇的一個或多個維度分組)。例如，`max(sales goal)` 會傳回依照 (選用) 選擇之維度分組的最大銷售目標。

## 語法
<a name="max-function-syntax"></a>

```
max(measure, [group-by level])
```

## 引數
<a name="max-function-arguments"></a>

 *measure*   
引數必須是量值或日期。結果會省略空值。常值無作用。引數必須是欄位。  
最大日期僅適用於表格和樞紐分析表中的 **Value (值)** 欄位集。

 *group-by level*   
(選用) 指定彙總分組依據的層級。新增的層級可以是與新增至視覺效果的維度無關的任何一個或多個維度。  
引數必須是維度欄位。分組依據層級必須以方括弧 `[ ]` 括起。如需詳細資訊，請參閱[關卡感知計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。

## 範例
<a name="max-function-example"></a>

下列範例傳回每個區域的銷售額最高值。它與總銷售額、銷售額最低值和銷售額中位數進行比較。

```
max({Sales})
```

![\[每個區域的銷售額最高值。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/min-max-median-function-example.png)


您也可以使用檢視或資料集中的一個或多個維度，指定在哪個層級將運算分組。這就是所謂的 LAC-A 函數。如需 LAC-A 函數的詳細資訊，請參閱[感知層級計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。下列範例計算國家/地區層級的銷售額最高值，但不會計算視覺效果中其他維度 (區域) 的銷售額最高值。

```
max({Sales}, [Country])
```

![\[每個國家/地區的最大銷售額。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/max-function-example2.png)


# maxIf
<a name="maxIf-function"></a>

根據條件陳述式，`maxIf` 函數會傳回指定量值的最大值 (依照選擇的一個或多個維度分組)。例如，當條件判斷值為 true 時，`maxIf(ProdRev,CalendarDay >= ${BasePeriodStartDate} AND CalendarDay <= ${BasePeriodEndDate} AND SourcingType <> 'Indirect')` 將傳回依照 (選用) 所選的維度分組的最高銷售目標。

## 語法
<a name="maxIf-function-syntax"></a>

```
maxIf(measure, condition)
```

## 引數
<a name="maxIf-function-arguments"></a>

 *measure*   
引數必須是量值。結果會省略空值。常值無作用。引數必須是欄位。

 *condition*   
單一陳述式中的一個或多個條件。

# median
<a name="median-function"></a>

`median` 彙總會傳回指定量值的中位值 (依照選擇的一個或多個維度分組)。例如，`median(revenue)` 會傳回依照 (選用) 選擇之維度分組的收入中位數。

## 語法
<a name="median-function-syntax"></a>

```
median(measure, [group-by level])
```

## 引數
<a name="median-function-arguments"></a>

 *measure*   
引數必須是量值。結果會省略空值。常值無作用。引數必須是欄位。

 *group-by level*   
(選用) 指定彙總分組依據的層級。新增的層級可以是與新增至視覺效果的維度無關的任何一個或多個維度。  
引數必須是維度欄位。分組依據層級必須以方括弧 `[ ]` 括起。如需詳細資訊，請參閱[關卡感知計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。

## 範例
<a name="median-function-example"></a>

下列範例傳回每個區域的銷售額中位數。它與總銷售額、銷售額最高值和銷售額最低值進行比較。

```
median({Sales})
```

![\[每個區域的銷售額中位數。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/min-max-median-function-example.png)


您也可以使用檢視或資料集中的一個或多個維度，指定在哪個層級將運算分組。這就是所謂的 LAC-A 函數。如需 LAC-A 函數的詳細資訊，請參閱[感知層級計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。下列範例計算國家/地區層級的銷售額中位數，但不會計算視覺效果中其他維度 (區域) 的銷售額中位數。

```
median({Sales}, [Country])
```

![\[每個國家/地區的中位數銷售額。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/median-function-example2.png)


# medianIf
<a name="medianIf-function"></a>

根據條件陳述式，`medianIf` 彙總會傳回指定量值的中位值 (依照選擇的一個或多個維度分組)。例如，當條件判斷值為 true 時，`medianIf(Revenue,SaleDate >= ${BasePeriodStartDate} AND SaleDate <= ${BasePeriodEndDate})` 將傳回依照 (選用) 所選的維度分組的收入中位數。

## 語法
<a name="medianIf-function-syntax"></a>

```
medianIf(measure, condition)
```

## 引數
<a name="medianIf-function-arguments"></a>

 *measure*   
引數必須是量值。結果會省略空值。常值無作用。引數必須是欄位。

 *condition*   
單一陳述式中的一個或多個條件。

# min
<a name="min-function"></a>

`min` 函數會傳回指定量值或日期的最小值 (依照選擇的一個或多個維度分組)。例如，`min(return rate)` 會傳回依照 (選用) 選擇之維度分組的最小投資報酬率。

## 語法
<a name="min-function-syntax"></a>

```
min(measure, [group-by level])
```

## 引數
<a name="min-function-arguments"></a>

 *measure*   
引數必須是量值或日期。結果會省略空值。常值無作用。引數必須是欄位。  
最小日期僅適用於表格和樞紐分析表中的 **Value (值)** 欄位集。

 *group-by level*   
(選用) 指定彙總分組依據的層級。新增的層級可以是與新增至視覺效果的維度無關的任何一個或多個維度。  
引數必須是維度欄位。分組依據層級必須以方括弧 `[ ]` 括起。如需詳細資訊，請參閱[關卡感知計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。

## 範例
<a name="min-function-example"></a>

下列範例傳回每個區域的銷售額最低值。它與總銷售額、銷售額最高值和銷售額中位數進行比較。

```
min({Sales})
```

![\[每個區域的銷售額最低值。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/min-max-median-function-example.png)


您也可以使用檢視或資料集中的一個或多個維度，指定在哪個層級將運算分組。這就是所謂的 LAC-A 函數。如需 LAC-A 函數的詳細資訊，請參閱[感知層級計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。下列範例計算國家/地區層級的銷售額最低值，但不會計算視覺效果中其他維度 (區域) 的銷售額最低值。

```
min({Sales}, [Country])
```

![\[每個國家/地區的銷售額中位數。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/min-function-example2.png)


# minIf
<a name="minIf-function"></a>

根據條件陳述式，`minIf` 函數會傳回指定量值的最小值 (依照選擇的一個或多個維度分組)。例如，當條件判斷值為 true 時，`minIf(ProdRev,CalendarDay >= ${BasePeriodStartDate} AND CalendarDay <= ${BasePeriodEndDate} AND SourcingType <> 'Indirect')` 將傳回依照 (選用) 所選的維度分組的最低投資報酬率。

## 語法
<a name="minIf-function-syntax"></a>

```
minIf(measure, condition)
```

## 引數
<a name="minIf-function-arguments"></a>

 *measure*   
引數必須是量值。結果會省略空值。常值無作用。引數必須是欄位。

 *condition*   
單一陳述式中的一個或多個條件。

# percentile
<a name="percentile-function"></a>

`percentile` 函數計算量值值的百分位數，依欄位中的維度分組。Quick 提供兩種百分位數計算：
+ [https://docs.aws.amazon.com/quicksight/latest/user/percentileCont-function.html](https://docs.aws.amazon.com/quicksight/latest/user/percentileCont-function.html) 使用線性插值來判斷結果。
+ [percentileDisc （百分位數）](https://docs.aws.amazon.com/quicksight/latest/user/percentileDisc-function.html) 使用實際值來判斷結果。

`percentile` 函數是 `percentileDisc` 的別名。

# percentileCont
<a name="percentileCont-function"></a>

`percentileCont` 函數依據量值中數字的連續分佈計算百分位。它使用在欄位集中應用的分組和排序方法。它回答了這樣的問題：什麼值代表這個百分位數？ 若要傳回資料集中可能不存在的確切百分位數值，請使用 `percentileCont`。若要傳回資料集中最接近的百分位數值，請改用 `percentileDisc`。

## 語法
<a name="percentileCont-function-syntax"></a>

```
percentileCont(expression, percentile, [group-by level])
```

## 引數
<a name="percentileCont-function-arguments"></a>

 *measure*   
指定用來運算百分位數的數值。引數必須是量值或指標。計算時會忽略 Null。

 *percentile*   
百分位數值可以是 0-100 之間的任何數值常數。百分位數值的 50 會計算度量的中位數值。

 *group-by level*   
(選用) 指定彙總分組依據的層級。新增的層級可以是與新增至視覺效果的維度無關的任何一個或多個維度。  
引數必須是維度欄位。分組依據層級必須以方括弧 `[ ]` 括起。如需詳細資訊，請參閱[關卡感知計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。

## 傳回值
<a name="percentileCont-function-return-type"></a>

函數的結果是一個數字。

## 使用須知
<a name="percentileCont-usage-notes"></a>

`percentileCont` 函數會根據指定量值中值的連續分佈來計算結果。結果是根據視覺效果中的設定對其進行排序後，透過值之間的線性插值運算得出的。它不同於 `percentileDisc`，後者只是從聚合的一組值中返回一個值。`percentileCont` 的結果可能存在也可能不存在於指定量值的值中。

## percentileCont 的範例
<a name="percentileCont-examples"></a>

下列範例有助於解釋 percentileCont 的作用原理。

**Example 比較中位數、`percentileCont` 和 `percentileDisc`**  
下列範例使用 `median`、`percentileCont` 和 `percentileDisc` 函數顯示維度 (類別) 的中位數。中位數值與 percentileCont 值相同。`percentileCont` 會插入一個值，該值可能在資料集中，也可能不在。但是，由於 `percentileDisc` 永遠會顯示資料集中存在的值，因此兩個結果可能不相符。此範例中的最後一個資料欄會顯示兩個值之間的差異。每個計算欄位的代碼如下：  
+ `50%Cont = percentileCont( example , 50 )`
+ `median = median( example )`
+ `50%Disc = percentileDisc( example , 50 )`
+ `Cont-Disc = percentileCont( example , 50 ) − percentileDisc( example , 50 )`
+ `example = left( category, 1 )` (為了使範例更簡化，我們使用此表達式將類別名稱縮短為首字母。)

```
  example     median       50%Cont      50%Disc      Cont-Disc
 -------- ----------- ------------ -------------- ------------ 
 A          22.48          22.48          22.24          0.24
 B          20.96          20.96          20.95          0.01
 C          24.92          24.92          24.92          0
 D          24.935         24.935         24.92          0.015
 E          14.48          14.48          13.99          0.49
```

**Example 第 100 個百分位數為最大值**  
下列範例顯示 `example` 欄位的各種 `percentileCont` 值。計算欄位 `n%Cont` 定義為 `percentileCont( {example} ,n)`。每個資料欄中的插入值代表落入該百分位數儲存貯體的數字。在某些情況下，實際資料值會與插入值相符。例如，資料欄 `100%Cont` 的每一列會顯示相同的值，因為 6783.02 是最大數字。  

```
 example      50%Cont     75%Cont      99%Cont    100%Cont  
 --------- ----------- ----------- ------------ ----------- 

 A             20.97       84.307      699.99      6783.02  
 B             20.99       88.84       880.98      6783.02  
 C             20.99       90.48       842.925     6783.02  
 D             21.38       85.99       808.49      6783.02
```

您也可以使用檢視或資料集中的一個或多個維度，指定在哪個層級將運算分組。這就是所謂的 LAC-A 函數。如需 LAC-A 函數的詳細資訊，請參閱[感知層級計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。下列範例根據國家/地區層級數字的連續分佈，而非視覺效果中其他維度 (區域) 的數字分佈，計算第 30 個百分位數。

```
percentileCont({Sales}, 30, [Country])
```

![\[每個國家/地區的銷售額百分位數。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/percentileCont-function-example-lac.png)


# percentileDisc (百分位數)
<a name="percentileDisc-function"></a>

`percentileDisc` 函數根據 `measure` 中的實際數字計算百分位數。它使用在欄位集中應用的分組和排序方法。`percentile` 函數是 `percentileDisc` 的別名。

使用此函數回答以下問題：此百分位數中存在哪些實際資料點？ 若要傳回資料集中最接近的百分位數值，請使用 `percentileDisc`。若要傳回資料集中可能不存在的確切百分位數值，請改用 `percentileCont`。

## 語法
<a name="percentileDisc-function-syntax"></a>

```
percentileDisc(expression, percentile, [group-by level])
```

## 引數
<a name="percentileDisc-function-arguments"></a>

 *measure*   
指定用來運算百分位數的數值。引數必須是量值或指標。計算時會忽略 Null。

 *percentile*   
百分位數值可以是 0-100 之間的任何數值常數。百分位數值的 50 會計算度量的中位數值。

 *group-by level*   
(選用) 指定彙總分組依據的層級。新增的層級可以是與新增至視覺效果的維度無關的任何一個或多個維度。  
引數必須是維度欄位。分組依據層級必須以方括弧 `[ ]` 括起。如需詳細資訊，請參閱[關卡感知計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。

## 傳回值
<a name="percentileDisc-function-return-type"></a>

函數的結果是一個數字。

## 使用須知
<a name="percentileDisc-usage-notes"></a>

`percentileDisc` 是反向分發函數，假定不連續的分發模型。它採用百分位數值和排序規格，且會傳回給定集裡的一個元素。

對於指定的百分位數值 `P`，`percentileDisc` 會在視覺效果中使用已排序的值，並傳回最小累積分佈值大於或等於 `P` 的值。

## percentileDisc 的範例
<a name="percentileDisc-examples"></a>

下列範例有助於解釋 percentileDisc 的作用原理。

**Example 比較中位數、`percentileDisc` 和 `percentileCont`**  
下列範例使用 `percentileCont`、`percentileDisc` 和 `median` 函數顯示維度 (類別) 的中位數。中位數值與 percentileCont 值相同。`percentileCont` 會插入一個值，該值可能在資料集中，也可能不在。但是，由於 `percentileDisc` 永遠會顯示資料集中最接近的值，因此兩個結果可能不相符。此範例中的最後一個資料欄會顯示兩個值之間的差異。每個計算欄位的代碼如下：  
+ `50%Cont = percentileCont( example , 50 )`
+ `median = median( example )`
+ `50%Disc = percentileDisc( example , 50 )`
+ `Cont-Disc = percentileCont( example , 50 ) − percentileDisc( example , 50 )`
+ `example = left( category, 1 )` (為了使範例更簡化，我們使用此表達式將類別名稱縮短為首字母。)

```
 example     median       50%Cont      50%Disc      Cont-Disc
 -------- ----------- ------------ -------------- ------------ 
 A          22.48          22.48          22.24          0.24
 B          20.96          20.96          20.95          0.01
 C          24.92          24.92          24.92          0
 D          24.935         24.935         24.92          0.015
 E          14.48          14.48          13.99          0.49
```

**Example 第 100 個百分位數為最大值**  
下列範例顯示 `example` 欄位的各種 `percentileDisc` 值。計算欄位 `n%Disc` 定義為 `percentileDisc( {example} ,n)`。每個資料欄中的值都是來自資料集的實際數字。  

```
 example     50%Disc      75%Disc        99%Disc      100%Disc
 -------- ----------- ------------ -------------- ------------ 
 A            20.97        73.98         699.99       6783.02
 B            42.19        88.84         820.08       6783.02
 C            30.52        90.48         733.44       6783.02
 D            41.38        85.99         901.29       6783.0
```

您也可以使用檢視或資料集中的一個或多個維度，指定在哪個層級將運算分組。這就是所謂的 LAC-A 函數。如需 LAC-A 函數的詳細資訊，請參閱[感知層級計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。下列範例根據國家/地區層級數字的連續分佈，而非視覺效果中其他維度 (區域) 的數字分佈，計算第 30 個百分位數。

```
percentile({Sales}, 30, [Country])
```

![\[每個國家/地區的銷售額百分位數。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/percentile-function-example-lac.png)


# periodToDateAvg
<a name="periodToDateAvg-function"></a>

`periodToDateAvg` 函數計算指定時間粒度 (例如一個季度) 到相對於該期間的某個時間點的指定量值中，一組數字的平均值。

## 語法
<a name="periodToDateAvg-function-syntax"></a>

```
periodToDateAvg(
	measure, 
	dateTime, 
	period, 
	endDate (optional))
```

## 引數
<a name="periodToDateAvg-function-arguments"></a>

 *measure*   
引數必須是欄位。結果會省略空值。常值無作用。

 *dateTime*   
您運算 PeriodToDate 彙總時的「日期」維度。

 *period*   
您的運算所適用的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。

 *endDate*   
(選用) 您要結束運算 periodToDate 彙總的日期維度。若省略，則預設為 `now()`。

## 範例
<a name="periodToDateAvg-function-example"></a>

下列範例計算 21 年 6 月 30 日當週每種付款類型的當週迄今最低票價金額。為簡單起見，我們僅過濾掉一筆付款。21 年 6 月 30 日是週三。快速從星期天開始。在我們的範例中是 21 年 6 月 27 日。

```
periodToDateAvg(fare_amount, pickUpDatetime, WEEK, parseDate("06-30-2021", "MM-dd-yyyy"))
```

![\[這是範例計算之結果的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/PTDAvgResults.png)


# periodToDateCount
<a name="periodToDateCount-function"></a>

`periodToDateCount` 函數計算指定時間粒度 (例如一個季度) 到相對於該期間的某個時間點的維度或量值中，值的數量 (包括重複值)。

## 語法
<a name="periodToDateCount-function-syntax"></a>

```
periodToDateCount(
	measure, 
	dateTime, 
	period, 
	endDate (optional))
```

## 引數
<a name="periodToDateCount-function-arguments"></a>

 *measure*   
引數必須是欄位。結果會省略空值。常值無作用。

 *dateTime*   
您運算 PeriodToDate 彙總時的「日期」維度。

 *period*   
您的運算所適用的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。

 *endDate*   
(選用) 您要結束運算 periodToDate 彙總的日期維度。若省略，則預設為 `now()`。

## 範例
<a name="periodToDateCount-function-example"></a>

下列範例計算 21 年 6 月 30 日當週每種付款類型的當週迄今最低票價金額。為簡單起見，我們僅過濾掉一筆付款。21 年 6 月 30 日是週三。快速從星期天開始。在我們的範例中是 21 年 6 月 27 日。

```
periodToDateCount(fare_amount, pickUpDatetime, WEEK, parseDate("06-30-2021", "MM-dd-yyyy"))
```

![\[這是範例計算之結果的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/PTDCountResults.png)


# periodToDateMax
<a name="periodToDateMax-function"></a>

`periodToDateMax` 函數會傳回指定時間粒度 (例如一個季度) 到相對於該期間的某個時間點的指定量值的最大值。

## 語法
<a name="periodToDateMax-function-syntax"></a>

```
periodToDateMax(
	measure, 
	dateTime, 
	period, 
	endDate (optional))
```

## 引數
<a name="periodToDateMax-function-arguments"></a>

 *measure*   
引數必須是欄位。結果會省略空值。常值無作用。

 *dateTime*   
您運算 PeriodToDate 彙總時的「日期」維度。

 *period*   
您的運算所適用的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。

 *endDate*   
(選用) 您要結束運算 periodToDate 彙總的日期維度。若省略，則預設為 `now()`。

## 範例
<a name="periodToDateMax-function-example"></a>

下列範例計算 21 年 6 月 30 日當週每種付款類型的當週迄今最低票價金額。為簡單起見，我們僅過濾掉一筆付款。21 年 6 月 30 日是週三。快速從星期天開始。在我們的範例中是 21 年 6 月 27 日。

```
periodToDateMax(fare_amount, pickUpDatetime, WEEK, parseDate("06-30-2021", "MM-dd-yyyy"))
```

![\[這是範例計算之結果的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/PTDMaxResults.png)


# periodToDateMedian
<a name="periodToDateMedian-function"></a>

`periodToDateMedian` 函數會傳回指定時間粒度 (例如一個季度) 到相對於該期間的某個時間點的指定量值的中位數值。

## 語法
<a name="periodToDateMedian-function-syntax"></a>

```
periodToDateMedian(
	measure, 
	dateTime, 
	period, 
	endDate (optional))
```

## 引數
<a name="periodToDateMedian-function-arguments"></a>

 *measure*   
引數必須是欄位。結果會省略空值。常值無作用。

 *dateTime*   
您運算 PeriodToDate 彙總時的「日期」維度。

 *period*   
您的運算所適用的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。

 *endDate*   
(選用) 您要結束運算 periodToDate 彙總的日期維度。若省略，則預設為 `now()`。

## 範例
<a name="periodToDateMedian-function-example"></a>

下列範例計算 21 年 6 月 30 日當週每種付款類型的當週迄今最低票價金額。為簡單起見，我們僅過濾掉一筆付款。21 年 6 月 30 日是週三。快速從星期天開始。在我們的範例中是 21 年 6 月 27 日。

```
periodToDateMedian(fare_amount, pickUpDatetime, WEEK, parseDate("06-30-2021", "MM-dd-yyyy"))
```

![\[這是範例計算之結果的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/PTDMedianResults.png)


# periodToDateMin
<a name="periodToDateMin-function"></a>

`periodToDateMin` 函數會傳回指定時間粒度 (例如一個季度) 到相對於該期間的某個時間點的指定量值或日期的最小值。

## 語法
<a name="periodToDateMin-function-syntax"></a>

```
periodToDateMin(
	measure, 
	dateTime, 
	period, 
	endDate (optional))
```

## 引數
<a name="periodToDateMin-function-arguments"></a>

 *measure*   
引數必須是欄位。結果會省略空值。常值無作用。

 *dateTime*   
您運算 PeriodToDate 彙總時的「日期」維度。

 *period*   
您的運算所適用的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。

 *endDate*   
(選用) 您要結束運算 periodToDate 彙總的日期維度。若省略，則預設為 `now()`。

## 範例
<a name="periodToDateMin-function-example"></a>

下列範例計算 21 年 6 月 30 日當週每種付款類型的當週迄今最低票價金額。為簡單起見，我們僅過濾掉一筆付款。21 年 6 月 30 日是週三。快速從星期天開始。在我們的範例中是 21 年 6 月 27 日。

```
periodToDateMin(fare_amount, pickUpDatetime, WEEK, parseDate("06-30-2021", "MM-dd-yyyy"))
```

![\[這是範例計算之結果的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/PTDMinResults.png)


# periodToDatePercentile
<a name="periodToDatePercentile-function"></a>

`periodToDatePercentile` 函數會根據指定時間粒度 (例如一個季度) 到相對於該期間的某個時間點的實際量值數字，計算百分位數。它使用在欄位集中應用的分組和排序方法。

若要傳回資料集中最接近的百分位數值，請使用 `periodToDatePercentile`。若要傳回資料集中可能不存在的確切百分位數值，請改用 `periodToDatePercentileCont`。

## 語法
<a name="periodToDatePercentile-function-syntax"></a>

```
periodToDatePercentile(
	measure, 
	percentile, 
	dateTime, 
	period, 
	endDate (optional))
```

## 引數
<a name="periodToDatePercentile-function-arguments"></a>

 *measure*   
引數必須是欄位。結果會省略空值。常值無作用。

 *percentile*   
百分位數值可以是 0-100 之間的任何數字常數。百分位數為 50 計算量值的中位數。

 *dateTime*   
您運算 PeriodToDate 彙總時的「日期」維度。

 *period*   
您的運算所適用的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。

 *endDate*   
(選用) 您要結束運算 periodToDate 彙總的日期維度。若省略，則預設為 `now()`。

## 範例
<a name="periodToDatePercentile-function-example"></a>

下列範例計算 21 年 6 月 30 日當週每個付款類型的票價金額當週迄今的第 90 個百分位數。為簡單起見，我們僅過濾掉一筆付款。21 年 6 月 30 日是週三。快速從星期天開始。在我們的範例中是 21 年 6 月 27 日。

```
periodToDatePercentile(fare_amount, 90, pickupDatetime, WEEK, parseDate("06-30-2021", "MM-dd-yyyy"))
```

![\[這是範例計算之返回內容的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/PTDPercentileResults.png)


# periodToDatePercentileCont
<a name="periodToDatePercentileCont-function"></a>

`periodToDatePercentileCont` 函數會根據指定時間粒度 (例如一個季度) 到相對於該期間的某個時間點之量值數字的連續分佈，計算百分位數。它使用在欄位集中應用的分組和排序方法。

若要傳回資料集中可能不存在的確切百分位數值，請使用 `periodToDatePercentileCont`。若要傳回資料集中最接近的百分位數值，請改用 `periodToDatePercentile`。

## 語法
<a name="periodToDatePercentileCont-function-syntax"></a>

```
periodToDatePercentileCont(
	measure, 
	percentile, 
	dateTime, 
	period, 
	endDate (optional))
```

## 引數
<a name="periodToDatePercentileCont-function-arguments"></a>

 *measure*   
引數必須是欄位。結果會省略空值。常值無作用。

 *percentile*   
百分位數值可以是 0-100 之間的任何數字常數。百分位數為 50 計算量值的中位數。

 *dateTime*   
您運算 PeriodToDate 彙總時的「日期」維度。

 *period*   
您的運算所適用的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。

 *endDate*   
(選用) 您要結束運算 periodToDate 彙總的日期維度。若省略，則預設為 `now()`。

## 範例
<a name="periodToDatePercentileCont-function-example"></a>

下列範例計算 21 年 6 月 30 日當週每個付款類型的票價金額當週迄今的第 90 個百分位數。為簡單起見，我們僅過濾掉一筆付款。21 年 6 月 30 日是週三。快速從星期天開始。在我們的範例中是 21 年 6 月 27 日。

```
periodToDatePercentileCont(fare_amount, 90, pickupDatetime, WEEK, parseDate("06-30-2021", "MM-dd-yyyy"))
```

![\[這是範例計算之返回內容的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/PTDContPercentileResults.png)


# periodToDateStDev
<a name="periodToDateStDev-function"></a>

`periodToDateStDev` 函數會根據範例計算指定時間粒度 (例如一個季度) 到相對於該期間的某個時間點的指定量值中，一組數字的標準差。

## 語法
<a name="periodToDateStDev-function-syntax"></a>

```
periodToDateStDev(
	measure, 
	dateTime, 
	period, 
	endDate (optional))
```

## 引數
<a name="periodToDateStDev-function-arguments"></a>

 *measure*   
引數必須是欄位。結果會省略空值。常值無作用。

 *dateTime*   
您運算 PeriodToDate 彙總時的「日期」維度。

 *period*   
(選用) 您的運算所針對的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。

 *endDate*   
(選用) 您要結束運算 periodToDate 彙總的日期維度。若省略，則預設為 `now()`。

## 範例
<a name="periodToDateStDev-function-example"></a>

下列範例計算 21 年 6 月 30 日當週每種付款類型的當週迄今最低票價金額。為簡單起見，我們僅過濾掉一筆付款。21 年 6 月 30 日是週三。快速從星期天開始。在我們的範例中是 21 年 6 月 27 日。

```
periodToDateStDev(fare_amount, pickUpDatetime, WEEK, parseDate("06-30-2021", "MM-dd-yyyy"))
```

![\[這是範例計算之結果的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/PTDStDevResults.png)


# periodToDateStDevP
<a name="periodToDateStDevP-function"></a>

`periodToDateStDevP` 函數會根據指定時間粒度 (例如一個季度) 到某個時間點，基於該期間中的範例，計算指定量值中一組數字的母體標準差。

## 語法
<a name="periodToDateStDevP-function-syntax"></a>

```
periodToDateStDevP(
	measure, 
	dateTime, 
	period, 
	endDate (optional))
```

## 引數
<a name="periodToDateStDevP-function-arguments"></a>

 *measure*   
引數必須是欄位。結果會省略空值。常值無作用。

 *dateTime*   
您運算 PeriodToDate 彙總時的「日期」維度。

 *period*   
您的運算所適用的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。

 *endDate*   
(選用) 您要結束運算 periodToDate 彙總的日期維度。若省略，則預設為 `now()`。

## 範例
<a name="periodToDateStDevP-function-example"></a>

下列範例計算 21 年 6 月 30 日當週每種付款類型的當週迄今最低票價金額。為簡單起見，我們僅過濾掉一筆付款。21 年 6 月 30 日是週三。快速從星期天開始。在我們的範例中是 21 年 6 月 27 日。

```
periodToDateStDevP(fare_amount, pickUpDatetime, WEEK, parseDate("06-30-2021", "MM-dd-yyyy"))
```

![\[這是範例計算之結果的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/PTDStDevPResults.png)


# periodToDateSum
<a name="periodToDateSum-function"></a>

`periodToDateSum` 函數會新增指定時間粒度 (例如一個季度) 到相對於該期間的某個時間點的指定量值。

## 語法
<a name="periodToDateSum-function-syntax"></a>

```
periodToDateSum(
	measure, 
	dateTime, 
	period, 
	endDate)
```

## 引數
<a name="periodToDateSum-function-arguments"></a>

 *measure*   
引數必須是欄位。結果會省略空值。常值無作用。

 *dateTime*   
您運算 PeriodToDate 彙總時的「日期」維度。

 *period*   
您的運算所適用的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。

 *endDate*   
(選用) 您要結束運算 periodToDate 彙總的日期維度。若省略，則預設為 `now()`。

## 範例
<a name="periodToDateSum-function-example"></a>

以下函數計算 21 年 6 月 30 日當週每種付款的當週迄今票價金額總和。為簡單起見，我們僅過濾掉一筆付款。21 年 6 月 30 日是週三。快速從星期天開始。在我們的範例中是 21 年 6 月 27 日。

```
periodToDateSum(fare_amount, pickUpDateTime, WEEK, parseDate("06-30-2021", "MM-dd-yyyy"))
```

![\[這是範例結果的圖像，帶有插圖。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/PTDSumResults.png)


# periodToDateVar
<a name="periodToDateVar-function"></a>

`periodToDateVar` 函數計算指定時間粒度 (例如一個季度) 到相對於該期間的某個時間點的指定量值中，一組數字的範例差異。

## 語法
<a name="periodToDateVar-function-syntax"></a>

```
periodToDateVar(
	measure, 
	dateTime, 
	period, 
	endDate (optional))
```

## 引數
<a name="periodToDateVar-function-arguments"></a>

 *measure*   
引數必須是欄位。結果會省略空值。常值無作用。

 *dateTime*   
您運算 PeriodToDate 彙總時的「日期」維度。

 *period*   
您的運算所適用的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。

 *endDate*   
(選用) 您要結束運算 periodToDate 彙總的日期維度。若省略，則預設為 `now()`。

## 範例
<a name="periodToDateVar-function-example"></a>

下列範例計算 21 年 6 月 30 日當週每種付款類型的當週迄今最低票價金額。為簡單起見，我們僅過濾掉一筆付款。21 年 6 月 30 日是週三。快速從星期天開始。在我們的範例中是 21 年 6 月 27 日。

```
periodToDateVar(fare_amount, pickUpDatetime, WEEK, parseDate("06-30-2021", "MM-dd-yyyy"))
```

![\[這是範例計算之結果的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/PTDVarResults.png)


# periodToDateVarP
<a name="periodToDateVarP-function"></a>

`periodToDateVarP` 函數計算指定時間粒度 (例如一個季度) 到相對於該期間的某個時間點的指定量值中，一組數字的母體差異。

## 語法
<a name="periodToDateVarP-function-syntax"></a>

```
periodToDateVarP(
	measure, 
	dateTime, 
	period, 
	endDate (optional))
```

## 引數
<a name="periodToDateVarP-function-arguments"></a>

 *measure*   
引數必須是欄位。結果會省略空值。常值無作用。

 *dateTime*   
您運算 PeriodToDate 彙總時的「日期」維度。

 *period*   
您的運算所適用的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。

 *endDate*   
(選用) 您要結束運算 periodToDate 彙總的日期維度。若省略，則預設為 `now()`。

## 範例
<a name="periodToDateVarP-function-example"></a>

下列範例計算 21 年 6 月 30 日當週每種付款類型的當週迄今最低票價金額。為簡單起見，我們僅過濾掉一筆付款。21 年 6 月 30 日是週三。快速從星期天開始。在我們的範例中是 21 年 6 月 27 日。

```
periodToDateVarP(fare_amount, pickUpDatetime, WEEK, parseDate("06-30-2021", "MM-dd-yyyy"))
```

![\[這是範例計算之結果的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/PTDVarPResults.png)


# stdev
<a name="stdev-function"></a>

`stdev` 函數會計算指定量值中一組數字的標準差 (根據範例依照選擇的一個或多個維度分組)。

## 語法
<a name="stdev-function-syntax"></a>

```
stdev(measure, [group-by level])
```

## 引數
<a name="stdev-function-arguments"></a>

 *measure*   
引數必須是量值。結果會省略空值。常值無作用。引數必須是欄位。

 *group-by level*   
(選用) 指定彙總分組依據的層級。新增的層級可以是與新增至視覺效果的維度無關的任何一個或多個維度。  
引數必須是維度欄位。分組依據層級必須以方括弧 `[ ]` 括起。如需詳細資訊，請參閱[關卡感知計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。

## 範例
<a name="stdev-function-example"></a>

下列範例使用所記錄的測試分數範例，傳回一個類別的測試分數的標準差。

```
stdev({Score})
```

您也可以使用檢視或資料集中的一個或多個維度，指定在哪個層級將運算分組。這就是所謂的 LAC-A 函數。如需 LAC-A 函數的詳細資訊，請參閱[感知層級計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。下列範例計算主題層級的測試分數標準差，但不會計算視覺效果中其他維度 (類別) 的測試分數標準差。

```
stdev({Score}, [Subject])
```

# stdevp
<a name="stdevp-function"></a>

`stdevp` 函數會計算指定量值中一組數字的母體標準差 (依照選擇的一個或多個維度分組)。

## 語法
<a name="stdevp-function-syntax"></a>

```
stdevp(measure, [group-by level])
```

## 引數
<a name="stdevp-function-arguments"></a>

 *measure*   
引數必須是量值。結果會省略空值。常值無作用。引數必須是欄位。

 *group-by level*   
(選用) 指定彙總分組依據的層級。新增的層級可以是與新增至視覺效果的維度無關的任何一個或多個維度。  
引數必須是維度欄位。分組依據層級必須以方括弧 `[ ]` 括起。如需詳細資訊，請參閱[關卡感知計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。

## 範例
<a name="stdev-function-example"></a>

下列範例使用所記錄的所有分數，傳回一個類別的測試分數的標準差。

```
stdevp({Score})
```

您也可以使用檢視或資料集中的一個或多個維度，指定在哪個層級將運算分組。這就是所謂的 LAC-A 函數。如需 LAC-A 函數的詳細資訊，請參閱[感知層級計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。下列範例使用所記錄的所有分數，計算主題層級的測試分數標準差，但不會計算視覺效果中其他維度 (類別) 的測試分數標準差。

```
stdevp({Score}, [Subject])
```

# stdevIf
<a name="stdevIf-function"></a>

根據條件式陳述，`stdevIf` 函數會計算指定量值中一組數字的標準差 (根據範例依照選擇的一個或多個維度分組)。

## 語法
<a name="stdevIf-function-syntax"></a>

```
stdevIf(measure, conditions)
```

## 引數
<a name="stdevIf-function-arguments"></a>

 *measure*   
引數必須是量值。結果會省略空值。常值無作用。引數必須是欄位。

 *condition*   
單一陳述式中的一個或多個條件。

# stdevpIf
<a name="stdevpIf-function"></a>

根據條件式陳述，`stdevpIf` 函數會計算指定量值中一組數字的標準差 (根據母體偏差依照選擇的一個或多個維度分組)。

## 語法
<a name="stdevpIf-function-syntax"></a>

```
stdevpIf(measure, conditions)
```

## 引數
<a name="stdevpIf-function-arguments"></a>

 *measure*   
引數必須是量值。結果會省略空值。常值無作用。引數必須是欄位。

 *condition*   
單一陳述式中的一個或多個條件。

# sum
<a name="sum-function"></a>

`sum` 函數會新增指定量值中的一組數字 (依照選擇的一個或多個維度分組)。例如，`sum(profit amount)` 會傳回依照 (選用) 選擇之維度分組的營利總額。

## 語法
<a name="sum-function-syntax"></a>

```
sum(measure, [group-by level])
```

## 引數
<a name="sum-function-arguments"></a>

 *measure*   
引數必須是量值。結果會省略空值。常值無作用。引數必須是欄位。

 *group-by level*   
(選用) 指定彙總分組依據的層級。新增的層級可以是與新增至視覺效果的維度無關的任何一個或多個維度。  
引數必須是維度欄位。分組依據層級必須以方括弧 `[ ]` 括起。如需詳細資訊，請參閱[關卡感知計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。

## 範例
<a name="sum-function-example"></a>

下列範例傳回銷售額總和。

```
sum({Sales})
```

您也可以使用檢視或資料集中的一個或多個維度，指定在哪個層級將運算分組。這就是所謂的 LAC-A 函數。如需 LAC-A 函數的詳細資訊，請參閱[感知層級計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。下列範例計算國家/地區層級的銷售額總和，但不會計算視覺效果中其他維度 (區域合產品) 的銷售額總和。

```
sum(Sales, [Country])
```

![\[每個國家/地區的銷售額總和。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/sum-function-example.png)


# sumIf
<a name="sumIf-function"></a>

根據條件陳述式，`sumIf` 函數會將指定量值中的一組數字相加 (依照選擇的一個或多個維度分組)。例如，`sumIf(ProdRev,CalendarDay >= ${BasePeriodStartDate} AND CalendarDay <= ${BasePeriodEndDate} AND SourcingType <> 'Indirect')` 將傳回當條件判斷值為 true 時，依照 (選用) 所選的維度分組的營利總額。

## 語法
<a name="sumIf-function-syntax"></a>

```
sumIf(measure, conditions)
```

## 引數
<a name="sumIf-function-arguments"></a>

 *measure*   
引數必須是量值。結果會省略空值。常值無作用。引數必須是欄位。

 *condition*   
單一陳述式中的一個或多個條件。

## 範例
<a name="sumIf-function-example"></a>

如果 `Segment` 等於 `SMB`，下列範例使用帶 `sumIf` 的計算欄位來顯示銷售額。

```
sumIf(Sales, Segment=’SMB’)
```

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/sumIfCalc.png)


如果 `Segment` 等於 `SMB` 且 `Order Date` 大於 2022 年，下列範例使用帶 `sumIf` 的計算欄位來顯示銷售額。

```
sumIf(Sales, Segment=’SMB’ AND {Order Date} >=’2022-01-01’)
```

# var
<a name="var-function"></a>

`var` 函數會計算指定量值中一組數字的範例差異 (依照選擇的一個或多個維度分組)。

## 語法
<a name="var-function-syntax"></a>

```
var(measure, [group-by level])
```

## 引數
<a name="var-function-arguments"></a>

 *measure*   
引數必須是量值。結果會省略空值。常值無作用。引數必須是欄位。

 *group-by level*   
(選用) 指定彙總分組依據的層級。新增的層級可以是與新增至視覺效果的維度無關的任何一個或多個維度。  
引數必須是維度欄位。分組依據層級必須以方括弧 `[ ]` 括起。如需詳細資訊，請參閱[關卡感知計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。

## 範例
<a name="var-function-example"></a>

下列範例傳回測試分數範例的變異數。

```
var({Scores})
```

您也可以使用檢視或資料集中的一個或多個維度，指定在哪個層級將運算分組。這就是所謂的 LAC-A 函數。如需 LAC-A 函數的詳細資訊，請參閱[感知層級計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。下列範例傳回主題層級的測試分數範例的變異數，但不會計算視覺效果中其他維度 (類別) 的範例變異數。

```
var({Scores}, [Subject]
```

# varIf
<a name="varIf-function"></a>

根據條件式陳述，`varIf` 函數會計算指定量值中一組數字的差異 (根據範例依照選擇的一個或多個維度分組)。

## 語法
<a name="varIf-function-syntax"></a>

```
varIf(measure, conditions)
```

## 引數
<a name="varIf-function-arguments"></a>

 *measure*   
引數必須是量值。結果會省略空值。常值無作用。引數必須是欄位。

 *condition*   
單一陳述式中的一個或多個條件。

# varp
<a name="varp-function"></a>

`varp` 函數會計算指定量值中一組數字的母體差異 (依照選擇的一個或多個維度分組)。

## 語法
<a name="varp-function-syntax"></a>

```
varp(measure, [group-by level])
```

## 引數
<a name="varp-function-arguments"></a>

 *measure*   
引數必須是量值。結果會省略空值。常值無作用。引數必須是欄位。

 *group-by level*   
(選用) 指定彙總分組依據的層級。新增的層級可以是與新增至視覺效果的維度無關的任何一個或多個維度。  
引數必須是維度欄位。分組依據層級必須以方括弧 `[ ]` 括起。如需詳細資訊，請參閱[關卡感知計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。

## 範例
<a name="varp-function-example"></a>

下列範例傳回測試分數的母體變異數。

```
varp({Scores})
```

您也可以使用檢視或資料集中的一個或多個維度，指定在哪個層級將運算分組。這就是所謂的 LAC-A 函數。如需 LAC-A 函數的詳細資訊，請參閱[感知層級計算 - 彙總 (LAC-A) 函數](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations-aggregate.html)。下列範例傳回主題層級測試分數的母體變異數，但不會計算視覺效果中其他維度 (類別) 的母體變異數。

```
varp({Scores}, [Subject]
```

# varpIf
<a name="varpIf-function"></a>

根據條件式陳述，`varpIf` 函數會計算指定量值中一組數字的差異 (根據母體偏差依照選擇的一個或多個維度分組)。

## 語法
<a name="varpIf-function-syntax"></a>

```
varpIf(measure, conditions)
```

## 引數
<a name="varpIf-function-arguments"></a>

 *measure*   
引數必須是量值。結果會省略空值。常值無作用。引數必須是欄位。

 *condition*   
單一陳述式中的一個或多個條件。

# 資料表計算函數
<a name="table-calculation-functions"></a>

要分析特定視覺化效果中的資料時，您可以對目前的資料集套用特定資料表計算，以探索維度如何影響度量 (或彼此影響)。*視覺化資料*是基於您目前的資料集的結果集，並套用了所有篩選器、欄位選項和自訂。若要查看這個結果集確切為何，可以將視覺效果匯出到一個檔案中。*資料表計算函數*會對資料執行運算，以顯示欄位之間的關係。

在本節中，您可以在 Amazon Quick 中的視覺化資料上執行的資料表計算中找到可用的函數清單。

若要檢視依類別排序且具有簡短定義的函數清單，請參閱[依類別排序的函數](https://docs.aws.amazon.com/quicksight/latest/user/functions-by-category.html)。

**Topics**
+ [

# difference
](difference-function.md)
+ [

# distinctCountOver
](distinctCountOver-function.md)
+ [

# lag
](lag-function.md)
+ [

# lead
](lead-function.md)
+ [

# percentDifference
](percentDifference-function.md)
+ [

# avgOver
](avgOver-function.md)
+ [

# countOver
](countOver-function.md)
+ [

# maxOver
](maxOver-function.md)
+ [

# minOver
](minOver-function.md)
+ [

# percentileOver
](percentileOver-function.md)
+ [

# percentileContOver
](percentileContOver-function.md)
+ [

# percentileDiscOver
](percentileDiscOver-function.md)
+ [

# percentOfTotal
](percentOfTotal-function.md)
+ [

# periodOverPeriodDifference
](periodOverPeriodDifference-function.md)
+ [

# periodOverPeriodLastValue
](periodOverPeriodLastValue-function.md)
+ [

# periodOverPeriodPercentDifference
](periodOverPeriodPercentDifference-function.md)
+ [

# periodToDateAvgOverTime
](periodToDateAvgOverTime-function.md)
+ [

# periodToDateCountOverTime
](periodToDateCountOverTime-function.md)
+ [

# periodToDateMaxOverTime
](periodToDateMaxOverTime-function.md)
+ [

# periodToDateMinOverTime
](periodToDateMinOverTime-function.md)
+ [

# periodToDateSumOverTime
](periodToDateSumOverTime-function.md)
+ [

# stdevOver
](stdevOver-function.md)
+ [

# stdevpOver
](stdevpOver-function.md)
+ [

# varOver
](varOver-function.md)
+ [

# varpOver
](varpOver-function.md)
+ [

# sumOver
](sumOver-function.md)
+ [

# denseRank
](denseRank-function.md)
+ [

# rank
](rank-function.md)
+ [

# percentileRank
](percentileRank-function.md)
+ [

# runningAvg
](runningAvg-function.md)
+ [

# runningCount
](runningCount-function.md)
+ [

# runningMax
](runningMax-function.md)
+ [

# runningMin
](runningMin-function.md)
+ [

# runningSum
](runningSum-function.md)
+ [

# firstValue
](firstValue-function.md)
+ [

# lastValue
](lastValue-function.md)
+ [

# windowAvg
](windowAvg-function.md)
+ [

# windowCount
](windowCount-function.md)
+ [

# windowMax
](windowMax-function.md)
+ [

# windowMin
](windowMin-function.md)
+ [

# windowSum
](windowSum-function.md)

# difference
<a name="difference-function"></a>

`difference` 函數會計算基於一組分割和排序之間的不同量值，以及基於彼此的量值。

`difference` 函數支援與根據 SPICE 的分析和直接查詢資料集搭配使用。

## 語法
<a name="difference-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
difference
	(
	     measure 
	     ,[ sortorder_field ASC_or_DESC, ... ]
	     ,lookup_index,
	     ,[ partition field, ... ] 
	)
```

## 引數
<a name="difference-function-arguments"></a>

 *measure*   
您要查看差異之彙總的度量。

 *sort order field*   
您要排序資料依據的一或多個度量和維度，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *lookup index*   
查詢索引可為正值或負值，代表排序中的下一個資料列 (正值) 或排序中的上一個資料列 (負值)。查詢索引可以是 1–2,147,483,647。對於 MySQL、MariaDB 和 Aurora MySQL 相容版引擎，查詢索引僅限為 1。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

## 範例
<a name="difference-function-example"></a>

以下範例會計算 `sum({Billed Amount})` 之間的差異，依 `Customer Region` 遞增排序，與下一個資料列比較，並且依 `Service Line` 分割。

```
difference(
     sum( {Billed Amount} ), 
     [{Customer Region} ASC],
     1,
     [{Service Line}]
)
```

以下範例會計算 `Billed Amount` 相較於下一行之間的差異，分割依據 (`[{Customer Region}]`)。資料表計算中的欄位位於視覺化效果的欄位區。

```
difference(
     sum( {Billed Amount} ), 
     [{Customer Region} ASC],
     1
)
```

紅色反白顯示會說明將每個金額加到下一個金額的方式 (a \$1 b = c)，以顯示金額 a 和 c 之間的差異。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/differenceCalc.png)


# distinctCountOver
<a name="distinctCountOver-function"></a>

`distinctCountOver` 函數會計算由指定的屬性在指定級別分區的運算元的不同計數。支援的等級為 `PRE_FILTER` 和 `PRE_AGG`。運算元必須未彙總。

## 語法
<a name="distinctCountOver-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
distinctCountOver
(
  measure or dimension field 
  ,[ partition_field, ... ]  
  ,calculation level 
)
```

## 引數
<a name="distinctCountOver-function-arguments"></a>

 *measure or dimension field*   
您想要執行度量或維度計算的對象，例如 `{Sales Amt}`。有效值為 `PRE_FILTER` 和 `PRE_AGG`。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *calculation level*  
(選用) 指定要使用的計算層級：  
+ **`PRE_FILTER`** – 先計算預先篩選條件，再計算資料集篩選條件。
+ **`PRE_AGG`** – 先計算預先彙總計算，再將彙總和前後 *N* 個篩選器套用到視覺效果。
空白時此值預設為 `POST_AGG_FILTER`。`POST_AGG_FILTER` 不是此作業的有效層級，會產生錯誤訊息。如需詳細資訊，請參閱[在 Amazon Quick 中使用關卡感知計算](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations.html)。

## 範例
<a name="distinctCountOver-function-example"></a>

以下範例會取得透過 `City` 和 `State` 在 `PRE_AGG` 層級分割的不同 `Sales` 計數。

```
distinctCountOver
(
  Sales, 
  [City, State], PRE_AGG
)
```

# lag
<a name="lag-function"></a>

`lag` 函數會計算根據指定的分割和排序量值的滯後 (前面) 值。

`lag` 支援與根據 SPICE 的分析和直接查詢資料集搭配使用。

## 語法
<a name="lag-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
lag
(
lag
(
 measure
 ,[ sortorder_field ASC_or_DESC, ... ] 
 ,lookup_index
 ,[ partition_field, ... ] 
)] 
)
```

## 引數
<a name="lag-function-arguments"></a>

*measure*   
您要取得滯後的度量。這可以包含彙總，例如 `sum({Sales Amt})`。

*sort order field*   
您要排序資料依據的一或多個度量和維度，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

*lookup index*   
查詢索引可為正值或負值，代表排序中的下一個資料列 (正值) 或排序中的上一個資料列 (負值)。查詢索引可以是 1–2,147,483,647。對於 MySQL、MariaDB 和 Amazon Aurora MySQL 相容版引擎，查詢索引僅限為 1。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

## 範例
<a name="lag-function-example"></a>

以下範例會計算上一個 `sum(sales)`，依來源州分割，對 `cancellation_code` 按遞增排序順序。

```
lag
(
     sum(Sales), 
     [cancellation_code ASC], 
     1, 
     [origin_state_nm]
)
```

以下範例使用帶有 `lag` 的計算欄位，顯示在目前資料列金額旁的上一個資料列的銷售金額，依 `Order Date` 排序。資料表計算中的欄位位於視覺化效果的欄位區。

```
lag(
     sum({Sales}),
     [{Order Date} ASC],
     1
)
```

以下螢幕擷取畫面顯示範例的結果。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/lagCalc.png)


以下範例使用帶有 `lag` 的計算欄位，顯示在目前資料列金額旁的上一個資料列的銷售金額，依 `Order Date` 排序、`Segment` 分割。

```
lag
	(
		sum(Sales),
		[Order Date ASC],
		1, [Segment]
	)
```

以下螢幕擷取畫面顯示範例的結果。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/lagCalc2.png)


# lead
<a name="lead-function"></a>

`lead` 函數會根據指定的分割和排序計算量值的前導 (後面) 值。

## 語法
<a name="lead-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
lead
(
     measure
     ,[ sortorder_field ASC_or_DESC, ... ]  
     ,lookup_index,
     ,[ partition_field, ... ]
)
```

## 引數
<a name="lead-function-arguments"></a>

*measure*   
您要取得前導的度量。這可以包含彙總，例如 `sum({Sales Amt})`。

*sort order field*   
您要排序資料依據的一或多個度量和維度，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

*lookup index*   
查詢索引可為正值或負值，代表排序中的下一個資料列 (正值) 或排序中的上一個資料列 (負值)。查詢索引可以是 1–2,147,483,647。對於 MySQL、MariaDB 和 Amazon Aurora MySQL 相容版引擎，查詢索引僅限為 1。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

## 範例
<a name="lead-function-example"></a>

以下範例會計算下一個 `sum(sales)`，依來源州分割，對 `cancellation_code` 按遞增排序順序。

```
lead
(
     sum(sales), 
     [cancellation_code ASC], 
     1, 
     [origin_state_nm]
)
```

以下範例使用帶有前導的計算欄位，顯示在目前資料列的金額旁的下一個資料列的金額，依 `Customer Segment` 排序。資料表計算中的欄位位於視覺化效果的欄位區。

```
lead(
     sum({Billed Amount}),
     [{Customer Segment} ASC],
     1
)
```

以下螢幕擷取畫面顯示範例的結果。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/leadCalc.png)


# percentDifference
<a name="percentDifference-function"></a>

`percentDifference` 函數會根據分割、排序和查詢索引計算目前值和比較值之間的百分比差異。

## 語法
<a name="percentDifference-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
percentDifference
(
  measure 
  ,[ sortorder_field ASC_or_DESC, ... ]  
  ,lookup index
  ,[ partition_field, ... ] 
)
```

## 引數
<a name="percentDifference-function-arguments"></a>

 *measure*   
您要查看百分比差異之彙總的度量。

 *sort order field*   
您要排序資料依據的一或多個度量和維度，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *lookup index*   
查詢索引可為正值或負值，代表排序中的下一個資料列 (正值) 或排序中的上一個資料列 (負值)。查詢索引可以是 1–2,147,483,647。對於 MySQL、MariaDB 和 Aurora MySQL 相容版引擎，查詢索引僅限為 1。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

## 範例
<a name="percentDifference-function-example"></a>

以下範例會計算目前和之前的 `State` 的 `sum(Sales)` 之間的百分比差異，依 `Sales` 排序。

```
percentDifference
(
  sum(amount), 
  [sum(amount) ASC],
  -1, 
  [State]
)
```

以下範例會計算特定 `Billed Amount` 屬於另一個 `Billed Amount` 的百分比，依據 (`[{Customer Region} ASC]`) 排序。資料表計算中的欄位位於視覺化效果的欄位區。

```
percentDifference
(
  sum( {Billed Amount} ), 
  [{Customer Region} ASC],
  1
)
```

以下螢幕擷取畫面顯示範例的結果。紅色字母顯示 `Customer Region` **APAC** 的 `Billed Amount` 總計較 **EMEA** 區域的金額少 24%。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/percentDifference.png)


# avgOver
<a name="avgOver-function"></a>

`avgOver` 函數會計算依維度清單分割的量值平均值。

## 語法
<a name="avgOver-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
avgOver
(
     measure 
     ,[ partition_field, ... ] 
     ,calculation level 
)
```

以下範例會顯示 `Customer Region` 的 `Billed Amount` 平均值。資料表計算中的欄位位於視覺化效果的欄位區。

```
avgOver
(
     sum({Billed Amount}),
     [{Customer Region}]
)
```

以下螢幕擷取畫面顯示範例的結果。隨著 `Service Line` 的加入，每項的收費金額總計會顯示，並且在計算欄位中顯示這三個值的平均值。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/avgOver.png)


## 引數
<a name="avgOver-function-arguments"></a>

 *measure*   
您想要執行度量計算的對象，例如 `sum({Sales Amt})`。如果計算層級設定為 `NULL` 或 `POST_AGG_FILTER`，請使用彙總。如果計算層級設為 `PRE_FILTER` 或 `PRE_AGG`，請勿使用彙總。

 *partition field*  
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *calculation level*  
(選用) 指定要使用的計算層級：  
+ **`PRE_FILTER`** – 先計算預先篩選條件，再計算資料集篩選條件。
+ **`PRE_AGG`** – 先計算預先彙總計算，再將彙總和前後 *N* 個篩選器套用到視覺效果。
+ **`POST_AGG_FILTER`** – (預設值) 顯示視覺效果時計算資料表計算。
空白時此值會預設為 `POST_AGG_FILTER`。如需詳細資訊，請參閱[在 Quick 中使用層級感知計算](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations.html)。

## 範例
<a name="avgOver-function-example"></a>

以下範例會取得依 `City` 和 `State` 分割的 `sum(Sales)` 平均值。

```
avgOver
(
     sum(Sales), 
     [City, State]
)
```

# countOver
<a name="countOver-function"></a>

`countOver` 函數會計算依維度清單分割的維度或量值的計數。

## 語法
<a name="countOver-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
countOver
(
  measure or dimension field 
  ,[ partition_field, ... ]  
  ,calculation level 
)
```

## 引數
<a name="countOver-function-arguments"></a>

 *measure or dimension field*   
您想要執行度量或維度計算的對象，例如 `sum({Sales Amt})`。如果計算層級設定為 `NULL` 或 `POST_AGG_FILTER`，請使用彙總。如果計算層級設為 `PRE_FILTER` 或 `PRE_AGG`，請勿使用彙總。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *calculation level*  
(選用) 指定要使用的計算層級：  
+ **`PRE_FILTER`** – 先計算預先篩選條件，再計算資料集篩選條件。
+ **`PRE_AGG`** – 先計算預先彙總計算，再將彙總和前後 *N* 個篩選器套用到視覺效果。
+ **`POST_AGG_FILTER`** – (預設值) 顯示視覺效果時計算資料表計算。
空白時此值會預設為 `POST_AGG_FILTER`。如需詳細資訊，請參閱[在 Quick 中使用層級感知計算](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations.html)。

## 範例
<a name="countOver-function-example"></a>

以下範例會取得依 `City` 和 `State` 分割的 `Sales` 計數。

```
countOver
(
  Sales, 
  [City, State]
)
```

以下範例會取得依 `City` 和 `State` 分割的 `{County}` 計數。

```
countOver
(
  {County}, 
  [City, State]
)
```

以下範例會顯示 `Customer Region` 的 `Billed Amount` 計數。資料表計算中的欄位位於視覺化效果的欄位區。

```
countOver
(
  sum({Billed Amount}),
  [{Customer Region}]
)
```

以下螢幕擷取畫面顯示範例的結果。由於沒有牽涉到其他欄位，該計數是屬於每一個區域。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/countOver1.png)


如果您新增額外的欄位，則計數會變更。在以下螢幕擷取畫面中，我們新增 `Customer Segment` 和 `Service Line`。這些欄位的每個包含三個唯一的值。具有 3 個區段、3 服務行和 3 個區域，計算欄位顯示 9。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/countOver2.png)


如果您將這兩個額外的欄位新增到計算欄位中的分割欄位 (`countOver( sum({Billed Amount}), [{Customer Region}, {Customer Segment}, {Service Line}]`)，則每個資料列的計數又會是 1。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/countOver.png)


# maxOver
<a name="maxOver-function"></a>

`maxOver` 函數會計算依維度清單分割的量值或日期的最大值。

## 語法
<a name="maxOver-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
maxOver
(
     measure 
     ,[ partition_field, ... ] 
     ,calculation level 
)
```

## 引數
<a name="maxOver-function-arguments"></a>

 *measure*   
您想要執行度量計算的對象，例如 `sum({Sales Amt})`。如果計算層級設定為 `NULL` 或 `POST_AGG_FILTER`，請使用彙總。如果計算層級設為 `PRE_FILTER` 或 `PRE_AGG`，請勿使用彙總。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *calculation level*  
(選用) 指定要使用的計算層級：  
+ **`PRE_FILTER`** – 先計算預先篩選條件，再計算資料集篩選條件。
+ **`PRE_AGG`** – 先計算預先彙總計算，再將彙總和前後 *N* 個篩選器套用到視覺效果。
+ **`POST_AGG_FILTER`** – (預設值) 顯示視覺效果時計算資料表計算。
空白時此值會預設為 `POST_AGG_FILTER`。如需詳細資訊，請參閱[在 Quick 中使用層級感知計算](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations.html)。

## 範例
<a name="maxOver-function-example"></a>

以下範例會計算 `sum(Sales)` 的最大值，依據 `City` 和 `State` 分割。

```
maxOver
(
     sum(Sales), 
     [City, State]
)
```

以下範例會顯示 `Customer Region` 的 `Billed Amount` 最大值。資料表計算中的欄位位於視覺化效果的欄位區。

```
maxOver
(
     sum({Billed Amount}),
     [{Customer Region}]
)
```

以下螢幕擷取畫面顯示範例的結果。隨著 `Service Line` 的加入，每項的收費金額總計會顯示，並且在計算欄位中顯示這三個值的最大值。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/maxOver.png)


# minOver
<a name="minOver-function"></a>

`minOver` 函數會計算依維度清單分割的量值或日期的最小值。

## 語法
<a name="minOver-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
minOver
(
     measure 
     ,[ partition_field, ... ] 
     ,calculation level 
)
```

## 引數
<a name="minOver-function-arguments"></a>

*measure*   
您想要執行度量計算的對象，例如 `sum({Sales Amt})`。如果計算層級設定為 `NULL` 或 `POST_AGG_FILTER`，請使用彙總。如果計算層級設為 `PRE_FILTER` 或 `PRE_AGG`，請勿使用彙總。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *calculation level*  
(選用) 指定要使用的計算層級：  
+ **`PRE_FILTER`** – 先計算預先篩選條件，再計算資料集篩選條件。
+ **`PRE_AGG`** – 先計算預先彙總計算，再將彙總和前後 *N* 個篩選器套用到視覺效果。
+ **`POST_AGG_FILTER`** – (預設值) 顯示視覺效果時計算資料表計算。
空白時此值會預設為 `POST_AGG_FILTER`。如需詳細資訊，請參閱[在 Quick 中使用層級感知計算](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations.html)。

## 範例
<a name="minOver-function-example"></a>

以下範例會計算 `sum(Sales)` 的最小值，依據 `City` 和 `State` 分割。

```
minOver
(     
     sum(Sales), 
     [City, State]
)
```

以下範例會顯示 `Customer Region` 的 `Billed Amount` 最小值。資料表計算中的欄位位於視覺化效果的欄位區。

```
minOver
(
     sum({Billed Amount}),
     [{Customer Region}]
)
```

以下螢幕擷取畫面顯示範例的結果。隨著 `Service Line` 的加入，每項的收費金額總計會顯示，並且在計算欄位中顯示這三個值的最小值。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/minOver.png)


# percentileOver
<a name="percentileOver-function"></a>

`percentileOver` 函數會計算依維度清單分割之量值的第 *n* 個百分位數。Quick 中有兩種可用的`percentileOver`計算類型：
+ [https://docs.aws.amazon.com/quicksight/latest/user/percentileContOver-function.html](https://docs.aws.amazon.com/quicksight/latest/user/percentileContOver-function.html) 使用線性插值來判斷結果。
+ [https://docs.aws.amazon.com/quicksight/latest/user/percentileDiscOver-function.html](https://docs.aws.amazon.com/quicksight/latest/user/percentileDiscOver-function.html) 使用實際值來判斷結果。

`percentileOver` 函數是 `percentileDiscOver` 的別名。

# percentileContOver
<a name="percentileContOver-function"></a>

`percentileContOver` 函數根據 `measure` 中的實際數字計算百分位數。它使用在欄位集中應用的分組和排序方法。結果會在指定的計算層級依指定的維度分割。

使用此函數回答以下問題：此百分位數中存在哪些實際資料點？ 若要傳回資料集中最接近的百分位數值，請使用 `percentileDiscOver`。若要傳回資料集中可能不存在的確切百分位數值，請改用 `percentileContOver`。

## 語法
<a name="percentileContOver-function-syntax"></a>

```
percentileContOver (
    measure
  , percentile-n
  , [partition-by, …]
  , calculation-level
)
```

## 引數
<a name="percentileContOver-function-arguments"></a>

 *measure*   
指定用來運算百分位數的數值。引數必須是量值或指標。計算時會忽略 Null。

 *percentile-n*   
百分位數值可以是 0-100 之間的任何數值常數。百分位數值的 50 會計算度量的中位數值。

 *partition-by*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。如果有不只一個字，則清單中的每個欄位會括在 \$1 \$1 (大括弧) 中。整個清單會以 [ ] (方括弧) 括住。

 *calculation-level*   
 指定在何處執行與評估順序相關的計算。支援的計算層級有三種：  
+ PRE\$1FILTER
+ PRE\$1AGG
+ POST\$1AGG\$1FILTER (預設值) – 若要使用此計算層級，請在 `measure` 上指定彙總，例如 `sum(measure)`。
在視覺化中發生彙總之前，會套用 PRE\$1FILTER 和 PRE\$1AGG。對於這兩個計算層級，您無法在計算欄位運算式中指定 `measure` 的彙總。若要進一步了解計算層級及其何時套用，請參閱 [Amazon Quick 中的評估順序](https://docs.aws.amazon.com/quicksight/latest/user/order-of-evaluation-quicksight.html)和 [Quick 中的使用層級感知計算](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations.html)。

## 傳回值
<a name="percentileContOver-function-return-type"></a>

函數的結果是一個數字。

## percentileContOver 的範例
<a name="percentileContOver-examples"></a>

下列範例有助於解釋 percentileContOver 的作用原理。

**Example 比較中位數的計算層級**  
下列範例透過 `percentileContOver` 函數使用不同計算層級顯示維度 (類別) 的中位數。百分位數為 50。資料集會依區域欄位篩選。每個計算欄位的代碼如下：  
+ `example = left( category, 1 )` (一個簡單的例子。)
+ `pre_agg = percentileContOver ( {Revenue} , 50 , [ example ] , PRE_AGG)`
+ `pre_filter = percentileContOver ( {Revenue} , 50 , [ example ] , PRE_FILTER) `
+ `post_agg_filter = percentileContOver ( sum ( {Revenue} ) , 50 , [ example ], POST_AGG_FILTER )`

```
example   pre_filter     pre_agg      post_agg_filter
------------------------------------------------------
0            106,728     119,667            4,117,579
1            102,898      95,946            2,307,547
2             97,807      93,963              554,570  
3            101,043     112,585            2,709,057
4             96,533      99,214            3,598,358
5            106,293      97,296            1,875,648
6             97,118      69,159            1,320,672
7            100,201      90,557              969,807
```

# percentileDiscOver
<a name="percentileDiscOver-function"></a>

`percentileDiscOver` 函數根據 `measure` 中的實際數字計算百分位數。它使用在欄位集中應用的分組和排序方法。結果會在指定的計算層級依指定的維度分割。`percentileOver` 函數是 `percentileDiscOver` 的別名。

使用此函數回答以下問題：此百分位數中存在哪些實際資料點？ 若要傳回資料集中最接近的百分位數值，請使用 `percentileDiscOver`。若要傳回資料集中可能不存在的確切百分位數值，請改用 `percentileContOver`。

## 語法
<a name="percentileDiscOver-function-syntax"></a>

```
percentileDiscOver (
     measure
   , percentile-n
   , [partition-by, …]
   , calculation-level
)
```

## 引數
<a name="percentileDiscOver-function-arguments"></a>

 *measure*   
指定用來運算百分位數的數值。引數必須是量值或指標。計算時會忽略 Null。

 *percentile-n*   
百分位數值可以是 0-100 之間的任何數值常數。百分位數值的 50 會計算度量的中位數值。

 *partition-by*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。如果有不只一個字，則清單中的每個欄位會括在 \$1 \$1 (大括弧) 中。整個清單會以 [ ] (方括弧) 括住。

 *calculation-level*   
 指定在何處執行與評估順序相關的計算。支援的計算層級有三種：  
+ PRE\$1FILTER
+ PRE\$1AGG
+ POST\$1AGG\$1FILTER (預設值) – 若要使用此計算層級，您必須在 `measure` 上指定彙總，例如 `sum(measure)`。
在視覺化中發生彙總之前，會套用 PRE\$1FILTER 和 PRE\$1AGG。對於這兩個計算層級，您無法在計算欄位運算式中指定 `measure` 的彙總。若要進一步了解計算層級及其何時套用，請參閱 [Amazon Quick 中的評估順序](https://docs.aws.amazon.com/quicksight/latest/user/order-of-evaluation-quicksight.html)和 [Quick 中的使用層級感知計算](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations.html)。

## 傳回值
<a name="percentileDiscOver-function-return-type"></a>

函數的結果是一個數字。

## percentileDiscOver 的範例
<a name="percentileDiscOver-examples"></a>

下列範例有助於解釋 percentileDiscOver 的作用原理。

**Example 比較中位數的計算層級**  
下列範例透過 `percentileDiscOver` 函數使用不同計算層級顯示維度 (類別) 的中位數。百分位數為 50。資料集會依區域欄位篩選。每個計算欄位的代碼如下：  
+ `example = left( category, 1 )` (一個簡單的例子。)
+ `pre_agg = percentileDiscOver ( {Revenue} , 50 , [ example ] , PRE_AGG)`
+ `pre_filter = percentileDiscOver ( {Revenue} , 50 , [ example ] , PRE_FILTER) `
+ `post_agg_filter = percentileDiscOver ( sum ( {Revenue} ) , 50 , [ example ], POST_AGG_FILTER )`

```
example   pre_filter     pre_agg      post_agg_filter
------------------------------------------------------
0            106,728     119,667            4,117,579
1            102,898      95,946            2,307,547
2             97,629      92,046              554,570  
3            100,867     112,585            2,709,057
4             96,416      96,649            3,598,358
5            106,293      97,296            1,875,648
6             97,118      64,395            1,320,672
7             99,915      90,557              969,807
```

**Example 中位數**  
以下範例會計算 `Sales` 的中間值 (第 50 個百分位數)，依據 `City` 和 `State` 分割。  

```
percentileDiscOver
(
  Sales, 
  50,
  [City, State]
)
```
以下範例會計算 `sum({Billed Amount})` 的第 98 個百分位數，依據 `Customer Region` 分割。資料表計算中的欄位位於視覺化效果的欄位區。  

```
percentileDiscOver
(
  sum({Billed Amount}), 
  98,
  [{Customer Region}]
)
```
以下螢幕擷取畫面顯示這兩個範例在圖表上的呈現方式。  

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/percentilOver-50-98.png)


# percentOfTotal
<a name="percentOfTotal-function"></a>

`percentOfTotal` 函數會根據指定的維度計算量值佔總計的百分比。

## 語法
<a name="percentOfTotal-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
percentOfTotal
(
     measure 
     ,[ partition_field, ... ] 
)
```

## 引數
<a name="percentOfTotal-function-arguments"></a>

 *measure*   
您要查看總計百分比之彙總的度量。目前，`percentOfTotal` 不支援 `distinct count` 彙總。

 *partition field*  
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

## 範例
<a name="percentOfTotal-function-example"></a>

以下範例會為每個 `State` 佔 `Sales` 總計的百分比建立計算。

```
percentOfTotal
(
     sum(Sales), 
     [State]
)
```

以下範例會計算特定 `Billed Amount` 與總 `Billed Amount` 相比的百分比，由 (`[{Service Line} ASC]`) 分區。資料表計算中的欄位位於視覺化效果的欄位區。

```
percentOfTotal
(
     sum( {Billed Amount} ), 
     [{Service Line}]
)
```

以下螢幕擷取畫面顯示範例的結果。紅色反白顯示會說明具有值 "`Billing`" 的分割欄位有三個項目，每個區域各一。此服務行的計費金額總計已劃分為三個百分比，總計 100%。百分比會四捨五入，並且有時可能無法加到精確的 100%。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/percentOfTotal.png)


# periodOverPeriodDifference
<a name="periodOverPeriodDifference-function"></a>

`periodOverPeriodDifference` 函數會計算由週期粒度和偏移量指定的兩個不同期間內的量值差異。與差異計算不同，此函數使用基於日期的偏移量而不是固定大小的偏移量。這樣可確保只比較正確的日期，即使資料集中缺少資料點也是如此。

## 語法
<a name="periodOverPeriodDifference-function-syntax"></a>

```
periodOverPeriodDifference(
	measure, 
	date, 
	period, 
	offset)
```

## 引數
<a name="periodOverPeriodDifference-function-arguments"></a>

 *measure*   
您想要對其執行 periodOverPeriod 計算的彙總量值。

 *dateTime*   
我們用於執行各期間 (Period-Over-Period) 計算的日期維度。

 *period*   
(選用) 您的運算所針對的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。  
預設值為視覺效果日期維度粒度。

 *offset*   
(選用) 偏移量可以是正整數或負整數，代表您要比較的先前期間 (由期間指定)。例如，偏移量為 1 的季度期間表示與上一季度進行比較。  
預設值為 1.

## 範例
<a name="periodOverPeriodDifference-function-example"></a>

下列範例使用計算欄位 `PeriodOverPeriod` 來顯示昨天的銷售金額差異

```
periodOverPeriodDifference(sum(Sales), {Order Date})
```

![\[這是範例計算傳回的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/MonthOverMonthDifference.png)


下列範例使用計算欄位 `PeriodOverPeriod` 來顯示前兩個月的銷售金額差異。以下範例是 `Mar2020` 與 `Jan2020` 的銷售額比較。

```
periodOverPeriodDifference(sum(Sales),{Order Date}, MONTH, 1)
```

![\[這是範例計算傳回的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/MonthOverMonthDifference2.png)


# periodOverPeriodLastValue
<a name="periodOverPeriodLastValue-function"></a>

`periodOverPeriodLastValue` 函數會根據期間粒度和偏移量指定的前一個期間，計算量值的最後一個 (前一個) 值。此函數使用基於日期的偏移量，而不是固定大小的偏移量。這樣可確保只比較正確的日期，即使資料集中缺少資料點也是如此。

## 語法
<a name="periodOverPeriodLastValue-function-syntax"></a>

```
periodOverPeriodLastValue(
	measure, 
	date, 
	period, 
	offset)
```

## 引數
<a name="periodOverPeriodLastValue-function-arguments"></a>

 *measure*   
您要查看差異之彙總的度量。

 *date*   
您執行 periodOverPeriod 計算時基於的日期維度。

 *period*   
(選用) 您的運算所針對的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。  
此引數預設為視覺效果彙總的粒度

 *offset*   
(選用) 偏移量可以是正整數或負整數，代表您要比較的先前期間 (由期間指定)。例如，偏移量為 1 的季度期間表示與上一季度進行比較。  
此引數預設值為 1。

## 範例
<a name="periodOverPeriodLastValue-function-example"></a>

下列範例使用視覺效果維度粒度、預設偏移量 1 計算每月的銷售額。

```
periodOverPeriodLastValue(sum(Sales), {Order Date})
```

下列範例使用固定粒度 `MONTH`、固定偏移量 1 計算每月的銷售額。

```
periodOverPeriodLastValue(sum(Sales), {Order Date},MONTH, 1)
```

![\[這是範例計算傳回的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/MonthOverMonthLastValue.png)


# periodOverPeriodPercentDifference
<a name="periodOverPeriodPercentDifference-function"></a>

`periodOverPeriodPercentDifference` 函數會計算由週期粒度和偏移量指定的兩個不同期間內的量值差異百分比。與 percentDifference 不同，此函數使用基於日期的偏移量而不是固定大小的偏移量。這樣可確保只比較正確的日期，即使資料集中缺少資料點也是如此。

## 語法
<a name="periodOverPeriodPercentDifference-function-syntax"></a>

```
periodOverPeriodPercentDifference(
	measure, 
	date, 
	period, 
	offset)
```

## 引數
<a name="periodOverPeriodPercentDifference-function-arguments"></a>

 *measure*   
您要查看差異之彙總的度量。

 *date*   
您執行 periodOverPeriod 計算時基於的日期維度。

 *period*   
(選用) 您的運算所針對的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。  
此引數預設為視覺效果彙總的粒度

 *offset*   
(選用) 偏移量可以是正整數或負整數，代表您要比較的先前期間 (由期間指定)。例如，偏移量為 1 的季度期間表示與上一季度進行比較。  
此引數預設值為 1。

## 範例
<a name="periodOverPeriodPercentDifference-function-example"></a>

下列範例使用視覺效果維度粒度、預設偏移量 1 計算每月銷售額的差異百分比。

```
periodOverPeriodPercentDifference(sum(Sales),{Order Date})
```

下列範例使用固定粒度 `MONTH`、固定偏移量 1 計算每月銷售額的差異百分比。

```
periodOverPeriodPercentDifference(sum(Sales), {Order Date}, MONTH, 1)
```

![\[這是範例計算傳回的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/MonthOverMonthPercentDifference.png)


# periodToDateAvgOverTime
<a name="periodToDateAvgOverTime-function"></a>

`periodToDateAvgOverTime` 函數計算指定時間粒度 (例如一個季度) 到某個時間點的量值平均值。

## 語法
<a name="periodToDateAvgOverTime-function-syntax"></a>

```
periodToDateAvgOverTime(
	measure, 
	dateTime,
	period)
```

## 引數
<a name="periodToDateAvgOverTime-function-arguments"></a>

 *measure*   
您想要執行計算的彙總量值

 *dateTime*   
您計算 PeriodOverTime 計算的日期維度。

 *period*   
(選用) 您的運算所針對的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。  
預設值是視覺效果的日期維度粒度。

## 範例
<a name="periodToDateAvgOverTime-function-example"></a>

下列函數計算每月票價金額的平均值。

```
periodToDateAvgOverTime(sum({fare_amount}), pickupDatetime, MONTH)
```

![\[這是範例計算結果的影像 (含插圖)。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/PTDAvgOverTimeResults.png)


# periodToDateCountOverTime
<a name="periodToDateCountOverTime-function"></a>

`periodToDateCountOverTime` 函數計算指定時間粒度 (例如一個季度) 到某個時間點的維度或量值的計數。

## 語法
<a name="periodToDateCountOverTime-function-syntax"></a>

```
periodToDateCountOverTime(
	measure, 
	dateTime, 
	period)
```

## 引數
<a name="periodToDateCountOverTime-function-arguments"></a>

 *measure*   
您想要執行計算的彙總量值

 *dateTime*   
您計算 PeriodOverTime 計算的日期維度。

 *period*   
(選用) 您的運算所針對的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。  
預設值是視覺效果的日期維度粒度。

## 範例
<a name="periodToDateCountOverTime-function-example"></a>

下列範例會計算每月的廠商計數。

```
periodToDateCountOverTime(count(vendorid), pickupDatetime, MONTH)
```

![\[這是範例計算結果的影像 (含插圖)。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/PTDCountOverTimeResults.png)


# periodToDateMaxOverTime
<a name="periodToDateMaxOverTime-function"></a>

`periodToDateMaxOverTime` 函數計算指定時間粒度 (例如一個季度) 到某個時間點的量值最大值。

## 語法
<a name="periodToDateMaxOverTime-function-syntax"></a>

```
periodToDateMaxOverTime(
	measure, 
	dateTime, 
	period)
```

## 引數
<a name="periodToDateMaxOverTime-function-arguments"></a>

 *measure*   
您想要執行計算的彙總量值

 *dateTime*   
您計算 PeriodOverTime 計算的日期維度。

 *period*   
(選用) 您的運算所針對的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。  
預設值是視覺效果的日期維度粒度。

## 範例
<a name="periodToDateMaxOverTime-function-example"></a>

下列範例計算每月的最高票價金額。

```
periodToDatemaxOverTime(max({fare_amount}), pickupDatetime, MONTH)
```

![\[這是範例計算結果的影像 (含插圖)。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/PTDMaxOverTimeResults.png)


# periodToDateMinOverTime
<a name="periodToDateMinOverTime-function"></a>

`periodToDateMinOverTime` 函數計算指定時間粒度 (例如一個季度) 到某個時間點的量值最小值。

## 語法
<a name="periodToDateMinOverTime-function-syntax"></a>

```
periodToDateMinOverTime(
	measure, 
	dateTime, 
	period)
```

## 引數
<a name="periodToDateMinOverTime-function-arguments"></a>

 *measure*   
您想要執行計算的彙總量值

 *dateTime*   
您計算 PeriodOverTime 計算的日期維度。

 *period*   
(選用) 您的運算所針對的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。  
預設值是視覺效果的日期維度粒度。

## 範例
<a name="periodToDateMinOverTime-function-example"></a>

下列範例計算每月的最低票價金額。

```
periodToDateMinOverTime(min({fare_amount}), pickupDatetime, MONTH)
```

![\[這是範例計算結果的影像 (含插圖)。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/PTDMinOverTimeResults.png)


# periodToDateSumOverTime
<a name="periodToDateSumOverTime-function"></a>

`periodToDateSumOverTime` 函數計算指定時間粒度 (例如一個季度) 到某個時間點的量值總和。

## 語法
<a name="periodToDateSumOverTime-function-syntax"></a>

```
periodToDateSumOverTime(
	measure, 
	dateTime, 
	period)
```

## 引數
<a name="periodToDateSumOverTime-function-arguments"></a>

 *measure*   
您想要執行計算的彙總量值

 *dateTime*   
您計算 PeriodOverTime 計算的日期維度。

 *period*   
(選用) 您的運算所針對的期間。`YEAR` 的粒度表示 `YearToDate` 運算，`Quarter` 表示 `QuarterToDate`，以此類推。有效粒度包括 `YEAR`、`QUARTER`、`MONTH`、`WEEK`、`DAY`、`HOUR`、`MINUTE` 和 `SECONDS`。  
預設值是視覺效果的日期維度粒度。

## 範例
<a name="periodToDateSumOverTime-function-example"></a>

下列函數返回每月的票價金額總計。

```
periodToDateSumOverTime(sum({fare_amount}), pickupDatetime, MONTH)
```

![\[這是範例計算結果的影像 (含插圖)。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/PTDSumOverTime-example-results.png)


# stdevOver
<a name="stdevOver-function"></a>

`stdevOver` 函數計算指定量值的標準差，根據範例依照所選的一個或多個屬性分割。

## 語法
<a name="stdevOver-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
stdevOver
(
      measure 
     ,[ partition_field, ... ] 
     ,calculation level 
)
```

## 引數
<a name="stdevOver-function-arguments"></a>

*measure*   
您想要執行度量計算的對象，例如 `sum({Sales Amt})`。如果計算層級設定為 `NULL` 或 `POST_AGG_FILTER`，請使用彙總。如果計算層級設為 `PRE_FILTER` 或 `PRE_AGG`，請勿使用彙總。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *calculation level*  
(選用) 指定要使用的計算層級：  
+ **`PRE_FILTER`** – 先計算預先篩選條件，再計算資料集篩選條件。
+ **`PRE_AGG`** – 先計算預先彙總計算，再將彙總和前後 *N* 個篩選器套用到視覺效果。
+ **`POST_AGG_FILTER`** – (預設值) 顯示視覺效果時執行資料表計算。
空白時此值會預設為 `POST_AGG_FILTER`。如需詳細資訊，請參閱[在 Quick 中使用層級感知計算](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations.html)。

## 範例
<a name="stdevOver-function-example"></a>

以下範例會計算 `sum(Sales)` 的標準差，並根據範例區分 `City` 和 `State`。

```
stdevOver
(
     sum(Sales), 
     [City, State]
)
```

以下範例根據範例，計算 `Customer Region` 的 `Billed Amount` 標準差。資料表計算中的欄位位於視覺化效果的欄位區。

```
stdevOver
(
     sum({Billed Amount}),
     [{Customer Region}]
)
```

# stdevpOver
<a name="stdevpOver-function"></a>

`stdevpOver` 函數計算指定量值中的標準差，根據母體偏差依照所選的一個或多個屬性分割。

## 語法
<a name="stdevpOver-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
stdevpOver
(
     measure 
     ,[ partition_field, ... ] 
     ,calculation level 
)
```

## 引數
<a name="stdevpOver-function-arguments"></a>

*measure*   
您想要執行度量計算的對象，例如 `sum({Sales Amt})`。如果計算層級設定為 `NULL` 或 `POST_AGG_FILTER`，請使用彙總。如果計算層級設為 `PRE_FILTER` 或 `PRE_AGG`，請勿使用彙總。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *calculation level*  
(選用) 指定要使用的計算層級：  
+ **`PRE_FILTER`** – 先計算預先篩選條件，再計算資料集篩選條件。
+ **`PRE_AGG`** – 先計算預先彙總計算，再將彙總和前後 *N* 個篩選器套用到視覺效果。
+ **`POST_AGG_FILTER`** – (預設值) 顯示視覺效果時執行資料表計算。
空白時此值會預設為 `POST_AGG_FILTER`。如需詳細資訊，請參閱[在 Quick 中使用層級感知計算](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations.html)。

## 範例
<a name="stdevpOver-function-example"></a>

以下範例根據母體偏差，計算由 `City` 和 `State` 區分的 `sum(Sales)` 的標準差。

```
stdevpOver
(
     sum(Sales), 
     [City, State]
)
```

以下範例根據母體偏差，計算 `Customer Region` 的 `Billed Amount` 的標準差。資料表計算中的欄位位於視覺化效果的欄位區。

```
stdevpOver
(
     sum({Billed Amount}),
     [{Customer Region}]
)
```

# varOver
<a name="varOver-function"></a>

`varOver` 函數計算指定量值中的差異，根據範例依照所選的一個或多個屬性分割。

## 語法
<a name="varOver-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
varOver
(
     measure 
     ,[ partition_field, ... ] 
     ,calculation level 
)
```

## 引數
<a name="varOver-function-arguments"></a>

*measure*   
您想要執行度量計算的對象，例如 `sum({Sales Amt})`。如果計算層級設定為 `NULL` 或 `POST_AGG_FILTER`，請使用彙總。如果計算層級設為 `PRE_FILTER` 或 `PRE_AGG`，請勿使用彙總。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *calculation level*  
(選用) 指定要使用的計算層級：  
+ **`PRE_FILTER`** – 先計算預先篩選條件，再計算資料集篩選條件。
+ **`PRE_AGG`** – 先計算預先彙總計算，再將彙總和前後 *N* 個篩選器套用到視覺效果。
+ **`POST_AGG_FILTER`** – (預設值) 顯示視覺效果時計算資料表計算。
空白時此值會預設為 `POST_AGG_FILTER`。如需詳細資訊，請參閱[在 Quick 中使用關卡感知計算](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations.html)。

## 範例
<a name="varOver-function-example"></a>

以下範例根據範例，計算由 `City` 和 `State` 區分的 `sum(Sales)` 的差異。

```
varOver
(
     sum(Sales), 
     [City, State]
)
```

以下範例根據範例，計算 `Customer Region` 的 `Billed Amount` 差異。資料表計算中的欄位位於視覺化效果的欄位區。

```
varOver
(
     sum({Billed Amount}),
     [{Customer Region}]
)
```

# varpOver
<a name="varpOver-function"></a>

`varpOver` 函數計算指定量值的差異，根據母體偏差依照所選的一個或多個屬性分割。

## 語法
<a name="varpOver-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
varpOver
(
     measure 
     ,[ partition_field, ... ] 
     ,calculation level 
)
```

## 引數
<a name="varpOver-function-arguments"></a>

*measure*   
您想要執行度量計算的對象，例如 `sum({Sales Amt})`。如果計算層級設定為 `NULL` 或 `POST_AGG_FILTER`，請使用彙總。如果計算層級設為 `PRE_FILTER` 或 `PRE_AGG`，請勿使用彙總。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *calculation level*  
(選用) 指定要使用的計算層級：  
+ **`PRE_FILTER`** – 先計算預先篩選條件，再計算資料集篩選條件。
+ **`PRE_AGG`** – 先計算預先彙總計算，再將彙總和前後 *N* 個篩選器套用到視覺效果。
+ **`POST_AGG_FILTER`** – (預設值) 顯示視覺效果時計算資料表計算。
空白時此值會預設為 `POST_AGG_FILTER`。如需詳細資訊，請參閱[在 Quick 中使用層級感知計算](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations.html)。

## 範例
<a name="varpOver-function-example"></a>

以下範例根據母體偏差，計算由 `City` 和 `State` 區分的 `sum(Sales)` 的差異。

```
varpOver
(
     sum(Sales), 
     [City, State]
)
```

以下範例根據母體偏差，計算 `Billed Amount` 與 `Customer Region` 的差異。資料表計算中的欄位位於視覺化效果的欄位區。

```
varpOver
(
     sum({Billed Amount}),
     [{Customer Region}]
)
```

# sumOver
<a name="sumOver-function"></a>

 `sumOver` 函數計算依維度清單分割的量值總和。

## 語法
<a name="sumOver-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
sumOver
(
     measure 
     ,[ partition_field, ... ] 
     ,calculation level 
)
```

## 引數
<a name="sumOver-function-arguments"></a>

*measure*   
您想要執行度量計算的對象，例如 `sum({Sales Amt})`。如果計算層級設定為 `NULL` 或 `POST_AGG_FILTER`，請使用彙總。如果計算層級設為 `PRE_FILTER` 或 `PRE_AGG`，請勿使用彙總。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *calculation level*  
(選用) 指定要使用的計算層級：  
+ **`PRE_FILTER`** – 先計算預先篩選條件，再計算資料集篩選條件。
+ **`PRE_AGG`** – 先計算預先彙總計算，再將彙總和前後 *N* 個篩選器套用到視覺效果。
+ **`POST_AGG_FILTER`** – (預設值) 顯示視覺效果時執行資料表計算。
空白時此值會預設為 `POST_AGG_FILTER`。如需詳細資訊，請參閱[在 Quick 中使用層級感知計算](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations.html)。

## 範例
<a name="sumOver-function-example"></a>

以下範例會計算 `sum(Sales)` 的總和，依據 `City` 和 `State` 分割。

```
sumOver
(
     sum(Sales), 
     [City, State]
)
```

以下範例會計算 `Customer Region` 的 `Billed Amount` 總和。資料表計算中的欄位位於視覺化效果的欄位區。

```
sumOver
(
     sum({Billed Amount}),
     [{Customer Region}]
)
```

以下螢幕擷取畫面顯示範例的結果。隨著 `Customer Segment` 的加入，每項的收費金額總計會針對 `Customer Region` 加總，並顯示在計算欄位中。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/sumOver.png)


# denseRank
<a name="denseRank-function"></a>

`denseRank` 函數計算相較於指定的分割，量值或維度的排名。它只會將每個項目計算一次，忽略重複項目，並指定排名「不留洞」，因此重複的值會有相同的排名。

## 語法
<a name="denseRank-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
denseRank
(
  [ sort_order_field ASC_or_DESC, ... ] 
  ,[ partition_field, ... ] 
)
```

## 引數
<a name="denseRank-function-arguments"></a>

 *sort order field*   
您要排序資料依據的一或多個彙總欄位，可以是度量和維度或兩者，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *calculation level*  
(選用) 指定要使用的計算層級：  
+ **`PRE_FILTER`** – 先計算預先篩選條件，再計算資料集篩選條件。
+ **`PRE_AGG`** – 先計算預先彙總計算，再將彙總和前後 *N* 個篩選器套用到視覺效果。
+ **`POST_AGG_FILTER`** – (預設值) 顯示視覺效果時計算資料表計算。
空白時此值會預設為 `POST_AGG_FILTER`。如需詳細資訊，請參閱[在 Quick 中使用關卡感知計算](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations.html)。

## 範例
<a name="denseRank-function-example"></a>

以下範例會對 `max(Sales)` 密集進行排名，根據遞減排序順序，依據 `State` 和 `City`。具有相同 `max(Sales)` 的任何城市會獲指派相同的排名，下一個城市的排名會接在其後。例如，如果有三個城市具有相同排名，則第四個城市的排名會是第二。

```
denseRank
(
  [max(Sales) DESC], 
  [State, City]
)
```

以下範例會對 `max(Sales)` 密集進行排名，根據遞減排序順序，依據 `State`。具有相同 `max(Sales)` 的任何州會獲指派相同的排名，下一個的排名會接在其後。例如，如果有三個州具有相同排名，則第四個州的排名會是第二。

```
denseRank
(
  [max(Sales) DESC], 
  [State]
)
```

# rank
<a name="rank-function"></a>

`rank` 函數計算相較於指定的分割，量值或維度的排名。它會將每個項目計入一次，甚至是重複項目，並指派排名「留洞」來容納重複的值。

## 語法
<a name="rank-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
rank
(
  [ sort_order_field ASC_or_DESC, ... ]
  ,[ partition_field, ... ] 
)
```

## 引數
<a name="rank-function-arguments"></a>

 *sort order field*   
您要排序資料依據的一或多個彙總度量和維度，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *calculation level*  
(選用) 指定要使用的計算層級：  
+ **`PRE_FILTER`** – 先計算預先篩選條件，再計算資料集篩選條件。
+ **`PRE_AGG`** – 先計算預先彙總計算，再將彙總和前後 *N* 個篩選器套用到視覺效果。
+ **`POST_AGG_FILTER`** – (預設值) 顯示視覺效果時計算資料表計算。
空白時此值會預設為 `POST_AGG_FILTER`。如需詳細資訊，請參閱[在 Quick 中使用層級感知計算](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations.html)。

## 範例
<a name="rank-function-example"></a>

以下範例會對 `max(Sales)` 進行排名，根據遞減排序順序，依據 `State` 和 `City`，在 `State` **WA** 內。具有相同 `max(Sales)` 的任何城市會獲指派相同的排名，但下一個排名會包含所有之前存在排名的計數。例如，如果有三個城市具有相同排名，則第四個城市的排名會是第四。

```
rank
(
  [max(Sales) DESC], 
  [State, City]
)
```

以下範例會對 `max(Sales)` 進行排名，根據遞增排序順序，依據 `State`。具有相同 `max(Sales)` 的任何州會獲指派相同的排名，但下一個排名會包含所有之前存在排名的計數。例如，如果有三個州具有相同排名，則第四個州的排名會是第四。

```
rank
(
  [max(Sales) ASC], 
  [State]
)
```

以下範例會為 `Customer Region` 排名，依據總計 `Billed Amount`。資料表計算中的欄位位於視覺化效果的欄位區。

```
rank(
  [sum({Billed Amount}) DESC]
)
```

以下螢幕擷取畫面會顯示範例的結果，以及總計的 `Billed Amount`，因此您可以查看每個區域的排名方式。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/rankCalc.png)


# percentileRank
<a name="percentileRank-function"></a>

`percentileRank` 函數計算相較於指定的分割，量值或維度的百分位數排名。百分位數排名值 (*x*) 指出目前的項目超過指定分割中的值 *x*%。百分位數排名值的範圍是從 0 (含) 到 100 (排除)。

## 語法
<a name="percentileRank-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
percentileRank
(
      [ sort_order_field ASC_or_DESC, ... ] 
     ,[ {partition_field}, ... ]
)
```

## 引數
<a name="percentileRank-function-arguments"></a>

 *sort order field*   
您要排序資料依據的一或多個彙總度量和維度，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *calculation level*  
(選用) 指定要使用的計算層級：  
+ **`PRE_FILTER`** – 先計算預先篩選條件，再計算資料集篩選條件。
+ **`PRE_AGG`** – 先計算預先彙總計算，再將彙總和前後 *N* 個篩選器套用到視覺效果。
+ **`POST_AGG_FILTER`** – (預設值) 顯示視覺效果時計算資料表計算。
空白時此值會預設為 `POST_AGG_FILTER`。如需詳細資訊，請參閱[在 Quick 中使用層級感知計算](https://docs.aws.amazon.com/quicksight/latest/user/level-aware-calculations.html)。

## 範例
<a name="percentileRank-function-example"></a>

以下範例會執行 `max(Sales)` 的百分位數排名，以遞減順序，依據 `State`。

```
percentileRank
(
     [max(Sales) DESC], 
     [State]
)
```

以下範例會執行 `Customer Region` 的百分位數排名，依總計 `Billed Amount`。資料表計算中的欄位位於視覺化效果的欄位區。

```
percentileRank(
     [sum({Billed Amount}) DESC],
     [{Customer Region}]
)
```

以下螢幕擷取畫面會顯示範例的結果，以及總計的 `Billed Amount`，因此您可以查看每個區域的比較結果。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/percentileRank.png)


# runningAvg
<a name="runningAvg-function"></a>

`runningAvg` 函數根據指定的維度和排序順序，計算量值的執行中平均值。

## 語法
<a name="runningAvg-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
runningAvg
(
  measure 
  ,[ sortorder_field ASC_or_DESC, ... ]  
  ,[ partition_field, ... ] 
)
```

## 引數
<a name="runningAvg-function-arguments"></a>

 *measure*   
您要查看執行中平均值之彙總的度量。

 *sort order field*   
您要排序資料依據的一或多個度量和維度，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *partition field*  
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

## 範例
<a name="runningAvg-function-example"></a>

以下範例會計算 `sum(Sales)` 執行中的平均值，依據 `Sales` 排序，依據 `City` 和 `State` 分割。

```
runningAvg
(
  sum(Sales), 
  [Sales ASC], 
  [City, State]
)
```

以下範例會計算 `Billed Amount` 執行中的平均值，依據月份排序 (`[truncDate("MM",Date) ASC]`)。資料表計算中的欄位位於視覺化效果的欄位區。

```
runningAvg
(
  sum({Billed Amount}),
  [truncDate("MM",Date) ASC]
)
```

# runningCount
<a name="runningCount-function"></a>

`runningCount` 函數根據指定的維度和排序順序，計算量值或維度的執行中計數。

## 語法
<a name="runningCount-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
runningCount
(
  measure_or_dimension 
  ,[ sortorder_field ASC_or_DESC, ... ]  
  ,[ partition_field, ... ] 
)
```

## 引數
<a name="runningCount-function-arguments"></a>

 *measure or dimension*   
您要查看執行中計數之彙總的度量或維度。

 *sort order field*   
您要排序資料依據的一或多個度量和維度，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *partition field*  
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

## 範例
<a name="runningCount-function-example"></a>

以下範例會計算 `sum(Sales)` 執行中的計數，依據 `Sales` 排序，依據 `City` 和 `State` 分割。

```
runningCount
(
  sum(Sales), 
  [Sales ASC], 
  [City, State]
)
```

以下範例會計算 `Billed Amount` 執行中的計數，依據月份排序 (`[truncDate("MM",Date) ASC]`)。資料表計算中的欄位位於視覺化效果的欄位區。

```
runningCount
(
  sum({Billed Amount}),
  [truncDate("MM",Date) ASC]
)
```

# runningMax
<a name="runningMax-function"></a>

`runningMax` 函數根據指定的維度和排序順序，計算量值的執行中最大值。

## 語法
<a name="runningMax-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
runningMax
(
  measure 
  ,[ sortorder_field ASC_or_DESC, ... ]  
  ,[ partition_field, ... ] 
)
```

## 引數
<a name="runningMax-function-arguments"></a>

 *measure*   
您要查看執行中最大值之彙總的度量。

 *sort order field*   
您要排序資料依據的一或多個度量和維度，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *partition field*  
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

## 範例
<a name="runningMax-function-example"></a>

以下範例會計算 `sum(Sales)` 執行中的最大值，依據 `Sales` 排序，依據 `City` 和 `State` 分割。

```
runningMax
(
  sum(Sales), 
  [Sales ASC], 
  [City, State]
)
```

以下範例會計算 `Billed Amount` 執行中的最大值，依據月份排序 (`[truncDate("MM",Date) ASC]`)。資料表計算中的欄位位於視覺化效果的欄位區。

```
runningMax
(
  sum({Billed Amount}),
  [truncDate("MM",Date) ASC]
)
```

# runningMin
<a name="runningMin-function"></a>

`runningMin` 函數根據指定的維度和排序順序，計算量值的執行中最小值。

## 語法
<a name="runningMin-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
runningMin
(
  measure 
  ,[ sortorder_field ASC_or_DESC, ... ]  
  ,[ partition_field, ... ] 
)
```

## 引數
<a name="runningMin-function-arguments"></a>

 *measure*   
您要查看執行中最小值之彙總的度量。

 *sort order field*   
您要排序資料依據的一或多個度量和維度，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *partition field*  
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

## 範例
<a name="runningMin-function-example"></a>

以下範例會計算 `sum(Sales)` 執行中的最小值，依據 `Sales` 排序，依據 `City` 和 `State` 分割。

```
runningMin
(
  sum(Sales), 
  [Sales ASC], 
  [City, State]
)
```

以下範例會計算 `Billed Amount` 執行中的最小值，依據月份排序 (`[truncDate("MM",Date) ASC]`)。資料表計算中的欄位位於視覺化效果的欄位區。

```
runningMin
(
  sum({Billed Amount}),
  [truncDate("MM",Date) ASC]
)
```

# runningSum
<a name="runningSum-function"></a>

`runningSum` 函數根據指定的維度和排序順序，計算量值的執行中總和。

## 語法
<a name="runningSum-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
runningSum
(
  measure 
  ,[ sortorder_field ASC_or_DESC, ... ]  
  ,[ partition_field, ... ] 
)
```

## 引數
<a name="runningSum-function-arguments"></a>

 *measure*   
您要查看執行中總和之彙總的度量。

 *sort order field*   
您要排序資料依據的一或多個度量和維度，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

 *partition field*  
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

## 範例
<a name="runningSum-function-example"></a>

以下範例會計算 `sum(Sales)` 執行中的總和，依據 `Sales` 排序，依據 `City` 和 `State` 分割。

```
runningSum
(
  sum(Sales), 
  [Sales ASC], 
  [City, State]
)
```

以下範例會計算 `Billed Amount` 執行中的總和，依據月份排序 (`[truncDate("MM",Date) ASC]`)。資料表計算中的欄位位於視覺化效果的欄位區。

```
runningSum
(
  sum({Billed Amount}),
  [truncDate("MM",Date) ASC]
)
```

以下螢幕擷取畫面顯示範例的結果。紅色標籤顯示將每個金額加到下一個金額的方式 (`a + b = c`)，產生了新的總計。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/runningSum.png)


# firstValue
<a name="firstValue-function"></a>

`firstValue` 函數計算依指定屬性分割和排序的彙總計量或維度的第一個值。

## 語法
<a name="firstValue-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
firstValue
	(
	     aggregated measure or dimension, 
	     [ sort_attribute ASC_or_DESC, ... ],
	     [ partition_by_attribute, ... ] 
	)
```

## 引數
<a name="firstValue-function-arguments"></a>

*aggregated measure or dimension*   
您要查看第一個值的彙總量值或維度。

*sort attribute*   
您要排序資料依據的一或多個彙總欄位，可以是度量和維度或兩者，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

*partition by attribute*  
(選用) 您要分割依據的一或多個量值或者維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

## 範例
<a name="firstValue-function-example"></a>

下列範例計算依 `Flight Date` 排序、依遞增排序之 `Flight Date` 和 `Origin Airport` 分割的第一個 `Destination Airport`。

```
firstValue(
    {Destination Airport}
    [{Flight Date} ASC],
    [
        {Origin Airport},
        {Flight Date}
    ]
)
```

# lastValue
<a name="lastValue-function"></a>

`lastValue` 函數計算依指定屬性分割和排序的彙總計量或維度的最後一個值。

## 語法
<a name="lastValue-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
lastValue
	(
	     aggregated measure or dimension,
	     [ sort_attribute ASC_or_DESC, ... ],
	     [ partition_by_attribute, ... ] 
	)
```

## 引數
<a name="lastValue-function-arguments"></a>

*aggregated measure or dimension*   
您要查看最後一個值的彙總量值或維度。

*sort attribute*   
您要排序資料依據的一或多個彙總欄位，可以是度量和維度或兩者，以逗號分隔。您可以指定遞增 (`ASC`) 或遞減 (`DESC`) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

*partition by attribute*  
(選用) 您要分割依據的一或多個量值或者維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

## 範例
<a name="lastValue-function-example"></a>

下列範例計算 `Destination Airport` 的最後一個值。此計算依 `Flight Date` 值排序，並依按遞增排序的 `Flight Date` 值和 `Origin Airport` 值分割。

```
lastValue(
    [{Destination Airport}],
    [{Flight Date} ASC],
    [
        {Origin Airport},
    	truncDate('DAY', {Flight Date})
    ]
)
```

# windowAvg
<a name="windowAvg-function"></a>

`windowAvg` 函數計算在自訂時段中彙總的量值的平均值，該時段依指定的屬性分割和排序。您通常可以對時間序列使用自訂時段函數，其中視覺效果會顯示指標和日期欄位。例如，您可以使用 `windowAvg` 來計算移動平均值，而移動平均值常用於消除折線圖中的雜點。

早於第 8 版之前的 MySQL 版本和早於第 10.2 版之前的 MariaDB 版本不支援時段函數。

## 語法
<a name="windowAvg-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
windowAvg
	(
	     measure 
            , [sort_order_field ASC/DESC, ...]
            , start_index
            , end_index
	     ,[ partition_field, ... ] 
	)
```

## 引數
<a name="windowAvg-function-arguments"></a>

*measure*   
您要取得平均值的彙總指標，例如 `sum({Revenue})`。

*sort attribute*   
您要排序資料依據的一或多個彙總欄位，可以是度量和維度或兩者，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1 \$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

*start index*   
開始索引是正整數，代表高於目前列 *n* 列。開始索引會計數高於目前列有幾個資料點可用，而非計數實際的時間範圍。如果資料稀疏 (例如，遺失月份或年份)，請依此調整索引。

*end index*   
結束索引是正整數，代表低於目前列 *n* 列。結束索引會計數低於目前列有幾個資料點可用，而非計數實際的時間範圍。如果資料稀疏 (例如，遺失月份或年份)，請依此調整索引。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

## 範例
<a name="windowAvg-function-example"></a>

以下範例會計算 `sum(Revenue)` 的移動平均值，依據 `SaleDate` 分割。計算值包括高於目前列的三列和低於目前列的兩列。

```
windowAvg
	(
	     sum(Revenue), 
	     [SaleDate ASC],
	     3,
            2
	)
```

以下螢幕擷取畫面顯示此移動平均值結果的範例。sum(Revenue) 欄位已新增至圖表中，以顯示營收和營收移動平均值之間的差異。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/windowAvg.png)


# windowCount
<a name="windowCount-function"></a>

`windowCount` 函數計算在自訂時段中彙總的量值或維度的計數，該時段依指定的屬性分割和排序。您通常可以對時間序列使用自訂時段函數，其中視覺效果會顯示指標和日期欄位。

早於第 8 版之前的 MySQL 版本和早於第 10.2 版之前的 MariaDB 版本不支援時段函數。

## 語法
<a name="windowCount-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
windowCount
	(
	     measure_or_dimension 
            , [sort_order_field ASC/DESC, ...]
            , start_index
            , end_index
	     ,[ partition_field, ... ] 
	)
```

## 引數
<a name="windowCount-function-arguments"></a>

*measure or dimension*   
您要取得平均值的彙總指標，例如 `sum({Revenue})`。

*sort attribute*   
您要排序資料依據的一或多個彙總欄位，可以是度量和維度或兩者，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

*start index*   
開始索引是正整數，代表高於目前列 *n* 列。開始索引會計數高於目前列有幾個資料點可用，而非計數實際的時間範圍。如果資料稀疏 (例如，遺失月份或年份)，請依此調整索引。

*end index*   
結束索引是正整數，代表低於目前列 *n* 列。結束索引會計數低於目前列有幾個資料點可用，而非計數實際的時間範圍。如果資料稀疏 (例如，遺失月份或年份)，請依此調整索引。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

## 範例
<a name="windowCount-function-example"></a>

以下範例會計算 `sum(Revenue)` 的移動計數，依據 `SaleDate` 分割。計算值包括高於目前列的三列和低於目前列的兩列。

```
windowCount
	(
	     sum(Revenue), 
	     [SaleDate ASC],
	     3,
               2
	)
```

# windowMax
<a name="windowMax-function"></a>

`windowMax` 函數計算在自訂時段中彙總的量值的最大值，該時段依指定的屬性分割和排序。您通常可以對時間序列使用自訂時段函數，其中視覺效果會顯示指標和日期欄位。您可以使用 `windowMax` 來協助辨識一段期間內指標的最大值。

早於第 8 版之前的 MySQL 版本和早於第 10.2 版之前的 MariaDB 版本不支援時段函數。

## 語法
<a name="windowMax-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
windowMax
	(
	     measure 
            , [sort_order_field ASC/DESC, ...]
            , start_index
            , end_index
	     ,[ partition_field, ... ] 
	)
```

## 引數
<a name="windowMax-function-arguments"></a>

*measure*   
您要取得平均值的彙總指標，例如 `sum({Revenue})`。

*sort attribute*   
您要排序資料依據的一或多個彙總欄位，可以是度量和維度或兩者，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

*start index*   
開始索引是正整數，代表高於目前列 *n* 列。開始索引會計數高於目前列有幾個資料點可用，而非計數實際的時間範圍。如果資料稀疏 (例如，遺失月份或年份)，請依此調整索引。

*end index*   
結束索引是正整數，代表低於目前列 *n* 列。結束索引會計數低於目前列有幾個資料點可用，而非計數實際的時間範圍。如果資料稀疏 (例如，遺失月份或年份)，請依此調整索引。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

## 範例
<a name="windowMax-function-example"></a>

以下範例計算 `sum(Revenue)` 過去 12 個月的最大值，依據 `SaleDate` 分割。計算值包括高於目前列的十二列和低於目前列的零列。

```
windowMax
	(
	     sum(Revenue), 
	     [SaleDate ASC],
	     12,
               0
	)
```

以下螢幕擷取畫面顯示此過去 12 個月結果的範例。sum(Revenue) 欄位已新增至圖表中，以顯示營收和過去 12 個月最大營收之間的差異。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/windowMax.png)


# windowMin
<a name="windowMin-function"></a>

`windowMin` 函數計算在自訂時段中彙總的量值的最大值，該時段依指定的屬性分割和排序。您通常可以對時間序列使用自訂時段函數，其中視覺效果會顯示指標和日期欄位。您可以使用 `windowMin` 來協助辨識一段期間內指標的最小值。

早於第 8 版之前的 MySQL 版本和早於第 10.2 版之前的 MariaDB 版本不支援時段函數。

## 語法
<a name="windowMin-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
windowMin
	(
	     measure 
            , [sort_order_field ASC/DESC, ...]
            , start_index
            , end_index
	     ,[ partition_field, ... ] 
	)
```

## 引數
<a name="windowMin-function-arguments"></a>

*measure*   
您要取得平均值的彙總指標，例如 `sum({Revenue})`。

*sort attribute*   
您要排序資料依據的一或多個彙總欄位，可以是度量和維度或兩者，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

*start index*   
開始索引是正整數，代表高於目前列 *n* 列。開始索引會計數高於目前列有幾個資料點可用，而非計數實際的時間範圍。如果資料稀疏 (例如，遺失月份或年份)，請依此調整索引。

*end index*   
結束索引是正整數，代表低於目前列 *n* 列。結束索引會計數低於目前列有幾個資料點可用，而非計數實際的時間範圍。如果資料稀疏 (例如，遺失月份或年份)，請依此調整索引。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

## 範例
<a name="windowMin-function-example"></a>

以下範例計算 `sum(Revenue)` 過去 12 個月的最小值，依據 `SaleDate` 分割。計算值包括高於目前列的十二列和低於目前列的零列。

```
windowMin
	(
	     sum(Revenue), 
	     [SaleDate ASC],
	     12,
               0
	)
```

以下螢幕擷取畫面顯示此過去 12 個月結果的範例。sum(Revenue) 欄位已新增至圖表中，以顯示營收和過去 12 個月最小營收之間的差異。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/windowMin.png)


# windowSum
<a name="windowSum-function"></a>

`windowSum` 函數計算在自訂時段中彙總的量值的總和，該時段依指定的屬性分割和排序。您通常可以對時間序列使用自訂時段函數，其中視覺效果會顯示指標和日期欄位。

早於第 8 版之前的 MySQL 版本和早於第 10.2 版之前的 MariaDB 版本不支援時段函數。

## 語法
<a name="windowSum-function-syntax"></a>

需使用括弧。若要了解哪些參數是選用的，請參閱以下描述。

```
windowSum
	(
	     measure 
            , [sort_order_field ASC/DESC, ...]
            , start_index
            , end_index
	     ,[ partition_field, ... ] 
	)
```

## 引數
<a name="windowSum-function-arguments"></a>

*measure*   
您要取得總和的彙總指標，例如 `sum({Revenue})`。  
對於 MySQL、MariaDB 以及與 MySQL 相容的 Amazon Aurora，查詢索引僅限為 1。低於第 8 版之前的 MySQL 版本和早於第 10.2 版之前的 MariaDB 版本不支援時段函數。

*sort attribute*   
您要排序資料依據的一或多個彙總欄位，可以是度量和維度或兩者，以逗號分隔。您可以指定遞增 (**ASC**) 或遞減 (**DESC**) 排序順序。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

*start index*   
開始索引是正整數，代表高於目前列 *n* 列。開始索引會計數高於目前列有幾個資料點可用，而非計數實際的時間範圍。如果資料稀疏 (例如，遺失月份或年份)，請依此調整索引。

*end index*   
結束索引是正整數，代表低於目前列 *n* 列。結束索引會計數低於目前列有幾個資料點可用，而非計數實際的時間範圍。如果資料稀疏 (例如，遺失月份或年份)，請依此調整索引。

 *partition field*   
(選用) 您要分割依據的一或多個維度，以逗號分隔。  
如果有不只一個字，則清單中的每個欄位會括在 \$1\$1 (大括號) 中。整個清單會以 [ ] (方括弧) 括住。

## 範例
<a name="windowSum-function-example"></a>

以下範例會計算 `sum(Revenue)` 執行中的移動總和，依據 `SaleDate` 排序。計算值包括高於目前列的兩列和目前列前一列。

```
windowSum
	(
	     sum(Revenue), 
	     [SaleDate ASC],
	     2,
            1
	)
```

以下範例顯示過去十二個月的總和。

```
windowSum(sum(Revenue),[SaleDate ASC],12,0)
```

以下螢幕擷取畫面顯示此過去十二個月總和結果的範例。`sum(Revenue)` 欄位已新增至圖表中，以顯示營收和過去十二個月營收總和之間的差異。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/windowSum.png)


# 聯結資料
<a name="joining-data"></a>

您可以使用 Amazon Quick Sight 中的聯結界面，從一或多個資料來源聯結物件。透過使用 Amazon Quick Sight 聯結資料，您可以合併不同的資料，而無需從不同的來源複製資料。

## 聯結資料集的類型
<a name="join-dataset-types"></a>

聯結會在兩個 Quick Sight *邏輯資料表*之間執行，其中每個邏輯資料表都包含如何擷取資料的資訊。在 Quick Sight 中編輯資料集時，頁面上半部的聯結圖表會將每個邏輯資料表顯示為矩形區塊。

Quick Sight 中有兩種不同類型的聯結資料集：相同來源和跨來源。當資料集沒有任何聯結，或滿足以下所有條件時，資料集被視為同來源：
+ 如果有任何邏輯資料表參考 Quick Sight 資料來源：
  + 此資料集中的所有邏輯資料表都必須參考相同的 Quick Sight 資料來源。如果兩個不同的 Quick Sight 資料來源參考相同的基礎資料庫，則不適用此選項。它必須是完全相同的 Quick Sight 資料來源。如需使用單一資料來源的詳細資訊，請參閱 [使用現有資料來源建立資料集](create-a-data-set-existing.md)。
+ 如果任何邏輯資料表是指作為父資料集的 Quick Sight 資料集：
  + 父資料集必須使用直接查詢。
  + 父資料集必須參考相同的 Quick Sight 資料來源。

如果不滿足上述條件，則資料集會被視為跨來源聯結。

## 有關聯結資料集的事實
<a name="join-faqs"></a>

同來源和跨來源資料集聯結都具有以下限制。

### 聯結資料集最多可以包含多少個資料表？
<a name="w2aac35c13c25b9b9b5"></a>

所有聯結的資料集最多可以包含 32 個資料表。

### 聯結資料最大可以是多少？
<a name="w2aac35c13c25b9b9b7"></a>

允許的聯結大小上限由使用的查詢模式與查詢引擎決定。下方的清單提供有關要聯結之資料表不同大小限制的資訊。大小限制會套用至所有合併的次要資料表。主資料表沒有聯結大小限制。
+ **相同來源資料表** – 當資料表來自單一查詢資料來源時，Quick Sight 不會對聯結大小施加限制。這不會覆寫來源查詢引擎可能已設立的聯結大小限制。
+ **跨來源資料集**：這種類型的聯結包含來自不同資料來源的資料表，這些資料來源未存放在 SPICE 中。對於這些類型的聯結，Quick Sight 會自動識別資料集中最大的資料表。所有其他次要資料表的合併大小，必須小於 1 GB。
+ **存放在 SPICE 中的資料集**：此類型的聯結包含所有擷取至 SPICE 的資料表。此聯結中所有次要資料表的合併大小不得超過 20 GB。

如需有關 SPICE 資料集大小計算的詳細資訊，請參閱[估計 SPICE 資料集的大小](spice.md#spice-capacity-formula)。

### 聯結的資料集可以使用直接查詢嗎？
<a name="w2aac35c13c25b9b9b9"></a>

同來源資料集支援直接查詢 (假設使用直接查詢沒有其他限制)。例如，S3 資料來源不支援直接查詢，因此同來源 S3 資料集仍必須使用 SPICE。

跨來源資料集必須使用 SPICE。

### 計算欄位可以在聯結中使用嗎？
<a name="w2aac35c13c25b9b9c11"></a>

所有聯結的資料集都可以使用計算欄位，但計算欄位不能在任何 "on" 子句中使用。

### 地理資料可以用於聯結嗎？
<a name="w2aac35c13c25b9b9c13"></a>

同來源資料集支援地理資料類型，但地理欄位不能在任何 "on" 子句中使用。

跨來源資料集不支援任何形式的地理資料。

如需跨資料來源聯結資料表的一些範例，請參閱 AWS 大數據部落格[上的 Amazon Quick Sight 上跨資料來源聯結](https://aws.amazon.com/blogs/big-data/joining-across-data-sources-on-amazon-quicksight/)文章。

## 建立聯結
<a name="create-a-join"></a>

使用以下程序聯結資料表供您在資料集內使用。開始之前，請先匯入或連接到您的資料。您可以在 Amazon Quick Sight 支援的任何資料來源之間建立聯結，物聯網 (IoT) 資料除外。例如，您可以在 Amazon S3 儲存貯體中新增逗號分隔值 (.csv) 檔案、資料表、檢視、SQL 查詢或 JSON 物件。

**若要新增一或多個聯結**

1. 開啟您要使用的資料集。

1. (選用) 開始之前，請決定是否要停用根據資料範例自動產生的預覽。若要關閉功能，請選擇右上角的**自動預覽**。預設情況下它是開啟的。

1. 如果您尚未選擇查詢模式，請選擇**查詢模式**。

   選擇 **SPICE** 將資料集儲存在 [SPICE](spice.md) 中，或選擇**直接查詢**以每次擷取即時資料。如果資料集包含一個或多個手動上傳的檔案，資料集將自動儲存在 SPICE 中。

   如果您選擇 **SPICE**，資料會擷取至 Quick Sight。使用該資料集的視覺化效果在 SPICE 中執行查詢，而不是在資料庫上執行查詢。

   如果您選擇**直接查詢**，則資料不會擷取到 SPICE。使用該資料集的視覺化效果在資料庫上執行查詢，而不是在 SPICE 中。

   如果您選擇**查詢模式**，請確保在聯結中設定唯一鍵 (如果適用)，以提高載入視覺化效果時的效能。

1. 在資料準備頁面上，選擇**新增資料**。

1. 在開啟的**新增資料頁面**中，選擇以下選項之一並完成下列步驟：
   + 從資料集中新增資料：

     1. 選擇**資料集**。

     1. 從清單中選取資料集。

     1. 選擇****選取。
   + 從資料來源新增資料：

     1. 選擇**資料來源**。

     1. 從清單中選取資料來源。

     1. 選擇**選取**。

     1. 從清單中選取資料表。

     1. 選擇**選取**。
   + 透過多次新增資料表來建立自我聯結。名稱後面會出現一個計數器。例如 **Product**、**Product (2)** 和 **Product (3)**。**欄位**或**篩選條件**區段內的欄位名稱附有計數器，讓您可得知特定欄位是取自資料表的哪個執行個體。
   + 選擇**上傳檔案**來新增檔案，然後選擇要聯結的檔案。

1. (選用) 選擇**使用自訂 SQL** 開啟查詢編輯器，並為 SQL 資料來源編寫查詢。

1. (選用) 新增資料後，透過選擇資料表選單圖示與每個資料表互動。透過拖放來重新排列資料表。

   出現帶有紅點的圖示表示您需要設定相應聯結。尚未設定的聯結會出現兩個紅點。若要建立聯結，請選擇第一個聯結組態圖示。

1. (選用) 若要變更現有聯結，請透過選擇兩個表之間的聯結圖示，來重新開啟**聯結組態**。

   **聯結組態**窗格開啟。在聯結介面上，指定聯結類型，以及要用來聯結資料表的欄位。

1. 畫面底部會提供選項，讓您將某個資料表中的欄位設為等於另一資料表中的欄位。

   1. 在 **Join clauses (聯結子句)** 區段，選擇各個資料表的聯結資料欄。

     (選用) 如果您選取的資料表要依據多個資料欄進行聯結，請選擇 **Add a new join clause (新增聯結子句)**。如此將使聯結子句多出一列，讓您可以指定下一組要聯結的資料欄。重複這個程序，直到您已識別兩個資料物件的所有聯結資料欄。

1. 在**聯結組態**窗格中，選擇要套用的聯結類型。如果聯結欄位是一個或兩個資料表的唯一索引鍵，請啟用唯一索引鍵設定。唯一索引鍵僅套用於直接查詢，不套用於 SPICE 資料。

   如需聯結的詳細資訊，請參閱 [聯結類型](#join-types)。

1. 選擇 **Apply (套用)** 以確認您的選擇。

   若要取消而不進行任何變更，請選擇**取消**。

1. 工作空間中的聯結圖示會變更以顯示新的關係。

1. (選用) 在**欄位**區段中，可以使用每個欄位的選單執行下列一項或多項操作：
   + **將階層**新增至地理空間欄位。
   + **包含**或**排除**欄位。
   + **編輯欄位的名稱和描述**。
   + **變更資料類型**。
   + **新增計算** (計算欄位)。
   + **限制為只有我能存取**，從而防止其他人存取。當您在已經使用的資料集中新增欄位時，這會很有用。

1. (選用) 在**篩選條件**區段，您可以新增或編輯篩選條件。如需詳細資訊，請參閱[在 Amazon Quick Sight 中篩選資料](adding-a-filter.md)。

## 聯結類型
<a name="join-types"></a>

Amazon Quick Sight 支援下列聯結類型：
+ 內部聯結
+ 左外部聯結和右外部聯結
+ 完整外部聯結

底下將深入探討各種聯結類型處理資料的方式。範例資料所使用的資料表如下，其名稱是 `widget` 和 `safety rating`。

```
SELECT * FROM safety-rating

rating_id	safety_rating
1		    A+
2		    A
3		    A-
4		    B+
5		    B

SELECT * FROM WIDGET

widget_id	   widget	safety_rating_id
1		    WidgetA		3
2		    WidgetB		1
3		    WidgetC		1
4		    WidgetD		2
5		    WidgetE
6		    WidgetF		5
7		    WidgetG
```

### 內部聯結
<a name="join-inner"></a>

當您只想查看兩個資料表之間有相符的資料時，請使用內部聯結。例如，假設您對 **safety-rating** 和 **widget** 資料表執行內部聯結。

如以下結果集所示，沒有安全評分的小工具已移除，未與任何小工具相關聯的安全評分也已移除。結果僅包含完全相符的資料列。

```
SELECT * FROM safety-rating
INNER JOIN widget
ON safety_rating.rating_id = widget.safety_rating_id

rating_id    safety_rating    widget_id    widget        safety_rating_id
3	        A-                1        WidgetA        3
1	        A+                2        WidgetB        1
1	        A+                3        WidgetC        1
2	        A                 4        WidgetD        2
5	        B                 6        WidgetF        5
```

### 左外部聯結和右外部聯結
<a name="join-left-or-right"></a>

這一類又稱為左外部聯結或右外部聯結。當您想要查看一個資料表的所有資料，以及只查看另一個資料表的相符資料列時，請使用左或右外部聯結。

透過圖形界面，您可以看到位於右側或左側的是哪個資料表。在 SQL 陳述式中，第一個資料表視為位於左側。因此，選擇左外部聯結或相對的右外部聯結，僅取決於資料表在查詢工具中的配置順序。

例如，假設您在 `safety-rating`（左側資料表） 和 `widgets`（右側資料表） 上執行左側外部聯結。在此情況下將傳回所有 `safety-rating` 資料列，並且僅傳回相符的 `widget` 資料列。結果集內呈空白之處即表示沒有相符的資料。

```
SELECT * FROM safety-rating
LEFT OUTER JOIN widget
ON safety_rating.rating_id = widget.safety_rating_id

rating_id    safety_rating    widget_id   widget          safety_rating_id
1	        A+                2        WidgetB   	1
1	        A+                3        WidgetC   	1
2	        A                 4        WidgetD   	2
3	        A-                1        WidgetA   	3
4	        B+
5	        B                 6        WidgetF   	5
```

如果您改為使用右側外部聯結，請以相同的順序呼叫資料表，因此 `safety-rating` 位於左側， `widgets`位於右側。在此情況下將僅傳回相符的 `safety-rating` 資料列，並且傳回所有 `widget` 資料列。結果集內呈空白之處即表示沒有相符的資料。

```
SELECT * FROM safety-rating
RIGHT OUTER JOIN widget
ON safety_rating.rating_id = widget.safety_rating_id

rating_id    safety_rating    widget_id   widget          safety_rating_id
3	        A-                1	WidgetA   	 3
1	        A+                2	WidgetB   	 1
1	        A+                3	WidgetC   	 1
2	        A                 4	WidgetD   	 2
                                  5       WidgetE
5	        B                 6	WidgetF   	 5
                                  7       WidgetG
```

### 完整外部聯結
<a name="join-full-outer"></a>

這一類有時簡稱外部聯結，但此用語可能是指左外部聯結、右外部聯結或完整外部聯結。為了明確其含意，本文將使用全名：完整外部聯結。

使用完整的外部聯結來查看相符的資料，以及來自兩個不相符資料表的資料。此一類型的聯結將包括兩個資料表中的所有資料列。例如，假設您對 `safety-rating` 和 `widget` 資料表執列完整外部聯結，便會傳回所有資料列。相符的資料列將彼此對齊，而所有額外的資料則納入至單獨的各列。結果集內呈空白之處即表示沒有相符的資料。

```
SELECT * FROM safety-rating
FULL OUTER JOIN widget
ON safety_rating.rating_id = widget.safety_rating_id

rating_id    safety_rating    widget_id   widget         safety_rating_id
1	        A+                2	WidgetB   	1
1	        A+                3	WidgetC   	1
2	        A                 4	WidgetD   	2
3	        A-                1	WidgetA   	3
4	        B+
5	        B                 6	WidgetF   	5
                                  5	WidgetE
                                  7	WidgetG
```

# 在 Amazon Quick Sight 中準備用於分析的資料欄位
<a name="preparing-data-fields"></a>

在開始分析和視覺化資料之前，您可以針對分析準備資料集中的欄位 (資料欄) 。您可以編輯欄位名稱和描述、變更欄位的資料類型、設定欄位的向下切入階層等。

使用以下主題的內容準備資料集中的欄位。

**Topics**
+ [

# 編輯欄位名稱和描述
](changing-a-field-name.md)
+ [

# 將欄位設定為維度或量值
](setting-dimension-or-measure.md)
+ [

# 變更欄位資料類型
](changing-a-field-data-type.md)
+ [

# 在 Quick Sight 中將向下切入至視覺化資料
](adding-drill-downs.md)
+ [

# 選取欄位
](selecting-fields.md)
+ [

# 在 Amazon QuickSight 中將欄位整理到資料夾中
](organizing-fields-folder.md)
+ [

# 映射與聯結欄位
](mapping-and-joining-fields.md)

# 編輯欄位名稱和描述
<a name="changing-a-field-name"></a>

您可以變更資料來源提供的任何欄位名稱和描述。如果您變更計算欄位中使用的名稱欄位，請確保也會在計算欄位函數中變更它。否則，函數會失敗。

**變更欄位名稱或描述**

1. 在資料準備頁面的**欄位**窗格中，選擇要變更的欄位上的三個點圖示。然後選擇**編輯名稱和描述**。

1. 輸入要使用的新名稱或描述，然後選擇**套用**。

您也可以在資料準備頁面上變更欄位的名稱和描述。為此，請在該頁面下半部分的**資料集**表中選取要變更欄位的資料欄標頭。然後進行變更。

# 將欄位設定為維度或量值
<a name="setting-dimension-or-measure"></a>

在 **Field list (欄位清單)** 窗格中，維度欄位有藍色圖示，而度量欄位有綠色圖示。*Dimensions (維度)* 是文字或日期欄位，可以是項目 (例如產品) 或與度量相關的屬性。您可以使用維度來分割這些項目或屬性，例如銷售數字的銷售日期。*Measures (度量)* 是用於測量、比較和彙總的數值。

在某些情況下，Quick Sight 會將欄位解譯為您想要將其用作維度 （或其他方式） 的度量。若是如此，您可以變更該欄位的設定。

變更欄位的量值或維度設定會變更使用該資料集的分析中的所有視覺化效果。不過，它不會變更資料集本身。

## 變更欄位的維度或量值設定
<a name="change-dimension-or-measure"></a>

透過以下程序變更欄位的維度或量值設定

**變更欄位的維度或量值設定**

1. 在**欄位清單**窗格中，將游標移至您要變更的欄位上。

1. 選擇欄位名稱右邊的選擇器圖示，然後選擇 **Convert to dimension (轉換為維度)** 或 **Convert to measure (轉換為度量)**。

# 變更欄位資料類型
<a name="changing-a-field-data-type"></a>

Quick Sight 擷取資料時，會根據欄位中的資料為每個欄位指派資料類型。可能的資料類型如下：
+ 日期：日期資料類型用於採用支援格式的日期資料。如需 Quick Sight 支援的日期格式資訊，請參閱 [資料來源配額](data-source-limits.md)。
+ 小數：小數資料類型用於需要一或多個位小數位數精確度的數字資料，例如 18.23。小數資料類型支援小數點右邊最多四個小數位數的數值。在兩種情況下，比此小數位數更高的值會被截斷至小數點後第四位。一個是將這些值顯示在資料準備或分析中，另一個是將這些值匯入 Quick Sight。例如，13.00049 會截斷至 13.0004。
+ 空間地理：地理空間資料類型用於地理空間資料，例如經度和緯度，或城市和國家。
+ 整數：資料類型用於只包含整數的數字資料，例如 39。
+ 字串：字串資料類型用於非日期的英數字元資料。

Quick Sight 會讀取欄中的一小部分資料列範例，以判斷資料類型。小樣本中出現最多的資料類型便是建議的類型。在某些情況下，在大部分包含數字的欄中可能會有空白值 （由 Quick Sight 視為字串）。在這些情況下，字串資料類型可能是列樣本集中最常見的類型。您可以手動修改資料欄的資料類型，將其設定為整數。透過以下程序了解設定方式 。

## 在資料準備期間變更欄位資料類型
<a name="changing-a-field-data-type-prep"></a>

在資料準備期間，您可以變更資料來源中任何欄位的資料類型。在**變更資料類型**選單上，您可以將不包含彙總的計算欄位變更為地理空間類型。您可以透過直接修改計算欄位的表達式，對計算欄位的資料類型進行其他變更。Quick Sight 會根據您選擇的資料類型轉換欄位資料。資料列若包含與該資料類型不相容的資料，則會略過這些資料列。例如，假設您將以下欄位從字串轉換為整數。

```
10020
36803
14267a
98457
78216b
```

會略過該欄位中所有包含字母字元的記錄，如下所示。

```
10020
36803
98457
```

如果您有資料庫資料集，其中包含 Quick Sight 不支援其資料類型的欄位，請在資料準備期間使用 SQL 查詢。然後，使用 `CAST` 或 `CONVERT` 命令 (取決於來源資料庫支援的項目)，來變更欄位資料類型。如需在資料準備期間新增 SQL 查詢的詳細資訊，請參閱[使用 SQL 自訂資料](adding-a-SQL-query.md)。如需 Quick Sight 如何解譯不同來源資料類型的詳細資訊，請參閱 [來自外部資料來源的受支援資料類型](supported-data-types-and-values.md#supported-data-types)。

您可能有做為維度而非指標的數字欄位，例如郵遞區號和大多數 ID 號碼。在這些情況下，在資料準備過程中給予它們字串資料類型是很有幫助的。這樣做可讓 Quick Sight 了解它們不適用於執行數學計算，並且只能與 `Count`函數彙總。如需 Quick Sight 如何使用維度和量值的詳細資訊，請參閱 [將欄位設定為維度或量值](setting-dimension-or-measure.md)。

在 [SPICE](spice.md) 中，根據預設會截斷從數字轉換為整數的數字。如果您想要改為捨入您的數字，則可以使用 [`round`](round-function.md) 函數來建立計算欄位。若要在將數字擷取至 SPICE 之前，查看是否將這些數字捨入或截斷，請檢查您的資料庫引擎。

**在資料準備期間變更欄位資料類型**

1. 在 Quick Sight 首頁中，選擇左側**的資料**。在**資料**索引標籤中，選擇您想要的資料集，然後選擇**編輯資料集**。

1. 在資料預覽窗格中，於您要變更的欄位下方選擇資料類型圖示。

1. 選擇目標資料類型。只會列出目前使用中之資料類型以外的資料類型。

## 在分析中變更欄位資料類型
<a name="changing-an-analysis-field-data-type"></a>

您也可以使用 **Field list (欄位清單)** 窗格、視覺化效果欄位或視覺化效果編輯器，變更分析環境中數值欄位資料類型。數值欄位預設為顯示數字，但您可以選擇使其顯示為貨幣或百分比。您無法變更字串或日期欄位的資料類型。

在分析中變更欄位的資料類型會變更使用該資料集的分析中的所有視覺化效果。不過，它不會變更資料集本身。

**注意**  
如果您在樞紐分析表視覺效果中工作，在某些情況下，套用資料表計算會變更儲存格值的資料類型。如果資料類型與套用的計算不合理，則會發生此類型的變更。  
例如，假設將 `Rank` 函數套用到您已修改為使用貨幣資料類型的數值欄位。在此情況下，儲存格值會顯示為數字，而不是貨幣。同樣地，如果您改為 `Percent difference` 函數，則儲存格值會顯示為百分比，而不是貨幣。

**變更欄位資料類型**

1. 請選擇下列其中一個選項：
   + 在**欄位清單**窗格中，將游標移至您要變更的數值欄位上。然後選擇欄位名稱右側的選擇器圖示。
   + 在包含視覺化效果編輯器 (而這些編輯器與您要變更的數值欄位相關聯) 的任何視覺化效果，選擇視覺化效果編輯器。
   + 展開**欄位集**窗格，然後再選擇與要變更之數值欄位關聯的欄位集。

1. 選擇 **Show as (顯示)**，然後選擇 **Number (數字)**、**Currency (貨幣)** 或 **Percent (百分比)**。

# 在 Quick Sight 中將向下切入至視覺化資料
<a name="adding-drill-downs"></a>

樞紐分析表除外，所有視覺效果類型都能夠為視覺化元素建立欄位階層。階層可讓您向下切入查看不同階層等級的資料。例如，您可以將國家、州及城市欄位與長條圖的 X 軸建立關聯。然後，您可以向下或向上切入查看每個等級的資料。當您向下切入每個等級時，顯示的資料會依據您向下切入的欄位中的值而精簡。例如，如果您向下切入加州，則會看到加州所有城市的資料。

您可用來建立向下切入的欄位集隨視覺效果類型而不同。請參閱每個視覺效果類型的相關主題，以進一步了解其向下切入支援。

當您將日期欄位與視覺效果的向下切入欄位集建立關聯時，將會自動為日期新增向下切入功能。在這種情況下，您可以隨時向上和向下切入日期精細程度的等級。當您在資料集定義地理空間分組之後，也會自動新增向下切入功能。

使用下表來識別各種視覺效果類型中支援向下切入的欄位集或視覺效果附帶編輯器。


****  

| 視覺效果類型 | 欄位集或視覺效果附帶編輯器 | 
| --- | --- | 
| 長條圖 (全部水平) | Y axis (Y 軸) 和 Group/Color (群組/顏色) | 
| 長條圖 (全部垂直) | X axis (X 軸) 和 Group/Color (群組/顏色) | 
| 組合圖 (全部) | X axis (X 軸) 和 Group/Color (群組/顏色) | 
| 地理空間圖 | Geospatial (地理空間) 和 Color (顏色) | 
| 熱度圖 | Rows (列) 和 Columns (欄) | 
| KPI | Trend Group (趨勢群組) | 
| 折線圖 (全部) | X axis (X 軸) 和 Color (顏色) | 
| 圓餅圖 | 群組/色彩 | 
| 散佈圖 | 群組/色彩 | 
| 樹狀結構圖 | 分組依據 | 

**重要**  
資料表或樞紐分析表不支援向下切入。

## 新增向下切入
<a name="add-drill-downs"></a>

透過以下程序將向下切入等級新增到視覺效果。

**將向下切入等級新增到視覺化效果**

1. 在分析頁面上，選擇您要新增向下切入的視覺效果。

1. 將欄位項目拖曳到**欄位集**。

1. 如果您的資料集已定義階層，您可以將整個階層一次拖曳到欄位集。例如地理空間或座標資料。在這種情況下，您不需要執行剩餘的步驟。

   如果您沒有預先定義的階層，您可以在分析中建立階層，如剩餘的步驟所述。

1. 將您想要在向下切入階層中使用的欄位，根據視覺效果類型而定，拖曳到適當的欄位集。確定所拖曳欄位的標籤是 **Add drill-down layer (新增向下切入分層)**。根據您希望所拖曳的欄位放在您所建立的階層中的何處而定，將此欄位移到現有欄位的上方或下方。

1. 繼續直到您需要的所有階層等級都已新增為止。若要從階層中移除欄位，請選擇欄位，然後選擇 **Remove (移除)**。

1. 若要向下或向上切入以查看不同階層等級的資料，請在視覺效果 (例如折線或長條) 上選擇元素，然後選擇 **Drill down to <lower level> (向下切入 &lt;較低等級&gt;)** 或 **Drill up to <higher level> (向上切入 &lt;較高等級&gt;)**。在這個範例中，您可以從 `car-make` 等級向下切入 `car-model`，以查看該等級的資料。如果您從 **Ford**`car-make` 向下切入到 `car-model`，則您只能看到該汽車品牌的 `car-model`。

   在您向下切入 `car-model` 等級之後，您可以進一步向下切入以查看 `make-year` 資料，或向上回到 `car-make`。如果您從代表 **Ranger** 的列向下切入到 `make-year`，則您只能看到該車型的年份。

# 選取欄位
<a name="selecting-fields"></a>

準備資料時，您可以選取一個或多個欄位來對其執行動作，例如排除或新增至資料夾。

若要在資料準備窗格中選取一個或多個欄位，請按一下或點選左側**欄位**窗格中的一個或多個欄位。然後，您可以選擇欄位名稱右側的欄位選單 (三個點)，並選擇要執行的動作。此動作針對所有選取的欄位執行。

您可以一次選取或取消選取所有欄位，方法為選擇 **Fields (欄位)** 窗格頂部的 **All (全部)** 或 **None (無)**。

如果您編輯資料集，並排除視覺效果中使用的欄位，則視覺效果會中斷。您可以在下次開啟該分析時修正它。

## 搜尋欄位
<a name="searching-for-a-field-data-prep"></a>

如果您在**欄位**窗格中有長欄位清單，則可以對**搜尋欄位**輸入搜尋詞彙，來搜尋以找出特定欄位。這時會顯示任何其名稱包含搜尋詞彙的欄位。

搜尋不區分大小寫，而且不支援萬用字元。選擇搜尋方塊右邊的取消圖示 (**X**)，來返回以檢視所有欄位。

# 在 Amazon QuickSight 中將欄位整理到資料夾中
<a name="organizing-fields-folder"></a>

在 Quick Sight 中準備資料時，您可以使用資料夾來組織整個企業中多個作者的欄位。將欄位整理到資料夾和子資料夾中，可以讓作者更輕鬆地找到和理解資料集中的欄位。

您可以在準備資料集或編輯資料集時建立資料夾。如需建立及準備新資料集的詳細資訊，請參閱 [建立資料集](creating-data-sets.md)。如需開啟現有資料集進行資料準備的詳細資訊，請參閱 [編輯資料集](edit-a-data-set.md)。

在執行分析時，作者可以展開和折疊資料夾、搜尋資料夾中的特定欄位，以及在資料夾選單上查看資料夾的描述。資料夾按字母順序顯示在**欄位**窗格的頂端。

## 建立資料夾
<a name="organizing-fields-folder-create"></a>

透過以下程序在**欄位**窗格中建立新資料夾。

**要建立新的資料夾**

1. 在資料準備頁面上**的欄位**窗格中，選取三點圖示，然後選擇**新增至資料夾**。

   若要一次選取多個欄位，請在選取時按住 Ctrl 鍵 (在 Mac 上為 Command 鍵)。

1. 在出現的**新增至資料夾**頁面上，選擇**建立新資料夾**並輸入新資料夾的名稱。

1. 選擇**套用**。

該資料夾顯示在**欄位**窗格的頂端，其中包含您在其中選擇的欄位。資料夾內的欄位依字母順序排列。

## 建立子資料夾
<a name="organizing-fields-folder-subfolder"></a>

若要進一步整理**欄位**窗格中的資料欄位，您可以在父資料夾中建立子資料夾。

**建立子資料夾**

1. 在資料準備頁面上的**欄位**窗格中，選取資料夾中已有欄位的欄位選單，然後選取**移至資料夾**。

1. 在出現的**移至資料夾**頁面上，選擇**建立新資料夾**並輸入新資料夾的名稱。

1. 選擇**套用**。

子資料夾顯示在欄位清單頂端的父資料夾內。子資料夾按字母順序排列。

## 將欄位新增至現有資料夾
<a name="organizing-fields-folder-add"></a>

透過以下程序將欄位新增至**欄位**窗格中的現有資料夾。

**將一個或多個欄位新增至資料夾**

1. 在資料準備頁面上的**欄位**窗格中，選取要新增至資料夾的欄位。

   若要一次選取多個欄位，請在選取時按住 Ctrl 鍵 (在 Mac 上為 Command 鍵)。

1. 在欄位選單上，選擇**新增至資料夾**。

1. 在出現的**新增至資料夾**頁面上，針對**現有資料夾**選擇一個資料夾。

1. 選擇**套用**。

一個或多個欄位將會新增到資料夾中。

## 在資料夾之間移動欄位
<a name="organizing-fields-folder-move"></a>

透過以下程序在**欄位**窗格中的資料夾之間移動欄位。

**在資料夾之間移動欄位**

1. 在資料準備頁面上的**欄位**窗格中，選取要移至其他資料夾的欄位。

   若要一次選取多個欄位，請在選取時按住 Ctrl 鍵 (在 Mac 上為 Command 鍵)。

1. 在欄位選單上，選擇**移至資料夾**。

1. 在出現的**移至資料夾**頁面上，針對**現有資料夾**選擇一個資料夾。

1. 選擇**套用**。

## 從資料夾移除欄位
<a name="organizing-fields-folder-remove"></a>

透過以下程序從**欄位**窗格中的資料夾移除欄位。從資料夾移除欄位並不會刪除相應欄位。

**從資料夾移除欄位**

1. 在資料準備頁面上的**欄位**窗格中，選取要移除的欄位。

1. 在欄位選單上，選擇**從資料夾移除**。

您選取的欄位將從資料夾移除，並按字母順序放回欄位清單中。

## 編輯資料夾名稱並新增資料夾描述
<a name="organizing-fields-folder-edit"></a>

您可以編輯資料夾的名稱或新增描述，以提供有關其中資料欄位的內容。資料夾名稱顯示在**欄位**窗格中。在執行分析時，如果作者選取**欄位**窗格中的資料夾選單，則可以閱讀資料夾的描述。

**編輯資料夾名稱或編輯或新增資料夾的描述**

1. 在資料準備頁面上的**欄位**窗格中，選取要編輯的資料夾的資料夾選單，然後選取**編輯名稱和描述**。

1. 在出現的**編輯資料夾**頁面上，執行下列操作：
   + 針對**名稱**，輸入資料夾的名稱。
   + 針對**描述**，輸入資料夾的描述。

1. 選擇**套用**。

## 移動資料夾
<a name="organizing-fields-folder-move-folder"></a>

您可以將資料夾和子資料夾移至**欄位**窗格中的新資料夾或現有資料夾。

**移動資料夾**

1. 在資料準備頁面上的**欄位**窗格中，選擇資料夾選單上的**移動資料夾**。

1. 在出現的**移動資料夾**頁面上，執行下列其中一項操作：
   + 選擇**建立新資料夾**並輸入資料夾名稱。
   + 針對**現有資料夾，**選擇一個資料夾。

1. 選擇**套用**。

該資料夾將顯示在您在**欄位**窗格中選擇的資料夾內。

## 從欄位窗格移除資料夾
<a name="organizing-fields-folder-delete"></a>

透過以下程序從**欄位**窗格移除資料夾。

**移除資料夾**

1. 在資料準備頁面上的**欄位**窗格中，選擇資料夾選單上的**移除資料夾**。

1. 在出現的**移除資料夾？**頁面上，選擇**移除**。

該資料夾將從**欄位**窗格中移除。資料夾中的任何欄位都會按字母順序放回欄位清單中。移除資料夾不會從檢視中排除欄位或從資料集中刪除欄位。

# 映射與聯結欄位
<a name="mapping-and-joining-fields"></a>

當您在 Quick Sight 中同時使用不同的資料集時，您可以在資料準備階段簡化映射欄位或聯結資料表的程序。您應該已經驗證您的欄位具有正確資料類型和適當欄位名稱。不過，如果您已經知道要同時使用哪些資料集，您可以採取幾個額外的步驟，讓您能更輕鬆作業。

## 映射欄位
<a name="mapping-and-joining-fields-automatic"></a>

Quick Sight 可以在相同分析中的資料集之間自動映射欄位。下列秘訣有助於讓 Quick Sight 更輕鬆地在資料集之間自動對應欄位，例如，如果您要跨資料集建立篩選動作：
+ 相符的欄位名稱：欄位名稱必須完全相符，大小寫、間距或標點符號都沒有任何差異。您可以重新命名描述相同資料的欄位，使自動映射精確。
+ 相符的資料類型：欄位必須具有相同的資料類型以供自動映射。您可以在準備資料時變更資料類型。這個步驟也讓您有機會探索您是否需要篩選掉任何非正確資料類型的資料。
+ 使用計算欄位：您可以使用計算欄位建立相符欄位，並為其提供正確的名稱和資料類型以供自動映射。

**注意**  
自動映射存在後，您可以在不中斷欄位映射的情況下重新命名欄位。不過，如果您變更資料類型，映射即會中斷。

如需跨資料集篩選條件動作的欄位映射詳細資訊，請參閱 [在 Amazon Quick Sight 中建立和編輯自訂動作](custom-actions.md)。

## 聯結欄位
<a name="mapping-and-joining-fields-manual"></a>

您可以在不同資料來源 (包括檔案或資料庫) 的資料之間建立聯結。下列秘訣可協助您更輕鬆地聯結不同檔案或資料來源的資料：
+ 類似的欄位名稱：當您知道哪些項目應該相符時，聯結欄位會更簡單：例如，**訂單 ID** 和 **order-id** 看起來似乎應該是相同的。但是，如果一個是工作訂單，而另一個是採購訂單，那麼這些欄位可能是不同的資料。如果可能的話，請確定您要聯結的檔案和資料表具有可清楚顯示它們包含哪些資料的欄位名稱。
+ 相符的資料類型：欄位必須具有相同的資料類型，您才能將它們聯結。請確認您想要聯結的檔案和資料表在聯結欄位中具有相符的資料類型。您無法使用計算欄位進行聯結。此外，您無法聯結兩個現有的資料集。您可以透過直接存取來源資料來建立聯結的資料集。

如需跨資料來源聯結資料的詳細資訊，請參閱[聯結資料](joining-data.md)。

# 在 Amazon Quick Sight 中篩選資料
<a name="adding-a-filter"></a>

您可以使用篩選條件，以精簡資料集或分析內的資料。例如，您可以在區域欄位上建立篩選條件，以排除資料集中特定區域的資料。您也可以為分析新增篩選條件，例如針對要包含在分析中的任何視覺化效果的日期範圍篩選條件。

當您在資料集中建立篩選條件時，該篩選條件將套用於整個資料集。從該資料集建立的任何分析和後續儀表板都包含該篩選條件。如果有人根據該資料集建立新的資料集，則該篩選條件也會存在於新資料集中。

當您在某個分析中建立篩選條件時，該篩選條件僅適用於該分析以及您從中發布的任何儀表板。如果有人複製該分析，該篩選條件將保留在新分析中。在分析中，您可以將篩選條件的適用範圍限定為使用此資料集的單一視覺化效果、某些視覺化效果或所有視覺化效果，或所有適用的視覺化效果。

此外，當您在分析中建立篩選條件時，您可以將篩選條件控制項新增至儀表板。如需有關篩選條件控制項的詳細資訊，請參閱 [將篩選條件控制項新增至分析工作表](filter-controls.md)。

每個篩選條件僅套用至單一欄位。您可以將篩選條件同時套用至一般和計算欄位。

您可以將多種類型的篩選條件新增至資料集和分析。如需可以新增的篩選條件類型及其一些選項的詳細資訊，請參閱 [Amazon Quick 中的篩選條件類型](filtering-types.md)。

如果建立多個篩選條件，則會使用 AND 將所有最上層篩選條件套用在一起。如果您在最上層群組篩選條件內新增篩選條件來將它們分組，則群組中的篩選條件會使用 OR 來套用。

Amazon Quick Sight 會將所有啟用的篩選條件套用至 欄位。例如，假設有一個篩選條件為 `state = WA`，另一個篩選條件為 `sales >= 500`。在這種情況下，相應資料集或分析只包含符合這兩個條件的記錄。如果您停用其中一個篩選條件，則只會套用一個篩選條件。

請注意，套用至相同欄位的多個篩選條件不會互斥。

透過以下各章節了解如何檢視、新增、編輯和刪除篩選條件。

**Topics**
+ [

# 檢視現有篩選條件
](viewing-filters-data-prep.md)
+ [

# 新增篩選條件
](add-a-filter-data-prep.md)
+ [

# 跨工作表篩選條件與控制項
](cross-sheet-filters.md)
+ [

# Amazon Quick 中的篩選條件類型
](filtering-types.md)
+ [

# 將篩選條件控制項新增至分析工作表
](filter-controls.md)
+ [

# 編輯篩選條件
](edit-a-filter-data-prep.md)
+ [

# 啟用或停用篩選條件
](disable-a-filter-data-prep.md)
+ [

# 刪除篩選條件
](delete-a-filter-data-prep.md)

# 檢視現有篩選條件
<a name="viewing-filters-data-prep"></a>

當您編輯資料集或開啟分析時，您可以檢視已建立的任何現有篩選條件。透過以下程序了解操作方式。

## 檢視資料集的篩選條件
<a name="viewing-filters-data-prep-datasets"></a>

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 在快速首頁中，選擇左側**的資料**。

1. 在**資料集**索引標籤中，選擇您想要的資料集，然後選擇**編輯資料集**。

1. 在開啟的資料準備頁面上，選擇左下角的**篩選條件**以展開**篩選條件**區段。

   套用於該資料集的任何篩選條件都會顯示在此處。如果單一欄位具有多個篩選條件，則它們會構成群組。它們依建立日期的順序顯示，最舊的篩選條件位於最上方。

## 檢視分析的篩選條件
<a name="viewing-filters-data-prep-analyses"></a>

透過以下程序來檢視分析的篩選條件。

**若要檢視分析的篩選條件**

1. 在快速首頁中，選擇**分析**。

1. 在**分析**頁面上，選擇您要使用的分析。

1. 在分析中，選擇**篩選條件**圖示以開啟**篩選條件**窗格。

   套用於該分析的任何篩選條件都會顯示在此。

   每個篩選條件的底部會列出篩選條件範圍的限定方式。如需有關篩選條件套用範圍的詳細資訊，請參閱 [新增篩選條件](add-a-filter-data-prep.md)。

# 新增篩選條件
<a name="add-a-filter-data-prep"></a>

您可以新增篩選條件至資料集或分析。透過以下程序了解操作方式。

## 新增篩選條件至資料集
<a name="add-a-filter-data-prep-datasets"></a>

透過以下程序新增篩選條件至資料集。

**若要新增篩選條件至資料集**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 在快速首頁中，選擇左側**的資料**。

1. 在**資料集**索引標籤中，選擇您想要的資料集，然後選擇**編輯資料集**。

1. 在開啟的資料準備頁面上，選擇左下角的**新增篩選條件**，然後選擇要篩選的欄位。

   篩選條件會新增到**篩選條件**窗格。

1. 在窗格中選擇這個新的篩選條件以進行設定。您也可以選擇新篩選條件右側的三個點，然後選擇**編輯**。

   根據欄位的資料類型，可用於設定篩選條件的選項會有所不同。如需可以建立的篩選條件類型及其組態的詳細資訊，請參閱 [Amazon Quick 中的篩選條件類型](filtering-types.md)。

1. 完成後，選擇**套用**。
**注意**  
只在您合併的篩選條件套用至前 1,000 個資料列時，資料預覽才會顯示其結果。如果篩選掉所有前 1,000 個資料列，則預覽中不會顯示任何資料列。即使未篩選掉前 1,000 之後的資料列，此效果也會發生。

## 在分析中新增篩選條件
<a name="add-a-filter-data-prep-analyses"></a>

透過以下程序新增篩選條件至分析。

**若要新增篩選條件至分析**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 在快速首頁中，選擇**分析**。

1. 在**分析**頁面上，選擇您要使用的分析。

1. 在分析中，選擇**篩選條件**圖示以開啟**篩選條件**窗格，然後選擇**新增**。

1. 在窗格中選擇相應的新篩選條件進行設定。您也可以選擇新篩選條件右側的三個點，然後選擇**編輯**。

1. 在開啟的**編輯篩選條件**窗格中，針對**套用至**，選擇下列選項之一。
   + **單一視覺效果**：篩選條件僅套用至所選項目。
   + **單一工作表**：篩選條件套用至單一工作表。
   + **跨工作表**：篩選條件會套用至資料集中的多個工作表。

   根據欄位的資料類型，可用於設定篩選條件的剩餘選項會有所不同。如需可以建立的篩選條件類型及其組態的詳細資訊，請參閱 [Amazon Quick 中的篩選條件類型](filtering-types.md)。

# 跨工作表篩選條件與控制項
<a name="cross-sheet-filters"></a>

跨工作表篩選條件和控制項是範圍限定在整個分析或儀表板，或分析與儀表板內多個工作表的篩選條件。

## 篩選條件
<a name="filters"></a>

**建立跨工作表篩選條件**

1. [新增篩選條件](https://docs.aws.amazon.com/quicksight/latest/user/add-a-filter-data-prep.html#add-a-filter-data-prep-analyses)後，您可以將篩選條件的範圍更新為跨工作表。依預設，這適用於分析中的所有工作表。

1. 如果已核取**套用跨資料集**方塊，則篩選條件將套用至最多 100 個不同的資料集中的所有視覺效果，這些資料集適用於篩選條件範圍中的所有工作表。

1. 如果您想要自訂套用篩選條件的工作表，請選擇跨工作表圖示。然後，您可以檢視目前套用篩選條件的工作表，或在自訂選取工作表上切換。

1. 當您啟用**自訂選取工作表**時，您可以選取要套用篩選條件的工作表。

1. 遵循在[編輯分析中的篩選條件](https://docs.aws.amazon.com/quicksight/latest/user/edit-a-filter-data-prep.html#edit-a-filter-data-prep-analyses)的步驟。您的變更會套用至您所選取所有工作表的所有篩選條件。如果篩選條件範圍限定在您的整個分析，則這包含新增的工作表。

**移除跨工作表篩選條件**

**正在刪除**

如果您沒有在這些篩選條件中建立控制項，請參閱[刪除分析中的篩選條件](https://docs.aws.amazon.com/quicksight/latest/user/delete-a-filter-data-prep.html#delete-a-filter-data-prep-analyses)。

如果您已建立控制項，則：

****

1. 遵循[刪除分析中的篩選條件](https://docs.aws.amazon.com/quicksight/latest/user/delete-a-filter-data-prep.html#delete-a-filter-data-prep-analyses)中的指示。

1. 如果您選擇**刪除篩選條件與控制項**，則會從所有頁面中刪除控制項。這可能會影響分析的版面配置。您也可以個別移除這些控制項。

**縮小範圍**

如果想要移除跨工作表篩選條件，也可以透過變更篩選條件範圍來執行此操作：

****

1. 遵循[在分析中編輯篩選條件](https://docs.aws.amazon.com/quicksight/latest/user/edit-a-filter-data-prep.html#edit-a-filter-data-prep-analyses)中的指示，以取得篩選條件。

1. 您可以進行的其中一個編輯是變更範圍。您可以切換到**單一工作表**或**單一視覺效果**。您也可以從跨工作表選擇中移除工作表。

   或自訂工作表選取：  
![\[這是 Quick Sight 中刪除篩選條件的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/cross-sheet-7.png)

1. 如果有控制項，您會看到一個模態，警告您將從不再套用篩選條件的任何工作表大量移除控制項，這可能會影響您的配置。您也可以個別移除控制項。如需詳細資訊，請參閱[移除跨工作表控制項](#cross-sheet-removing-control)。

1. 如果您將控制項新增至**篩選條件範圍中所有工作表的頂端**，則如果篩選條件的範圍限定在整個分析中，依預設，新增工作表將具有此新控制項。

## 控制項
<a name="cross-sheet-controls"></a>

### 建立跨工作表控制項
<a name="cross-sheet-controls-creating-control"></a>

**新的篩選條件控制項**

1. 建立跨工作表篩選條件。如需詳細資訊，請參閱[篩選條件](#filters)。

1. 從三個點的選單中，您可以看到顯示**新增控制項**的選項。將游標暫留在其上，您將看到三個選項：
   + **篩選條件範圍中所有工作表的頂端**
   + **此工作表的頂端**
   + **在此工作表內**

   如果您想要在工作表內新增至多個工作表，您可以逐工作表進行此操作。您也可以新增至頂端，然後使用每個控制項上的選項以**移至工作表**。如需詳細資訊，請參閱[編輯跨工作表控制項](#cross-sheet-controls-editing-control)。

**增加現有控制項的範圍**

1. 導覽至分析中的現有篩選條件

1. 將**套用**此篩選條件的工作表範圍變更為**跨工作表**。

1. 如果已經有從篩選條件建立的控制項，您會看到模態，如果您勾選此方塊，會將控制項大量新增至篩選條件範圍中所有工作表的頂端。如果已在工作表上，這不會影響已建立控制項的位置。

### 編輯跨工作表控制項
<a name="cross-sheet-controls-editing-control"></a>

1. 前往跨工作表控制項 (如果控制項釘選在頂端)，並選取三個點的選單；或選取編輯鉛筆圖示 (如果控制項位於工作表)。您將會看到下列選項：
   + **前往篩選條件** (這將引導您前往跨工作表篩選條件，供您編輯或檢閱)
   + **移至工作表** (這會將控制項移至分析窗格)
   + **重設** 
   + **重新整理** 
   + **編輯** 
   + **移除** 

1. 選擇**編輯**。這將顯示分析右側的**格式控制**窗格。

1. 然後，您可以編輯控制項。標示**跨工作表設定**的頂端區段將套用至所有控制項，而本區域以外的任何設定皆不適用於所有控制項，而僅適用於您正在編輯的特定控制項。例如，**相關值**不是跨工作表控制項設定。

1. 您也可以查看此控制項所在的工作表，以及每個工作表上控制項的所在位置 (頂端或工作表)。您可以選擇 **Sheets(8)** 來執行此操作。

### 移除跨工作表控制項
<a name="cross-sheet-removing-control"></a>

有兩個方法可以移除控制項。第一個方法，從控制項：

1. 前往跨工作表控制項 (如果控制項釘選在頂端)，並選取三個點的選單；或選取編輯鉛筆圖示 (如果控制項位於工作表)。您將會看到下列選項：
   + **前往篩選條件** (這將引導您前往跨工作表篩選條件，供您編輯或檢閱)
   + **移至工作表** (這會將控制項移至分析窗格)
   + **重設** 
   + **重新整理** 
   + **編輯** 
   + **移除** 

1. 選擇**移除**。

第二個方法，從篩選條件中移除控制項：

1. 在建立跨工作表控制項的跨工作表篩選條件上，選擇三個點的選單。您會看到，現在有**管理控制項**的選項，而不是**新增控制項**的選項。

1. 將游標暫留在**管理控制項**上。您將會看到下列選項：
   + **在此工作表內移動** 
   + **此工作表的頂端**

   這些選項僅適用於工作表上的控制項，具體取決於目前控制項的位置。如果您沒有針對篩選條件範圍內所有工作表的控制項，將可選擇**新增至篩選條件範圍內所有工作表的頂端**。如果您已將工作表控制項新增至分析中的工作表，這不會將工作表控制項移至工作表的頂端。您也可以選擇**從此工作表中移除**或**從所有工作表中移除**。

# Amazon Quick 中的篩選條件類型
<a name="filtering-types"></a>

您可以在 Quick 中建立數種不同類型的篩選條件。您可建立的篩選條件類型主要取決於您要篩選的欄位的資料類型。

在資料集中，您可以建立以下類型的篩選條件：
+ 文字篩選條件
+ 數值篩選條件
+ 日期篩選條件

您在分析中可以建立的篩選條件類型與在資料集中相同。您還可以建立：
+ 使用和/或運算子的群組篩選條件
+ 串聯式篩選條件
+ 巢狀篩選條件

透過以下各章節詳細了解您可以建立的每種類型的篩選條件及其部分選項。

**Topics**
+ [

# 新增文字篩選條件
](add-a-text-filter-data-prep.md)
+ [

# 新增巢狀篩選條件
](add-a-nested-filter-data-prep.md)
+ [

# 新增數值篩選條件
](add-a-numeric-filter-data-prep.md)
+ [

# 新增日期篩選條件
](add-a-date-filter2.md)
+ [

# 使用 AND 和 OR 運算子新增篩選條件 (群組篩選條件)
](add-a-compound-filter.md)
+ [

# 建立串聯式篩選條件
](use-a-cascading-filter.md)

# 新增文字篩選條件
<a name="add-a-text-filter-data-prep"></a>

使用文字欄位新增篩選條件時，您可以建立以下類型的文字篩選條件：
+ **篩選條件清單** (僅限於分析)：此選項建立一個篩選條件，用於選取一個或多個欄位值，以在欄位中的所有可用值中包含或排除相應值。如需有關建立此類型文字篩選條件的詳細資訊，請參閱 [按清單篩選文字欄位值 (僅限於分析)](#text-filter-list)。
+ **自訂篩選條件清單**：透過此選項，您可以指定一或多個要篩選的欄位值，以及您想要包含還是排除包含那些值的記錄。輸入的值和實際欄位值必須完全相符，篩選條件才能套用到指定的記錄。如需有關建立此類型文字篩選條件的詳細資訊，請參閱 [按自訂清單篩選文字欄位值](#add-text-custom-filter-list-data-prep)。
+ **自訂篩選條件**：透過此選項，您可以輸入欄位值必須以某種方式符合的單一值。您可以指定欄位值必須等於指定的值、不等於指定的值、以指定的值開頭、以指定的值結尾、包含或不包含指定的值。如果您選擇等於比較，則指定值和實際欄位值必須完全相符，篩選條件才能套用到指定的記錄。如需有關建立此類型文字篩選條件的詳細資訊，請參閱 [篩選單一文字欄位值](#add-text-filter-custom-list-data-prep)。
+ **篩選條件頂端與底部** (僅限於分析)：您可以使用此選項顯示依另一個欄位的值來排名的一個欄位中排名最前或倒數最後 *n* 個值。例如，您可以根據收入顯示排名前五位的銷售人員。您也可以使用參數，讓儀表板使用者可以動態選擇要顯示多少個排名最前或倒數最後的值。如需建立頂端與底部篩選條件的詳細資訊，請參閱 [按頂端或底部值篩選文字欄位 (僅限於分析)](#add-text-filter-top-and-bottom)。

## 按清單篩選文字欄位值 (僅限於分析)
<a name="text-filter-list"></a>

在分析中，您可以透過選取要在某個文字欄位全部的值清單中包含或排除的值，來篩選該欄位。

**透過包含和排除值來篩選文字欄位**

1. 使用文字欄位建立新篩選條件。如需建立篩選條件的詳細資訊，請參閱 [新增篩選條件](add-a-filter-data-prep.md)。

1. 在**篩選條件**窗格中，選擇新篩選條件將其展開。

1. 針對**篩選條件類型**，選擇**篩選條件清單**。

1. 針對**篩選條件**，選擇**包含**或**排除**。

1. 選擇您想要據以篩選的欄位值。為此，請選取每個值前面的核取方塊。

   如果有太多值可供選擇，請在清單上方的方塊中輸入搜尋字詞，然後選擇**搜尋**。搜尋詞彙不區分大小寫，而且不支援萬用字元。將會傳回任何包含搜尋詞彙的欄位值。例如，搜尋 "L" 會傳回 al、AL、la 和 LA。

   除非有 1,000 個以上的相異值，否則在控制項中，這些值依字母順序顯示。控制項接著會顯示搜尋方塊。每次您搜尋要使用的值時，它就會啟動新的查詢。如果結果包含 1,000 個以上的值，您可以使用分頁捲動值。

1. 完成後，選擇**套用**。

## 按自訂清單篩選文字欄位值
<a name="add-text-custom-filter-list-data-prep"></a>

您可以指定一或多個要據以篩選的欄位值，並選擇您想要包含還是排除含有那些值的記錄。指定值和實際欄位值必須完全相符，篩選條件才能套用到指定的記錄。

**透過自訂清單篩選文字欄位值**

1. 使用文字欄位建立新篩選條件。如需建立篩選條件的詳細資訊，請參閱 [新增篩選條件](add-a-filter-data-prep.md)。

1. 在**篩選條件**窗格中，選擇新篩選條件將其展開。

1. 針對**篩選條件類型**，選擇**自訂篩選條件清單**。

1. 針對**篩選條件**，選擇**包含**或**排除**。

1. 針對**清單**，在文字方塊中輸入值。該值必須與現有欄位值完全相符。

1. (選用) 若要新增其他值，請在文字方塊中輸入，每行一個。

1. 針對 **Null 選項**，選擇**排除 Null**、**包含 Null** 或 **僅能使用 Null**。

1. 完成後，選擇**套用**。

## 篩選單一文字欄位值
<a name="add-text-filter-custom-list-data-prep"></a>

使用**自訂篩選條件**篩選條件類型，您可以指定欄位值必須等於或不等於的單一值，或必須部分符合的單一值。如果您選擇等於比較，則指定值和實際欄位值必須完全相符，篩選條件才能套用到指定的記錄。

**按單一值篩選文字欄位**

1. 使用文字欄位建立新篩選條件。如需建立篩選條件的詳細資訊，請參閱 [新增篩選條件](add-a-filter-data-prep.md)。

1. 在**篩選條件**窗格中，選擇新篩選條件將其展開。

1. 針對**篩選條件類型**，選擇**自訂篩選條件**。

1. 針對**篩選條件**，選擇以下其中一項：
   + **等於**：選擇此選項時，欄位中包含或排除的值必須與您輸入的值完全相符。
   + **不等於**：選擇此選項時，欄位中包含或排除的值必須與您輸入的值不相符。
   + **開頭為** ：選擇此選項時，欄位中包含或排除的值必須以您輸入的值開頭。
   + **結尾為** ：選擇此選項時，欄位中包含或排除的值必須以您輸入的值結尾。
   + **包含**：選擇此選項時，欄位中包含或排除的值必須包含您輸入的整個值。
   + **不包含**：選擇此選項時，欄位中包含或排除的值不得包含您輸入的值的任何部分。
**注意**  
比較類型區分大小寫。

1. 執行以下任意一項：
   + 在**值**中，輸入常值。
   + 選擇**使用參數**以使用現有的參數，然後從清單中選擇參數。

     您必須先建立參數，參數才會出現在此清單中。通常，您會建立參數，新增其控制項，然後新增其篩選條件。如需詳細資訊，請參閱[Amazon Quick 中的參數](parameters-in-quicksight.md)。

     除非有 1,000 個以上的相異值，否則在控制項中，這些值依字母順序顯示。控制項接著會顯示搜尋方塊。每次您搜尋要使用的值時，它就會啟動新的查詢。如果結果包含 1,000 個以上的值，您可以使用分頁捲動值。

1. 針對 **Null 選項**，選擇**排除 Null**、**包含 Null** 或 **僅能使用 Null**。

1. 完成後，選擇**套用**。

## 按頂端或底部值篩選文字欄位 (僅限於分析)
<a name="add-text-filter-top-and-bottom"></a>

您可以使用 **Top and bottom filter (排名最前和倒數最後篩選條件)**，以顯示一個欄位的排名最前或倒數最後 *n* 值，並依另一個欄位的值來排名。例如，您可以根據收入顯示排名前五位的銷售人員。您也可以使用參數，讓儀表板使用者可以動態選擇要顯示多少個排名最前或倒數最後的值。

**建立頂端與底部文字篩選條件**

1. 使用文字欄位建立新篩選條件。如需建立篩選條件的詳細資訊，請參閱 [新增篩選條件](add-a-filter-data-prep.md)。

1. 在**篩選條件**窗格中，選擇新篩選條件將其展開。

1. 針對**篩選條件類型**，選擇**頂端與底部篩選條件**。

1. 選擇 **Top (排名最前)** 或 **Bottom (倒數最後)**。

1. 針對**顯示頂端**整數 (或**顯示底部**整數)，請執行以下其中一個動作：
   + 輸入要顯示的排名最前或倒數最後的項目數。
   + 若要使用參數來表示要顯示的頂端或底部的項目數，請選擇**使用參數**。然後選擇現有的整數參數。

     例如，假設您希望預設顯示排名前三的銷售人員。您還希望儀表板檢視者能夠選擇是否顯示排名 1-10 位的銷售人員。在此情況下，請採取下列動作：
     + 建立具有預設值的整數參數。
     + 若要將顯示的項目數連結到參數控制項，請建立整數參數的控制項。然後，將控制項變成滑桿，刻度大小為 1、最小值為 1、最大值為 10。
     + 為了讓控制項可以運作，請依據 `Weighted Revenue` 針對 `Salesperson` 建立排名最前和倒數最後篩選條件，啟用**使用參數**，然後選擇您的整數參數。

1. 對於 **By (依據)**，請選擇排名依據的欄位。若要依收入顯示排名前五位的銷售人員，請選擇收入欄位。您也可以設定想要在欄位上執行的彙總。

1. (選用) 選擇**和局中斷器**，然後選擇另一個欄位以新增一個或多個彙總作為和局中斷器。在此範例中，當依據收入的前五名銷售人員返回五個以上結果時，這非常有用。如果多個銷售人員有相同的收入金額，就可能發生這種情況。

   若要移除和局中斷器，請使用移除圖示。

1. 完成後，選擇**套用**。

# 新增巢狀篩選條件
<a name="add-a-nested-filter-data-prep"></a>

巢狀篩選條件是可新增至快速分析的進階篩選條件。巢狀篩選條件會使用相同資料集中由另一個欄位定義的資料子集來篩選欄位。這可讓作者顯示其他關聯式資料，避免在資料點不符合初始條件時篩選掉資料。

巢狀篩選條件的運作方式類似於 SQL 中的相關子查詢或購物籃分析。例如，假設您想要對銷售資料執行購物籃分析。您可以使用巢狀篩選條件，針對已購買或尚未購買特定產品的客戶，依產品確定銷售數量。您也可以使用巢狀篩選條件，來識別未購買所選產品或僅購買特定產品清單的客戶群組。

巢狀篩選條件只能在分析層級新增。您不能將巢狀篩選條件新增至資料集。

使用以下程序將巢狀篩選條件新增至快速分析。

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 選擇**分析**，然後選擇要向其新增巢狀篩選條件的分析。

1. 在想要篩選的文字欄位上建立新的篩選條件。如需有關建立篩選條件的詳細資訊，請參閱[在分析中新增篩選條件](add-a-filter-data-prep.md#add-a-filter-data-prep-analyses)。

1. 建立新的篩選條件後，請在**篩選條件**窗格中找到新的篩選條件。選擇新篩選條件旁邊的省略符號 (三個點)，然後選擇**編輯篩選條件**。或者，在**篩選條件**窗格中選擇篩選條件實體，以開啟**編輯篩選條件**窗格。

1. **編輯篩選條件**窗格隨即開啟。開啟**篩選條件類型**下拉式選單，導覽至**進階篩選條件**區段，然後選擇**巢狀篩選條件**。

1. 對於**合格條件**，選擇**包含**或**排除**。*合格條件*可讓您對分析中的資料執行「不在集合中」查詢。在我們上述的銷售範例中，合格條件會判斷篩選條件是傳回購買特定產品的客戶清單，還是傳回未購買產品的客戶清單。

1. 對於**巢狀欄位**，選擇要用來篩選資料的文字欄位。巢狀欄位不能與在步驟 3 中選取的主要欄位相同。類別欄位是內部篩選條件唯一支援的欄位類型。

1. 對於**巢狀篩選條件類型**，選擇所需的篩選件類型。您選擇的篩選條件類型，會決定巢狀篩選條件的最終組態步驟。您可以在下方清單中，找到可用的篩選條件類型及其組態的相關資訊。
   + [篩選條件清單](https://docs.aws.amazon.com/quicksuite/latest/userguide/text-filter-list)
   + [自訂篩選條件清單](https://docs.aws.amazon.com/quicksuite/latest/userguide/add-text-custom-filter-list-data-prep)
   + [自訂篩選條件](https://docs.aws.amazon.com/quicksuite/latest/userguide/add-text-filter-custom-list-data-prep)

# 新增數值篩選條件
<a name="add-a-numeric-filter-data-prep"></a>

具有小數或 int 資料類型的欄位會被視為數字欄位。您可以指定比較類型 (例如 **Greater than (大於)** 或 **Between (之間)**)，以及一或多個適用於比較類型的比較值，在數字欄位上建立篩選條件。比較值必須是正整數，而且不得包含逗號。

您可以在數值篩選條件中使用下列比較類型：
+ 等於
+ 不等於
+ Greater than
+ 大於或等於
+ Less than
+ 小於或等於
+ 之間

**注意**  
若要對數值資料使用頂端與底部篩選條件 (僅限於分析)，請先將欄位從量值改成維度。這樣做會將資料轉換成文字。然後您就可以使用文字篩選條件。如需詳細資訊，請參閱[新增文字篩選條件](add-a-text-filter-data-prep.md)。

在分析中，針對根據資料庫查詢的資料集，您也可以選擇將彙總函數套用到一或多個比較值，例如 **Sum** 或 **Average** 函數。

您可以在數值篩選條件中使用下列彙總函數：
+ 平均數
+ 計數
+ 相異計數
+ 最多
+ 中位數
+ 最少
+ 百分位數
+ 標準偏差
+ 標準偏差：母體
+ 總和
+ 變異數
+ 變異數：母體

## 建立數值篩選條件
<a name="create-a-numeric-filter-data-prep"></a>

請透過以下程序來建立數值欄位篩選條件。

**建立數值欄位篩選條件**

1. 使用文字欄位建立新篩選條件。如需建立篩選條件的詳細資訊，請參閱 [新增篩選條件](add-a-filter-data-prep.md)。

1. 在**篩選條件**窗格中，選擇新篩選條件將其展開。

1. (選用) 針對**彙總**，選擇一個彙總。預設不套用彙總。僅當在分析中建立數值篩選條件時，此選項才可用。

1. 針對**篩選條件**，選擇一種比較類型。

1. 執行以下任意一項：
   + 如果您選擇的比較類型不是**介於**，請輸入一個比較值。

     如果您選擇的比較類型是 **Between (介於)**，請在 **Minimum value (最小值)** 中輸入值範圍的開始值，在 **Maximum value (最大值)** 中輸入值範圍的結束值。
   + (僅限於分析) 若要使用現有的參數，請啟用**使用參數**，然後從清單中選擇參數。

     您必須先建立參數，參數才會出現在此清單中。通常，您會建立參數，新增其控制項，然後新增其篩選條件。如需詳細資訊，請參閱[Amazon Quick 中的參數](parameters-in-quicksight.md)。除非有 1,000 個以上的相異值，否則在控制項中，這些值依字母順序顯示。控制項接著會顯示搜尋方塊。每次您搜尋要使用的值時，它就會啟動新的查詢。如果結果包含 1,000 個以上的值，您可以使用分頁捲動值。

1. (僅限於分析) 針對 **Null 選項**，選擇**排除 Null**、**包含 Null** 或 **僅能使用 Null**。

1. 完成後，選擇**套用**。

# 新增日期篩選條件
<a name="add-a-date-filter2"></a>

您可以選取您想要使用的篩選條件和日期值，在日期欄位上建立篩選條件。日期有三種篩選條件類型：
+ **範圍**：一系列基於某個時間範圍和比較類型的日期。您可以根據日期欄位值是在指定日期之前或之後，還是在日期範圍內來篩選記錄。您可以採用 MM/DD/YYYY 格式輸入日期值。您可以使用下列比較類型：
  + **之間**：在開始日期與結束日期之間
  + **之後**：在指定日期之後
  + **之前**：在指定日期之前
  + **等於**：在指定的日期

  針對每種比較類型，您也可以選擇相對期間或資料集值的滾動日期。
+ **相對** (僅限於分析)：一系列基於目前日期的日期和時間元素。您可以根據目前日期和您選取的度量單位 (UOM) 來篩選記錄。日期篩選條件單位包括年、季、月、週、日、小時和分鐘。您可以排除目前的期間，新增與最後 N 個相似的接下來 N 個篩選條件，但多了可以允許錨點日期的能力。您可以使用下列比較類型：
  + **前一個**：前一個 UOM，例如前一年。
  + **這個**：這個 UOM，其中包含所有落在選取 UOM 內的日期和時間，即使它們發生在未來也一樣。
  + **至今*或*到目前為止**：UOM 至今或 UOM 到目前為止。顯示的片語適用於您選擇的 UOM。不過，在所有情況下，此選項會篩選出不在目前 UOM 的開始與目前時刻之間的資料。
  + **最後 *n***：最後指定之特定 UOM 的數目，其中包含此 UOM 的全部，以及最後 *n*−1 UOM 的全部。例如，假設今天是 2017 年 5 月 10 日。您選擇使用*年*做為單位，並將最後 *n * 年設定為 3。篩選的資料包含所有 2017 的資料，加上所有 2016 和所有 2015 的資料。如果您有本年度 (此範例中的 2017) 未來日期的任何資料，則這些記錄會包含在您的資料集內。
+ **頂端與底部** (僅限於分析)：依另一個欄位排名的幾個日期項目。您可以根據另一個欄位的值，以顯示您所選擇的日期或時間 UOM 類型的排名最前或倒數最後 *n* 個。例如，您可以選擇根據收入顯示排名前 5 個的銷售日期。

比較會一併套用至指定的日期。例如，如果您套用篩選條件 `Before 1/1/16`，則傳回的記錄包含日期值通過 1/1/16 23:59:59 的所有資料列。如果不想包含指定的日期，您可以清除 **Include this date (包含此日期)** 選項。如果想要省略時間範圍，您可以使用 **Exclude the last N periods (排除後 N 個時段)** 選項，指定要篩選掉的時段數目和類型 (分鐘、天等等)。

您也可以選擇要包含或排除空值，或僅顯示這個欄位中含有空值的資料列。如果您傳入 null 日期參數 (無預設值的參數)，在您提供一個值之前，不會篩選資料。

**注意**  
如果資料欄或屬性沒有時區資訊，則用戶端查詢引擎會設定該日期時間資料的預設解譯。例如，假設資料欄包含時間戳記，而不是 timestamptz，而且您所在的時區與資料的原始時區不同。在這種情況下，引擎可能會以與您預期不同的方式呈現時間戳記。Amazon Quick 和 [SPICE](spice.md)都使用國際標準時間 (UTC) 時間。

在以下各章節中了解如何在資料集和分析中建立日期篩選條件。

## 在資料集中建立日期篩選條件
<a name="create-date-filter-dataset"></a>

透過以下程序來建立資料集中日期欄位的範圍篩選條件。

**為資料集中的日期欄位建立範圍篩選條件**

1. 使用文字欄位建立新篩選條件。如需建立篩選條件的詳細資訊，請參閱 [新增篩選條件](add-a-filter-data-prep.md)。

1. 在**篩選條件**窗格中，選擇新篩選條件將其展開。

1. 針對**條件**，選擇比較類型：**之間**、**之後**或**之前**。

   若要使用**之間**作為比較類型，請選擇**開始日期**和**結束日期**，然後從出現的日期選擇器控制項中選取日期。

   您可以選擇是否在範圍中包含開始和結束日期的其中一個，或兩者都包含，方法是選取**包含開始日期**或**包含結束日期**。

   若要使用**之前**或**之後**比較類型，請輸入日期，或選擇日期欄位來啟動日期選取器控制項，並改為選擇日期。您可以選擇包含此日期 (您選擇的日期)、排除後 N 個時段，以及指定如何處理 null。

1. 對於**時間精細程度**，請選擇**天**、**小時**、**分鐘**或**秒**。

1. 完成後，選擇**套用**。

## 在分析中建立日期篩選條件
<a name="create-date-filter-analyses"></a>

您可以在分析中建立日期篩選條件，如下所述。

### 在分析中建立範圍日期篩選條件
<a name="create-a-date-filter2"></a>

透過以下程序來建立分析中日期欄位的範圍篩選條件。

**為分析中的日期欄位建立範圍篩選條件**

1. 使用文字欄位建立新篩選條件。如需建立篩選條件的詳細資訊，請參閱 [新增篩選條件](add-a-filter-data-prep.md)。

1. 在**篩選條件**窗格中，選擇新篩選條件將其展開。

1. 針對**篩選條件類型**，選擇**日期與時間範圍**。

1. 針對**條件**，選擇比較類型：**之間**、**之後**、**之前**或**等於**。

   若要使用**之間**作為比較類型，請選擇**開始日期**和**結束日期**，然後從出現的日期選擇器控制項中選取日期。

   您可以選擇是否在範圍中包含開始和結束日期的其中一個，或兩者都包含，方法是選取**包含開始日期**或**包含結束日期**。

   若要使用**之前**、**之後**或**等於**比較類型，請輸入日期，或選擇日期欄位來啟動日期選取器控制項，並改為選擇日期。您可以選擇包含此日期 (您選擇的日期)、排除後 N 個時段，以及指定如何處理 null。

   若要**設定滾動日期**進行比較，請選擇**設定滾動日期**。

   在開啟的**設定滾動日期**窗格中，選取**相對日期**，然後選擇是否要將日期設為**今天**、**昨天**，或者您可以指定**篩選條件**(開始或結束)、**範圍** (這個、前一個或下一個) 和**期間** (年、季度、月、週或天)。

1. 對於**時間精細程度**，請選擇**天**、**小時**、**分鐘**或**秒**。

1. (選用) 如果您使用現有的參數來篩選，而不是特定日期，請選擇**使用參數**，然後從清單中選擇一或多個參數。若要使用 **Before (之前)**、**After (之後)** 或 **Equals (等於)** 比較，請選擇一個日期參數。您可以將此日期包含在範圍內。

   若要使用 **Between (介於)**，請分別輸入開始日期和結束日期參數。您可以在範圍中包含開始日期，結束日期，或兩者都包含。

   若要在篩選條件中使用參數，請先建立它們。通常，您會建立參數，新增其控制項，然後新增其篩選條件。如需詳細資訊，請參閱[Amazon Quick 中的參數](parameters-in-quicksight.md)。

1. 針對 **Null 選項**，選擇**排除 Null**、**包含 Null** 或 **僅能使用 Null**。

1. 完成後，選擇**套用**。

### 在分析中建立相對日期篩選條件
<a name="create-a-date-filter-relative"></a>

透過以下程序來建立分析中日期欄位的相對篩選條件。

**為分析中的日期欄位建立相對篩選條件**

1. 使用文字欄位建立新篩選條件。如需建立篩選條件的詳細資訊，請參閱 [新增篩選條件](add-a-filter-data-prep.md)。

1. 在**篩選條件**窗格中，選擇新篩選條件將其展開。

1. 對於**篩選條件類型**，選擇**相對日期**。

1. 對於**時間精細程度**，選擇篩選的時間精細程度 (天、小時、分鐘)。

1. 對於**期間**，選擇時間單位 (年、季度、月、週、天)。

1. 針對**範圍**，選擇您希望篩選條件與時間範圍關聯的方式。例如，若您選擇依照月份進行報告，您的選項便包含上個月、這個月、月初至今、最後 N 個月，以及接下來 N 個月。

   如果您選擇過去 N 或未來 N 年、季、月、週或天，請針對**數量**輸入一個數字。例如，過去 3 年、接下來 5 個季度、過去 5 天。

1. 針對 **Null 選項**，選擇**排除 Null**、**包含 Null** 或 **僅能使用 Null**。

1. 針對**設定相對日期**，選擇以下其中一項：
   + **目前的日期時間**：若選擇此選項，您可以將其設為**排除最後**，然後指定時間期間的數量和類型。
   + **來自參數的日期和時間**：若選擇此選項，您可以選取現有的日期時間參數。

1. (選用) 如果您使用現有的參數來篩選，而不是特定日期，請啟用 **Use parameters (使用參數)**，然後從清單中選擇一或多個參數。

   若要在篩選條件中使用參數，請先建立它們。通常，您會建立參數，新增其控制項，然後新增其篩選條件。如需詳細資訊，請參閱[Amazon Quick 中的參數](parameters-in-quicksight.md)。

1. 完成後，選擇**套用**。

### 在分析中建立頂端與底部日期篩選條件
<a name="create-a-date-filter-top-bottom"></a>

透過以下程序來建立分析中日期欄位的頂端與底部篩選條件。

**為分析中的日期欄位建立頂端與底部篩選條件**

1. 使用文字欄位建立新篩選條件。如需建立篩選條件的詳細資訊，請參閱 [新增篩選條件](add-a-filter-data-prep.md)。

1. 在**篩選條件**窗格中，選擇新篩選條件將其展開。

1. 針對**篩選條件類型**，選擇**頂端與底部**。

1. 選擇**頂端**或**底部**。

1. 針對**顯示**，輸入您希望顯示的排名最前或倒數最後的項目數，然後選擇時間單位 (年、季度、月、週、天、小時、分鐘)。

1. 對於 **By (依據)**，請選擇排名依據的欄位。

1. (選用) 如果**依據**的欄位有重複項，選擇新增另一個欄位作為和局中斷器。選擇**和局中斷器**，然後選擇另一個欄位。若要移除和局中斷器，請使用移除圖示。

1. (選用) 如果您使用現有的參數來篩選，而不是特定日期，請選擇**使用參數**，然後從清單中選擇一或多個參數。

   若要對 **Top and bottom (排名最後和倒數最後)** 使用參數，請選擇整數參數，代表要顯示的排名最後或倒數最後的項目數。

   若要在篩選條件中使用參數，請先建立它們。通常，您會建立參數，新增其控制項，然後新增其篩選條件。如需詳細資訊，請參閱[Amazon Quick 中的參數](parameters-in-quicksight.md)。

1. 完成後，選擇**套用**。

# 使用 AND 和 OR 運算子新增篩選條件 (群組篩選條件)
<a name="add-a-compound-filter"></a>

在分析中，當您將多個篩選條件新增至視覺效果時，Quick 會使用 AND 運算子來合併它們。您也可以使用 OR 運算子將篩選條件新增至單一篩選條件。這稱為複合篩選條件或篩選條件群組。

若要使用 OR 運算子來新增多個篩選條件，請建立篩選條件群組。在分析中，篩選條件分組可用於所有類型的篩選條件。

當您依據多個量值 (以 \$1 標示的綠色欄位) 來篩選時，您可以將篩選條件套用到該欄位的彙總。群組中的篩選條件可以包含彙總或非彙總的欄位，但不能同時都包含。

**若要建立篩選條件群組**

1. 在分析中建立新的篩選條件。如需建立篩選條件的詳細資訊，請參閱 [新增篩選條件](add-a-filter-data-prep.md)。

1. 在**篩選條件**窗格中，選擇新篩選條件將其展開。

1. 在展開的篩選條件中，選擇底部的**新增篩選條件**，然後選擇要篩選的欄位。

1.  選擇要篩選的條件。

   您選取的欄位的資料類型決定此處可用的選項。例如，如果您選擇數值欄位，則可以指定彙總、篩選條件和值。如果您選擇文字欄位，則可以選擇篩選條件類型、篩選條件和值。如果您選擇日期欄位，則可以指定篩選條件類型、條件和時間精細程度。如需關於這些選項的詳細資訊，請參閱 [Amazon Quick 中的篩選條件類型](filtering-types.md)。

1.  (選用) 您可以透過再次選擇底部的**新增篩選條件**，為篩選條件群組新增更多篩選條件。

1.  (選用) 若要從篩選群組中移除篩選條件，請選擇靠近欄位名稱的垃圾桶圖示。

1. 完成後，選擇**套用**。

   相應篩選條件會在**篩選條件**窗格中顯示為一個群組。

# 建立串聯式篩選條件
<a name="use-a-cascading-filter"></a>

串聯任何動作 (例如篩選條件) 背後的概念是，在階層中較高層級所做的選擇，會影響階層的較低層級。「串聯」**這個詞來自層疊小瀑布，水從某個層流到下一個層。

若要設定串聯篩選條件，您需要啟動篩選條件的觸發點，以及套用篩選條件的目標點。在快速中，觸發條件和目標點包含在視覺效果中。

若要建立串聯篩選條件，請設定動作，而非篩選條件。採用這個方法的原因，是因為您需要定義啟動串聯篩選條件的方式、涉及哪些欄位，以及當某人啟動時會篩選哪些視覺效果。如需詳細資訊 (包括逐步指示)，請參閱 [使用自訂動作進行篩選和導覽](quicksight-actions.md)。

還有兩種方式可以跨多個視覺效果啟動篩選條件：
+ **針對從儀表板上小工具啟動的篩選條件**：此小工具稱為「工作表控制項」**，這是自訂的選單，您可以將其新增至分析或儀表板的頂端。最常見的資料表控制項是下拉式清單，在您開啟時會顯示可供選擇的選項清單。若要將其中一種新增至您的分析中，請建立參數、將控制項新增至參數，然後新增使用該參數的篩選條件。如需詳細資訊，請參閱[在 Amazon Quick 中設定參數](parameters-set-up.md)、[在 Amazon Quick 中使用具有參數的控制項](parameters-controls.md)及[將篩選條件控制項新增至分析工作表](filter-controls.md)。
+ **針對永遠會套用至多個視覺化效果的篩選條件**：這是一般篩選條件，除了您將其範圍設為套用至多個 (或全部) 視覺化效果的篩選條件以外。這類型的篩選條件並不會串聯，因為沒有觸發點。它一律會篩選設定為要進行篩選的所有視覺效果。若要將此類型的篩選條件新增至分析，請建立或編輯篩選條件，然後選擇其範圍：**單一視覺效果**、**單一工作表**或**跨工作表**。請注意**套用跨資料集**選項。如果核取此方塊，則篩選條件會套用至篩選範圍中所有工作表上適用之不同資料集的所有視覺效果。如需詳細資訊，請參閱[篩選條件](cross-sheet-filters.md#filters)。

# 將篩選條件控制項新增至分析工作表
<a name="filter-controls"></a>

設計分析時，您可以在分析工作表中將篩選條件新增至要篩選的視覺化效果附近。它作為一個控制項出現在工作表中，當您將分析發布為儀表板時，儀表板檢視者便可以使用該控制項。控制項使用分析主題設定，因此看起來像是工作表的一部分。

篩選條件控制項與其篩選條件共用一些設定。它們會套用至同一張工作表上的一個、部分或全部物件。

透過以下各章節為分析新增和自訂篩選條件控制項。若要了解如何新增跨工作表控制項，請參閱[控制項](cross-sheet-filters.md#cross-sheet-controls)。

**Topics**
+ [

## 新增篩選條件控制項
](#filter-controls-add)
+ [

## 將篩選條件控制釘選到工作表頂端
](#filter-controls-pin)
+ [

## 自訂篩選條件控制項
](#filter-controls-customize)
+ [

## 階層式篩選條件控制項
](#cascading-controls)

## 新增篩選條件控制項
<a name="filter-controls-add"></a>

透過以下程序新增篩選條件控制項。

**新增篩選條件控制項**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 在快速首頁中，選擇**分析**，然後選擇您要使用的分析。

1. 在分析中，選擇**篩選條件**。

1. 如果您還沒有可用的篩選條件，請建立一個。如需建立篩選條件的詳細資訊，請參閱 [新增篩選條件](add-a-filter-data-prep.md)。

1. 在**篩選條件**窗格中，選擇要為其新增控制項的篩選條件右側的三個點，然後選擇**新增至工作表**。

   篩選條件控制項會新增到工作表中，並且通常位於底部。您可以調整其大小，或將其拖曳到工作表上的不同位置。您還可以自訂它的顯示方式，以及儀表板檢視者與之互動的方式。如需有關自訂篩選條件控制項的詳細資訊，請參閱以下各章節。

## 將篩選條件控制釘選到工作表頂端
<a name="filter-controls-pin"></a>

透過以下程序將篩選條件控制項釘選到工作表的頂端。

**將控制項釘選到工作表頂端**

1. 在要移動的篩選條件控制項上，選擇鉛筆圖示旁的三個點，然後選擇**釘選到頂端**。

   相應篩選條件釘選到工作表頂端並折疊。您可以按一下它展開它。

1. (選用) 若要取消釘選控制項，請將其展開並在工作表頂端將滑鼠懸停在其上方，直到出現三個點。選擇三個點，然後選擇**移至工作表**。

## 自訂篩選條件控制項
<a name="filter-controls-customize"></a>

根據欄位的資料類型和篩選條件的類型，可用的篩選條件控制項設定有所不同。您可以自訂它們在工作表中的顯示方式，以及儀表板檢視者與它們互動的方式。

**自訂篩選條件控制項**

1. 在工作表中選擇篩選條件控制項。

1. 在篩選條件控制項上，選擇鉛筆圖示。

   如果篩選條件控制項釘選到工作表頂端，請將其展開並將遊標停留在其上，直到出現三個點。選擇三個點，然後選擇**編輯**。

1. 在開啟的**格式控制**窗格中，執行下列操作：

   1. 針對**顯示名稱**，輸入篩選條件控制項的名稱。

   1. (選用) 若要隱藏篩選條件控制項名稱，請清除**顯示標題**的核取方塊。

   1. 針對**標題字型大小**，選擇您要使用的標題字型大小。選項範圍從超小型到超大型。預設設定為中型。

其餘步驟取決於控制項參考的欄位類型。有關不同篩選條件類型的選項，請參閱以下各章節。

### 日期篩選條件
<a name="filter-controls-customize-date"></a>

如果是日期篩選條件控制項，請透過以下程序自訂其餘選項。

**自訂日期篩選條件的更多選項**

1. 在**格式控制**窗格中，針對**樣式**，請選擇下列選項之一：
   + **日期選擇器：範圍**：顯示一組兩個欄位來定義時間範圍。您可以輸入日期或時間，也可以從行事曆控制項中選擇日期。您還可以透過針對**日期格式**輸入日期字符，來自訂日期在控制項中的顯示方式。如需詳細資訊，請參閱[在 Quick 中自訂日期格式](format-visual-date-controls.md)。
   + **日期選擇器 - 相對**：顯示時間段、與當前日期和時間的關係以及排除時間段的選項等設定。您還可以透過針對**日期格式**輸入日期字符，來自訂日期在控制項中的顯示方式。如需詳細資訊，請參閱[在 Quick 中自訂日期格式](format-visual-date-controls.md)。
   + **文字欄位**：顯示一個方塊，您可以在其中輸入排名最前或倒數最後 *N* 個日期。

     依預設，協助程式文字包含在文字欄位控制項中，但您可以透過清除**在控制項中顯示協助程式文字**選項來移除它。

   根據預設，每當控制項變更時，都會重新載入快速視覺效果。對於「行事曆」和「相對日期選擇器」控制項，作者可以將**套用**按鈕新增至控制項，以延遲視覺效果重新載入，直到使用者選擇**套用**為止。這可讓使用者一次進行多個變更，而不需要額外查詢。您可以在**格式控制**窗格的**控制選項**區段中，使用**顯示套用按鈕**核取方塊來設定此設定。

1. 完成後，選擇**套用**。

### 文字篩選條件
<a name="filter-controls-customize-text"></a>

如果是文字篩選條件控制項 (例如維度、類別或標籤)，請透過以下程序自訂其餘選項。

**自訂文字篩選條件的更多選項**

1. 在**格式控制**窗格中，針對**樣式**，請選擇下列選項之一：
   + **下拉式清單**：顯示一個下拉式清單，其中包含可用於選取單一值的按鈕。

     當您選取此選項時，您可以為**值**選取以下選項：
     + **篩選條件**：顯示篩選條件中可用的所有值。
     + **特定數值**：允許您輸入要顯示的值，每行一個值。

     您也可以選擇**隱藏控制項值中的「全部選取」選項**。這將移除篩選條件控制項中用於選取全部值或取消選取全部值的選項。
   + **下拉式清單：多重選取**：顯示一個下拉式清單，其中包含可用於選取多個值的方塊。

     當您選取此選項時，您可以為**值**選取以下選項：
     + **篩選條件**：顯示篩選條件中可用的所有值。
     + **特定數值**：允許您輸入要顯示的值，每行一個值。

     根據預設，每當控制項變更時，都會重新載入快速視覺效果。對於「多重選取下拉式清單」控制項，作者可以將**套用**按鈕新增至控制項，以延遲視覺效果重新載入，直到使用者選擇**套用**為止。這可讓使用者一次進行多個變更，而不需要額外查詢。您可以在**格式控制**窗格的**控制選項**區段中，使用**顯示套用按鈕**核取方塊來設定此設定。
   + **清單**：顯示一個清單，其中包含可用於選取單一值的按鈕。

     當您選取此選項時，您可以為**值**選取以下選項：
     + **篩選條件**：顯示篩選條件中可用的所有值。
     + **特定數值**：允許您輸入要顯示的值，每行一個值。

     您也可以選擇下列選項：
     + **當控制項位於工作表上時隱藏搜尋列**：隱藏篩選條件控制項中的搜尋列，以便使用者無法搜尋特定值。
     + **隱藏控制項值中的「全部選取」選項**：移除篩選條件控制項中用於選取全部值或取消選取全部值的選項。
   + **清單 - 多重選取**：顯示一個清單，其中包含可用於選取多個值的方塊。

     當您選取此選項時，您可以為**值**選取以下選項：
     + **篩選條件**：顯示篩選條件中可用的所有值。
     + **特定數值**：允許您輸入要顯示的值，每行一個值。

     您也可以選擇下列選項：
     + **當控制項位於工作表上時隱藏搜尋列**：隱藏篩選條件控制項中的搜尋列，以便使用者無法搜尋特定值。
     + **隱藏控制項值中的「全部選取」選項**：移除篩選條件控制項中用於選取全部值或取消選取全部值的選項。
   + **文字欄位**：顯示一個文字方塊，您可以在其中輸入單一項目。文字欄位支援最多 79,950 個字元。

     選取此選項後，您可以選擇以下選項：
     + **在控制項中顯示協助程式文字**：移除文字欄位中的協助程式文字。
   + **文字欄位 - 多行**：顯示一個文字方塊，您可以在其中輸入多個項目。多行文字欄位在所有項目中支援最多 79,950 個字元。

     選取此選項後，您可以選擇以下選項：
     + 針對**值分隔依據**，選擇您想要如何分隔輸入到篩選條件控制項中的值。您可以選擇使用換行符號、逗號、縱線字元 (\$1) 或分號來分隔數值。
     + **在控制項中顯示協助程式文字**：移除文字欄位中的協助程式文字。

1. 完成後，選擇**套用**。

### 數值篩選條件
<a name="filter-controls-customize-numeric"></a>

如果是數值篩選條件控制項，請透過以下程序自訂其餘選項。

**自訂數值篩選條件的更多選項**

1. 在**格式控制**窗格中，針對**樣式**，請選擇下列選項之一：
   + **下拉式清單**：顯示一個清單，您可以在其中選取單一值。

     當您選取此選項時，您可以為**值**選取以下選項：
     + **篩選條件**：顯示篩選條件中可用的所有值。
     + **特定數值**：允許您輸入要顯示的值，每行一個值。

     您也可以選擇**隱藏控制項值中的「全部選取」選項**。這將移除篩選條件控制項中用於選取全部值或取消選取全部值的選項。
     + **篩選條件**：顯示篩選條件中可用的所有值。
     + **特定數值**：允許您輸入要顯示的值，每行一個值。
     + **隱藏控制項值中的「全部選取」選項**：移除篩選條件控制項中用於選取全部值或取消選取全部值的選項。
   + **清單**：顯示一個清單，其中包含可以選取單一值的按鈕。

     當您選取此選項時，您可以為**值**選取以下選項：
     + **篩選條件**：顯示篩選條件中可用的所有值。
     + **特定數值**：允許您輸入要顯示的值，每行一個值。

     您也可以選擇下列選項：
     + **當控制項位於工作表上時隱藏搜尋列**：隱藏篩選條件控制項中的搜尋列，以便使用者無法搜尋特定值。
     + **隱藏控制項值中的「全部選取」選項**：移除篩選條件控制項中用於選取全部值或取消選取全部值的選項。
   + **滑桿**：顯示帶有滑塊的水平列，您可以滑動該滑塊來變更數值。如果最小值和最大值之間的值有範圍篩選條件，則滑桿會為每個數字提供滑塊。針對滑桿，您可以指定下列選項：
     + **最小值**：在滑桿左側顯示較小的值。
     + **最大值**：在滑桿右側顯示較大的值。
     + **步驟大小**：允許您設定列分段的數目。
   + **文字方塊**：顯示一個可以輸入值的方塊。當您選取此選項，您可以選擇以下選項：
     + **在控制項中顯示協助程式文字**：移除文字欄位中的協助程式文字。

1. 完成後，選擇**套用**。

## 階層式篩選條件控制項
<a name="cascading-controls"></a>

您可以限制控制項中顯示的值，以便它們只顯示對其他控制項中選取之項目有效的值。這稱為階層式控制項。

**建立串聯式控制項時，會套用下列限制：**

1. 串聯控制項必須繫結至相同資料集中的資料集資料欄。

1. 子控制項必須是下拉清單或清單控制項。

1. 對於參數控制項，子控制項必須連結至資料集資料欄。

1. 對於篩選條件控制項，子控制項必須連結到篩選條件 (而不是僅顯示特定值)。

1. 父控制項必須是下列其中一種：

   1. 字串、整數或數值參數控制項。

   1. 字串篩選條件控制項 (不包括「上下」篩選條件)。

   1. 非彙總的數字篩選控制項。

   1. 日期篩選條件控制項 (不包括「上下」篩選條件)。

**建立階層式控制項**

1. 選擇**僅顯示相關值**。請注意，並非所有篩選條件控制類型都提供此選項。

1. 在開啟的**僅顯示相關值**窗格中，從可用清單中選擇一個或多個控制項。

1. 選擇與值相符的欄位。

1. 選擇**更新**。

# 編輯篩選條件
<a name="edit-a-filter-data-prep"></a>

您可以隨時在資料集或分析中編輯篩選條件。

您無法變更套用篩選條件的欄位。若要將篩選條件套用到不同的欄位，請改為建立一個新的篩選條件。

透過以下程序來了解如何編輯篩選條件。

## 編輯資料集中的篩選條件
<a name="edit-a-filter-data-prep-datasets"></a>

透過以下程序來編輯資料集中的篩選條件。

**若要編輯資料集中的篩選條件**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 在快速首頁中，選擇左側**的資料**。

1. 在**資料集**索引標籤下，選擇您想要的資料集，然後選擇**編輯資料集**。

1. 在開啟的資料準備頁面上，選擇左下角的**篩選條件**。

1. 選擇要編輯的篩選條件。

1. 編輯完成後，選擇**套用**。

## 編輯分析中的篩選條件
<a name="edit-a-filter-data-prep-analyses"></a>

透過以下程序編輯分析中的篩選條件。

**若要編輯分析中的篩選條件**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 在快速首頁中，選擇左側**的分析**。

1. 在**分析**頁面上，選擇您要使用的分析。

1. 在分析中，選擇顯示的**篩選條件**圖示以開啟**篩選條件**窗格。

1. 選擇要編輯的篩選條件。

1. 編輯完成後，選擇**套用**。

# 啟用或停用篩選條件
<a name="disable-a-filter-data-prep"></a>

您可以使用篩選條件選單，啟用或停用資料集或分析中的篩選條件。當您建立篩選條件時，預設為啟用篩選條件。停用某個篩選條件會從欄位中移除該篩選條件，但不會從資料集或分析中移除它。已停用的篩選條件在篩選條件窗格中呈現灰色顯示。如果您想將篩選條件重新套用到相應欄位，只需啟用它即可。

透過以下程序了解如何啟用或停用篩選條件。

## 停用資料集中的篩選條件
<a name="disable-a-filter-data-prep-datasets"></a>

透過以下程序停用資料集中的篩選條件。

**若要停用資料集中的篩選條件**

1. 在快速首頁中，選擇左側**的資料**。

1. 在**資料集**索引標籤下，選擇您想要的資料集，然後選擇**編輯資料集**。

1. 在開啟的資料準備頁面上，選擇左下角的**篩選條件**。

1. 在左側的**篩選條件**窗格中，選擇要停用的篩選條件右側的三個點，然後選擇**停用**。若要啟用已停用的篩選條件，請選擇**啟用**。

## 停用分析中的篩選條件
<a name="disable-a-filter-data-prep-analyses"></a>

透過以下程序停用分析中的篩選條件。

**若要停用分析中的篩選條件**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 在快速首頁中，選擇**分析**。

1. 在**分析**頁面上，選擇您要使用的分析。

1. 在分析中，選擇**篩選條件**圖示以開啟**篩選條件**窗格。

1. 在開啟的**篩選條件**窗格中，選擇要停用的篩選條件右側的三個點，然後選擇**停用**。若要啟用已停用的篩選條件，請選擇**啟用**。

# 刪除篩選條件
<a name="delete-a-filter-data-prep"></a>

您可以隨時刪除資料集或分析中的篩選條件。透過以下程序了解操作方式。

## 刪除資料集中的篩選條件
<a name="delete-a-filter-data-prep-datasets"></a>

透過以下程序刪除資料集中的篩選條件。

**若要刪除資料集中的篩選條件**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 在快速首頁中，選擇**資料**。

1. 在**資料集**索引標籤下，選擇您想要的資料集，然後選擇**編輯資料集**。

1. 在開啟的資料準備頁面上，選擇左下角的**篩選條件**。

1. 選擇您要刪除的篩選條件，然後選擇**刪除篩選條件**。

## 刪除分析中的篩選條件
<a name="delete-a-filter-data-prep-analyses"></a>

透過以下程序刪除刪除分析中的篩選條件。

**若要刪除分析中的篩選條件**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 在快速首頁中，選擇**分析**。

1. 在**分析**頁面上，選擇您要使用的分析。

1. 在分析中，選擇**篩選條件**圖示以開啟**篩選條件**窗格。

1. 選擇您要刪除的篩選條件，然後選擇**刪除篩選條件**。

# 預覽資料集中的資料表
<a name="previewing-tables-in-a-dataset"></a>

您可以預覽資料集中的每個單獨的資料表。當您選擇要預覽的資料表時，該表的唯讀預覽將顯示在資料預覽區段的新索引標籤中。您可以同時開啟多個資料表預覽索引標籤。

您只能預覽資料集中您有權存取的資料表。如果資料準備空間的上半部分沒有出現資料表，則無法預覽該表。

**資料集**索引標籤包含所有轉換，例如新增資料欄或篩選條件。資料表預覽索引標籤不顯示任何轉換。

**預覽資料表**

1. 在快速首頁上，選擇左側**的資料**。

1. 在**資料**索引標籤中，選擇您想要的資料集，然後選擇**編輯資料集**。

1. 選擇要預覽的資料表，選擇向下箭頭開啟選單，然後選擇**顯示資料表預覽**。

# 使用 SQL 自訂資料
<a name="adding-a-SQL-query"></a>

當您建立資料集或準備用於分析的資料時，您可以在查詢編輯器中自訂資料。

查詢編輯器是由下列多個元件組成：
+ ****查詢模式**** 在左上角，您可以選擇切換直接查詢或 SPICE 查詢模式：
  + **直接查詢**：直接對資料庫執行 SELECT 陳述式
  + **SPICE**：對之前已存放在記憶體中的資料執行 SELECT 陳述式
+ ****欄位****：使用此區段可停用您想要從最終資料集中移除的欄位。您可以在此區段中新增計算欄位，並使用 SageMaker AI 擴增資料
+ ****查詢封存****：使用此區段可尋找舊版的 SQL 查詢。
+ ****篩選條件****：使用此區段可新增、編輯或移除篩選條件。
+ ****結構描述總管****：此區段只會在您編輯 SQL 時出現。您可以使用此區段探索結構描述、資料表、欄位和資料類型。
+ ****SQL 編輯器****：使用此區段可編輯您的 SQL。SQL 編輯器提供語法反白、基本的自動完成、自動縮排以及編入行號。您只能為與 SQL 相容之資料來源中的資料集指定 SQL 查詢。您的 SQL 必須符合目標資料庫有關語法、大寫、命令終止等等的要求。如果喜歡，您還可以改從其他編輯器貼上 SQL。
+ ****資料工作空間****：關閉 SQL 編輯器後，資料工作空間就會以網格背景顯示在右上角。您在這裡可以看到以圖形表示的資料物件，包括查詢、資料表、檔案，以及在聯結編輯器中建立的聯結。

  若要檢視每份資料表的詳細資訊，請使用資料來源的選項 選單，然後選擇**資料表詳細資訊**或**編輯 SQL 查詢**。顯示的詳細資訊包括資料表名稱和別名、結構描述、資料來源名稱和資料來源類型。如需檔案的上傳設定，請從資料來源 options (選項) 功能表中選擇 **Configure upload settings (設定上傳設定)**，以檢視或變更下列設定：
  + 格式：檔案的格式，CSV、自訂、CLF 等
  + 起始列：開始的資料列
  + 文字限定詞：雙引號或單引號
  + 標頭：指出檔案是否包含標頭資料列
+ ****預覽資料列****：當未使用聯結組態編輯器時，取樣資料列的預覽會顯示在右下角。
+ ****聯結組態** 編輯器**：當您在資料工作空間中有多個資料物件時，聯結編輯器就會開啟。請選取兩份資料表 (或多個檔案) 之間的聯結圖示，以編輯聯結。使用畫面底部的聯結組態面板，選擇聯結類型和要聯結的欄位。然後選擇 **Apply (套用)** 建立聯結。您必須先完成所有聯結，才能儲存工作。

若要新增更多查詢、資料表或檔案，請使用工作空間上方的 **Add data (新增資料)** 選項。

## 建立基本的 SQL 查詢
<a name="add-a-SQL-query"></a>

使用自訂的 SQL 查詢，利用以下程序連線至資料來源。

**建立基本的 SQL 查詢**

1. 建立新的資料來源並驗證連線。

1. 填寫連線的必要選項，但不必選取結構描述或資料表。

1. 選擇 **Use custom SQL (使用自訂 SQL)**。

1. (選用) 您可以在 SQL 編輯器中輸入查詢，或繼續下一個步驟，使用全螢幕版本。若要立即輸入，請建立查詢名稱。然後在編輯器中鍵入或貼上 SQL 查詢。SQL 編輯器提供語法反白、基本的自動完成、自動縮排以及編入行號。

   (選用) 選擇**確認查詢**驗證查詢，並檢視直接查詢的設定、SPICE 記憶體和 SageMaker AI 設定。

1. 選擇 **Edit/Preview data (編輯/預覽資料)**。完整的查詢編輯器隨即出現，並顯示 SQL 編輯器。系統即會處理查詢，而且查詢結果的範例會顯示在資料預覽窗格中。您可以變更 SQL，然後選擇 **Apply (套用)** 確認變更。完成 SQL 後，請選擇 **Close (關閉)** 繼續作業。

1.  在頂端輸入資料集的名稱。然後選擇 **Save & visualize (儲存並視覺化)**。

### 修改現有的查詢
<a name="modifying-existing-queries"></a>

**更新 SQL 查詢**

1. 開啟您要使用的資料集。

1. 在具有網格的工作空間中，找到代表現有查詢的方塊形物件。

1. 開啟查詢物件的 options (選項) 功能表，然後選擇 **Edit SQL query (編輯 SQL 查詢)**。如果清單中沒有此選項，即表示查詢物件不是以 SQL 為基礎。

   若要檢視舊版查詢，請開啟左側的 **Query archive (查詢封存)**。

# 新增地理空間資料
<a name="geospatial-data-prep"></a>

您可以標記資料中的地理欄位，讓 Amazon Quick Sight 可以在地圖上顯示它們。Amazon Quick Sight 可以繪製經緯度座標的圖表。它還可辨識地理元件，例如國家、州/地區、郡/縣、城市和郵遞區號。您也可以建立一個可以區分類似實體的地理階層，例如兩州中相同的城市名稱。

**注意**  
有些 Amazon Quick Sight 中目前不支援地理空間圖表 AWS 區域，包括中國。我們正在努力新增更多區域的支援。

請透過以下程序，將地理空間資料類型和階層新增到您的資料集。

**將地理空間資料類型和階層新增到資料集**

1. 在資料準備頁面上，標示具有正確資料類型的地理元件。

   有幾種方式可以執行此作業。一種為選擇 **Fields (欄位)** 下的欄位，並使用省略符號圖示 (**...**) 來開啟內容功能表。

   然後，選擇正確的地理空間資料類型。

   您也可以利用資料範例，變更工作區域中的資料類型。若要這樣做，請選擇欄位名稱下列出的資料類型。然後，選擇您要指派的資料類型。

1. 驗證映射所需的所有地理空間欄位是否標示為地理空間資料類型。您可以尋找位置標記圖示來檢查此動作。這個圖示會出現在頁面頂部的欄位名稱之下，也出現在左邊的 **Fields (欄位)** 窗格中。

   也會檢查資料類型的名稱，例如緯度或國家。

1. (選用) 您可以設定地理元件 (州、城市) 的階層或分組、或經緯度座標的階層或分組。對於座標，您也須將經緯度新增到地理空間欄位。

   若要建立階層或分組，請先在 **Fields (欄位)** 窗格中選擇其中一個欄位。每個欄位只能屬於一個階層。您先選擇哪一個，或依何種順序新增欄位，並不重要。

   選擇欄位名稱旁邊的省略符號圖示 (**...**)。然後選擇 **Add to a hierarchy (新增到階層)**。

1. 在 **Add field to hierarchy (將欄位新增到階層)** 畫面上，選擇下列其中一項：
   + 選擇 **Create a new geospatial hierarchy (建立新的地理空間階層)** 來建立新的分組。
   + 選擇 **Add to existing geospatial hierarchy (新增到現有的地理空間階層)**，將欄位新增到已存在的分組。顯示的現有階層僅包含符合地理空間類型的階層。

   選擇 **Add (新增)** 來確認您的選擇。

1. 在 **Create hierarchy (建立階層)** 畫面上，命名您的階層。

   如果您要建立經緯度分組，則會顯示**建立階層**畫面。根據您在先前步驟中選擇緯度還是經度，緯度或經度會顯示在這個畫面上。確定您的緯度欄位顯示在**用於緯度的欄位**之下。也請確定您的經度顯示在**用於經度的欄位**之下。

   對於地理元件，**Create hierarchy (建立階層)** 畫面有兩個選項：
   + 如果您的資料只包含一個國家，請選擇 **This hierarchy is for a single country (此階層用於單一國家)**。從清單中選擇特定的國家。您的資料不需要包含階層的每個層級。您可以將欄位新增到階層，順序不拘。
   + 如果您的資料包含多個國家，請選擇 **This hierarchy is for multiple countries (此階層用於多個國家)**。選擇包含國家名稱的欄位。

   對於任一個階層類型，請選擇 **Update (更新)** 以繼續。

1. 視需要將多個欄位新增至階層以繼續。

   您的地理空間分組會出現在 **Fields (欄位)** 窗格中。

# 變更地理空間分組
<a name="geospatial-change-hierarchy"></a>

您可以變更資料集內存在的地理空間階層或分組。

請透過以下程序來編輯或解散地理空間階層。

**編輯或解散地理空間階層**

1. 開啟資料集。在 **Fields (欄位)** 窗格中，選擇階層名稱。

1. 選擇省略符號圖示 (**...**)，然後選擇下列其中一個選項。

   選擇 **Disband hierarchy (解散階層)**，從資料集移除階層。您無法復原此操作。不過，您可以在步驟 1 再次開始，以重新建立階層或分組。解散階層並不會從資料集移除任何欄位。

   選擇 **Edit hierarchy (編輯階層)** 來變更階層。這樣做會重新開啟建立畫面，讓您可以在重建階層時做出不同的選擇。

# 地理空間疑難排解
<a name="geospatial-troubleshooting"></a>

使用本節來探索正確處理地理空間資料的 Amazon Quick Sight 需求。如果 Amazon Quick Sight 無法將您的地理空間資料識別為地理空間，請使用本節來協助疑難排解問題。確定您的資料遵循列出的準則，以便其可在地理空間視覺效果中運作。

**注意**  
Amazon Quick Sight 中的地理空間圖表目前不支援某些 AWS 區域，包括中國。我們正在努力新增更多區域的支援。  
如果您的地理位置遵循此處列出的所有準則，但仍產生錯誤，請從 Amazon Quick Sight 主控台聯絡 Amazon Quick Sight 團隊。

**Topics**
+ [

## 地理編碼問題
](#geocoding)
+ [

## 經緯度的問題
](#latitude-and-longitude)
+ [

## 各國家/地區支援的行政區域和郵遞區號
](#supported-admin-areas-postal-codes)

## 地理編碼問題
<a name="geocoding"></a>

Amazon Quick Sight 地理編碼會將名稱放在經緯度座標中。它使用這些座標在地圖上顯示地點名稱。Amazon Quick Sight 會略過任何無法地理編碼的位置。

您的資料必須至少包含國家，此程序才能適當地運作。此外，您無法複製上層地點名稱內的地點名稱。

有些問題會導致地點名稱無法顯示在地圖圖表上。這些問題包含不支援、模棱兩可或無效的位置，如下所述。

**Topics**
+ [

### 不受支援區域的問題
](#geospatial-unsupported-areas)
+ [

### 位置不明確的問題
](#geospatial-ambiguous-locations)
+ [

### 地理空間資料無效的問題
](#geospatial-invalid-data)
+ [

### 地理編碼中預設國家的問題
](#geospatial-default-country)

### 不受支援區域的問題
<a name="geospatial-unsupported-areas"></a>

若要繪製不支援的位置，請在資料中包含緯度和經度座標。請在地理空間欄位中適當地使用這些座標，讓位置顯示在地圖圖表上。

### 位置不明確的問題
<a name="geospatial-ambiguous-locations"></a>

地理空間資料無法包含不明確的位置。例如，假設資料包含一個名為 **Springfield** 的城市，但階層中的下一個層級為國家。因為多個州都有名為 **Springfield** 的城市，所以無法將位置地理編碼至地圖上的特定點。

若要避免這個問題，您可以新增足夠的地理資料，以指出哪些位置應該顯示在地圖圖表上。例如，您可以將州層級新增至您的資料及其階層。或者，您可以新增經緯度。

### 地理空間資料無效的問題
<a name="geospatial-invalid-data"></a>

地點名稱 (例如，城市) 列在不正確的上層 (例如，州) 之下時，就會發生地理空間資料無效。這個問題可能只是拼字錯誤或資料輸入錯誤。

**注意**  
Amazon Quick Sight 不支援區域 （例如，西岸或南部） 做為地理空間資料。不過，您可以使用一個區域做為視覺效果中的篩選條件。

### 地理編碼中預設國家的問題
<a name="geospatial-default-country"></a>

確定您使用的是正確的預設國家。

每個階層的預設值是根據您在建立階層時所選擇的國家或國家欄位。

若要變更此預設值，您可以返回 **Create hierarchy (建立階層)** 畫面。然後編輯或建立階層，並選擇不同的國家。

如果您未建立階層，則預設國家會根據您的 AWS 區域而定。如需詳細資訊，請參閱下列資料表。


| 區域 | 預設國家 | 
| --- | --- | 
| 美國西部 (奧勒岡) 區域 美國東部 (俄亥俄) 區域 美國東部 (維吉尼亞北部) 區域 | 美國 | 
| 亞太地區 (新加坡) | 新加坡 | 
| 亞太地區 (悉尼) | 澳洲 | 
| 歐洲 (愛爾蘭) 區域 | 愛爾蘭 | 

## 經緯度的問題
<a name="latitude-and-longitude"></a>

Amazon Quick Sight 會在背景中使用經緯度座標來尋找地圖上的位置名稱。不過，您也可以使用座標來建立地圖，而不需使用地點名稱。這種方法也會使用不支援的地點名稱。

經緯度值必須是數字。例如， 指定的對應點與 Amazon Quick Sight **28.5383355 -81.3792365** 相容。但 **28° 32' 18.0096'' N 81° 22' 45.2424'' W** 不是。

**Topics**
+ [

### 經緯度座標的有效範圍
](#valid-ranges-for-coordinates)
+ [

### 以度、分鐘和秒 (DMS) 格式使用座標
](#using-coordinates-in-dms-format)

### 經緯度座標的有效範圍
<a name="valid-ranges-for-coordinates"></a>

Amazon Quick Sight 支援特定範圍內的經緯度座標。




| 座標 | 有效範圍 | 
| --- | --- | 
| Latitude | 在 -90 與 90 之間 | 
| Longitude | 在-180 到 180 之間 | 

Amazon Quick Sight 會略過這些範圍以外的任何資料。超出範圍的點無法映射至地圖圖表上。

### 以度、分鐘和秒 (DMS) 格式使用座標
<a name="using-coordinates-in-dms-format"></a>

您可以使用計算欄位與公式搭配，從字元字串建立數字經緯度。使用本節尋找您可以在 Amazon Quick Sight 中建立計算欄位的不同方式，將 GPS 緯度和經度剖析為數值緯度。

以下範例會從個別欄位將經緯度轉換為數字格式。例如，假設您使用空格作為分隔符號來剖析 **51° 30' 26.4636'' N 0° 7' 39.9288'' W**。在此情況下，您可以使用如下的範例，將產生的欄位轉換為數字經緯度。

在此範例中，秒的後面有兩個單引號。反之，如果您的資料具有雙引號，則您可以使用 `strlen(LatSec)-1)`，而非 `strlen(LatSec)-2)`。

```
/*Latitude*/
        ifelse(
        LatDir = "N",
        parseInt(split(LatDeg, "°", 1)) +
            (parseDecimal(split(LatMin, "'", 1) ) /60) +
            (parseDecimal((substring(LatSec, 1, strlen(LatSec)-2) ) ) /3600),
        (parseInt(split(LatDeg, "°", 1)) +
            (parseDecimal(split(LatMin, "'", 1) ) /60) +
            (parseDecimal((substring(LatSec, 1, strlen(LatSec)-2) ) ) /3600)) * -1
        )

/*Longitude*/
        ifelse(
        LongDir = "E",
        parseInt(split(LongDeg, "°", 1)) +
            (parseDecimal(split(LongMin, "'", 1) ) /60) +
            (parseDecimal((substring(LongSec, 1, strlen(LongSec)-2) ) ) /3600),
        (parseInt(split(LongDeg, "°", 1)) +
            (parseDecimal(split(LongMin, "'", 1) ) /60) +
            (parseDecimal((substring(LongSec, 1, strlen(LongSec)-2) ) ) /3600)) * -1
        )
```



如果您的資料未包含度、分鐘和秒的符號，則公式看起來如下所示。

```
/*Latitude*/
    ifelse(
        LatDir = "N",
        (LatDeg + (LatMin / 60) + (LatSec / 3600)),
        (LatDeg + (LatMin / 60) + (LatSec / 3600)) * -1
    )

/*Longitude*/
    ifelse(
        LongDir = "E",
        (LongDeg + (LongMin / 60) + (LongSec / 3600)),
        (LongDeg + (LongMin / 60) + (LongSec / 3600)) * -1
    )
```



以下範例會將 **53°21'N 06°15'W** 轉換為數字格式。不過，若沒有秒，此節點不會精確映射。

```
/*Latitude*/
ifelse(
    right(Latitude, 1) = "N",
    (parseInt(split(Latitude, '°', 1)) +
        parseDecimal(substring(Latitude, (locate(Latitude, '°',3)+1),  2) ) / 60) ,
    (parseInt(split(Latitude, '°', 1)) +
        parseDecimal(substring(Latitude, (locate(Latitude, '°',3)+1),  2) ) / 60) * -1
)

/*Longitude*/
ifelse(
    right(Longitude, 1) = "E",
    (parseInt(split(Longitude, '°', 1)) +
        parseDecimal(substring(Longitude, (locate(Longitude, '°',3)+1),  2) ) / 60) ,
    (parseInt(split(Longitude, '°', 1)) +
        parseDecimal(substring(Longitude, (locate(Longitude, '°',3)+1),  2) ) / 60) * -1
)
```



GPS 經緯度的格式可以各有不同，因此自訂公式以符合您的資料。如需詳細資訊，請參閱下列內容：
+ LatLong.net 上的 [Degrees Minutes Seconds to Decimal Degrees](https://www.latlong.net/degrees-minutes-seconds-to-decimal-degrees)
+ Stack Overflow 上的 [Converting Degrees/Minutes/Seconds to Decimals using SQL](https://stackoverflow.com/questions/12186110/converts-degrees-minutes-seconds-to-decimals-using-sql)
+ Wikipedia 上的 [Geographic Coordinate Conversion](https://en.wikipedia.org/wiki/Geographic_coordinate_conversion)

## 各國家/地區支援的行政區域和郵遞區號
<a name="supported-admin-areas-postal-codes"></a>

以下是各國家/地區支援的行政區域清單。


**支援的行政區域**  

| 國名 | 國家代碼 | 國家/地區 | State | County | City | 
| --- | --- | --- | --- | --- | --- | 
|  阿魯巴島  |  ABW  |  Country  |  大區 (Regions)  |  地區 (Zones)  |    | 
|  阿富汗  |  AFG  |  Country  |  維拉亞特  |  Wuleswali  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  安哥拉  |  AGO  |  Country  |  省 (Provinces)/Províncias  |  Municipios  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  安圭拉  |  AIA  |  Country  |  堂區 (Parishes)  |    |    | 
|  阿爾巴尼亞  |  ALB  |  Country  |  Qarqe/Qark  |  市鎮 (Communes)/Bashki  |  Njësi/地方 (Localities)/城市區域 (Urban Areas)  | 
|  安道爾  |  AND  |  Country  |  堂區 (Parishes)/Parròquies  |  地方 (Localities)/城市區域 (Urban Areas)  |    | 
|  阿拉伯聯合大公國  |  ARE  |  Country  |  阿聯酋聯合大公國  |  市鎮 (Municipalities)  |  市 (Cities)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  阿根廷  |  ARG  |  Country  |  省 (Provinces)/Provincias  |  Departamentos/省 (Departments)  |  Comunas/Barrios  | 
|  亞美尼亞  |  ARM  |  Country  |  省 (Provinces)/Marzpet  |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  美屬薩摩亞  |  ASM  |  Country  |  區 (Districts)  |  郡 (Counties)  |  村 (Villages)  | 
|  南極洲  |  ATA  |  Country  |    |    |    | 
|  法屬南部領地  |  ATF  |  Country  |  區 (Districts)  |    |    | 
|  安地卡及巴布達  |  ATG  |  Country  |  堂區 (Parishes)  |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  澳洲  |  AUS  |  Country  |  州 (States)  |  當地政府區域  |  郊區 (Suburbs)/城市中心 (Urban Centers)  | 
|  奧地利  |  AUT  |  Country  |  州 (States)/Bundesländer  |  區 (Districts)/Bezirke  |  市鎮 (Municipalities)/Gemeinden/城市區域 (Urban Areas)/Stadtteil  | 
|  亞塞拜然  |  AZE  |  Country  |  大區 (Regions)/Iqtisadi Rayonlar  |  區 (Districts)/Rayonlar  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  蒲隆地  |  BDI  |  Country  |  省 (Provinces)  |  市鎮 (Communes)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  比利時  |  BEL  |  Country  |  大區 (Regions)/Gewest  |  省 (Provinces)/Provincie  |  區 (Districts)/Arrondissements/市鎮 (Municipalities)/市鎮 (Communes)  | 
|  貝南  |  BEN  |  Country  |  省 (Departments)  |  市鎮 (Communes)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  Bonaire、Sint Eustasius 和 Saba  |  BES  |  Country  |  市鎮 (Municipalities)  |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  布吉納法索  |  BFA  |  Country  |  大區 (Regions)  |  省 (Provinces)  |  市鎮 (Communes)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  孟加拉  |  BGD  |  Country  |  區 (Divisions)/Bibhag  |  區 (Districts)/Zila  |  次區 (Subdistricts)/Upzila/地方 (Localities)/城市區域 (Urban Areas)  | 
|  保加利亞  |  BGR  |  Country  |  Oblast  |  Obshtina  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  巴林  |  BHR  |  Country  |  省 (Governorates)  |  選區 (Constituencies)  |  地方 (Localities)  | 
|  巴哈馬  |  BHS  |  Country  |  島群 (Island Groups)  |  區 (Districts)  |  城鎮 (Towns)  | 
|  波士尼亞與赫塞哥維納  |  BIH  |  Country  |  聯邦 (Federation)/共和國 (Republika)  |  Kanton  |  Opština/地方 (Localities)/城市區域 (Urban Areas)  | 
|  聖巴泰勒米島  |  BLM  |  Country  |    |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  白俄羅斯  |  BLR  |  Country  |  Voblasts  |  Rayon  |  Selsoviet/地方 (Localities)/城市區域 (Urban Areas)  | 
|  貝里斯  |  BLZ  |  Country  |  區 (Districts)  |  選區 (Constituencies)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  百慕達  |  BMU  |  Country  |  堂區 (Parishes)  |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  玻利維亞  |  BOL  |  Country  |  省 (Provinces)/Provincias  |  Departamentos/省 (Departments)  |  市鎮 (Municipalities)/Municipios/地方 (Localities)/城市區域 (Urban Areas)  | 
|  巴西  |  bra  |  Country  |  省 (Provinces/州 (States)/Unidades  |  市鎮 (Municipalities)/Municipios  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  巴貝多  |  BRB  |  Country  |  堂區 (Parishes)  |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  汶萊  |  BRN  |  Country  |  區 (Districts)/Dawaïr  |  次區 (Subdistricts)/Mukim  |  村 (Villages)/Kampung/地方 (Localities)/城市區域 (Urban Areas)  | 
|  不丹  |  BTN  |  Country  |  區 (Districts)/Dzongkhag  |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  布威島  |  BVT  |  Country  |    |    |    | 
|  波札那  |  BWA  |  Country  |  區 (Districts)  |  次區 (Subdistricts)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  中非共和國  |  CAF  |  Country  |  大區 (Regions)  |  縣 (Prefectures)  |  副縣 (Sub Prefectures)/市鎮 (Communes)  | 
|  加拿大  |  CAN  |  Country  |  省 (Provinces)/領土 (Territories)  |  普查區 (Census Divisions)  |  普查細分區 (Census Subdivision)/地方 (Localities)/城市區域 (Urban Areas)」  | 
|  瑞士  |  CHE  |  Country  |  縣 (Cantons)/Kanton/Cantone/Chantun  |  區 (District)/Bezirk/Distretto/Circul  |  「市鎮 (Commune)/Gemeinde/Comune/Cumün/地方 (Localities)/城市區域 (Urban Areas)」  | 
|  智利  |  CHL  |  Country  |  大區 (Regions)/Regiones  |  省 (Province)/Provincias  |  市鎮 (Commune)/Comunas/地方 (Localities)/城市區域 (Urban Areas)  | 
|  中華人民共和國  |  CHN  |  Country  |  省 (Provinces)  |  縣 (Prefectures)  |  市 (Cities)/郡 (Counties)  | 
|  象牙海岸  |  CIV  |  Country  |  區 (Districts)  |  大區 (Regions)  |  省 (Departments)/副縣 (Sub Prefectures)  | 
|  喀麥隆  |  CMR  |  Country  |  省 (Provinces)/大區 (Regions)  |  省 (Departments)  |  區 (Arrondissements)/市 (Cities)  | 
|  剛果民主共和國  |  COD  |  Country  |  省 (Provinces)  |  區 (Districts)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  剛果共和國  |  COG  |  Country  |  省 (Departments)  |    |  市鎮 (Communes)/Arrondissements  | 
|  庫克群島  |  COK  |  Country  |  島嶼委員會  |    |    | 
|  哥倫比亞  |  COL  |  Country  |  Departmentos  |  Municipios  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  葛摩  |  COM  |  Country  |  自治群島 (Autonomous Islands)/îles 自治群島  |    |  Villes/村 (Villages)  | 
|  克利珀頓島  |  CPT  |  Country  |    |    |    | 
|  維德角  |  CPV  |  Country  |  海島市  |  Concelhos  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  哥斯大黎加  |  CRI  |  Country  |  Provincias  |  縣 (Cantons)  |  Distritos/地方 (Localities)/城市區域 (Urban Areas)  | 
|  古巴  |  CUB  |  Country  |  Provincias  |  Municipios  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  庫拉索  |  CUW  |  Country  |    |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  開曼群島  |  CYM  |  Country  |  區 (Districts)  |    |    | 
|  賽普勒斯  |  CYP  |  Country  |  區 (Districts)/Eparchies  |  市鎮 (Municipalities)/Dimos  |  地方 (Localities)/城市區域 (Urban Areas)/Sinikia  | 
|  捷克  |  CZE  |  Country  |  大區 (Regions)/Kraj  |  市鎮 (Municipalities)/Orp  |  Obec/Mesto  | 
|  德國  |  DEU  |  Country  |  邦 (Bundesland)/州 (States)  |  Kreis/區 (Districts)  |  Gemeinde/市鎮 (Municipalities)/Stadtteil地方 (Localities)/城市區域 (Urban Areas)  | 
|  吉布地  |  DJI  |  Country  |  大區 (Regions)  |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  多米尼克  |  DMA  |  Country  |  堂區 (Parishes)  |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  丹麥  |  DNK  |  Country  |  大區 (Regions)  |  省 (Provinces)  |  市鎮 (Municipalities)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  多明尼加共和國  |  DOM  |  Country  |  大區 (Regions)/Regiones  |  省 (Provinces)/Provincias  |  市鎮 (Municipalities)/Municipios/地方 (Localities)/城市區域 (Urban Areas)  | 
|  阿爾及利亞  |  DZA  |  Country  |  省 (Provinces)/Wilayas  |  區 (Districts)  |  市鎮 (Municipalities)/Baladiyas/地方 (Localities)/城市區域 (Urban Areas)  | 
|  厄瓜多  |  ECU  |  Country  |  省 (Provinces)  |  縣 (Cantons)  |  堂區 (Parishes)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  埃及  |  EGY  |  Country  |  省 (Governorates)/Muhafazat  |  自治市 (Municipal Divisions)/Markaz  |  城鎮 (Towns)/市 (Cities)/副自治市 (Sub Municipal Divisions)  | 
|  厄利垂亞  |  ERI  |  Country  |  大區 (Regions)/Zoba  |  區 (Districts)/Subzobas  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  西班牙  |  ESP  |  Country  |  自治社區 (Autonomous Communities)/Comunidados Autonomas  |  Provincias  |  Municipios/地方 (Localities)/城市區域 (Urban Areas)  | 
|  愛沙尼亞  |  EST  |  Country  |  Maakond  |  Omavalitsus/Linn/Vald  |  Küla/地方 (Localities)/城市區域 (Urban Areas)  | 
|  衣索比亞  |  ETH  |  Country  |  大區 (Regions)/Kililoch  |  地區 (Zones)/Zonouch  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  芬蘭  |  FIN  |  Country  |  大區 (Regions)/Maakunta  |  次區/Seutukunta  |  市鎮 (Municipalities)/Kunta/地方 (Localities)/城市區域 (Urban Areas)  | 
|  斐濟  |  FJI  |  Country  |  行政區 (Divisions)  |  省 (Provinces)  |  區 (Districts)/村 (Villages)  | 
|  福克蘭群島  |  FLK  |  Country  |    |    |    | 
|  法國  |  FRA  |  Country  |  大區 (Regions)  |  Départements  |  Arrondissements/縣 (Cantons)  | 
|  法羅群島  |  FRO  |  Country  |  大區 (Regions)/Syslur  |  市鎮 (Municipalities)/科摩諾爾  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  密克羅尼西亞  |  FSM  |  Country  |  州 (States)  |    |    | 
|  加彭  |  GAB  |  Country  |  省 (Provinces)  |  省 (Departments)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  英國  |  GBR  |  Country  |  國家 (Nations)  |  郡 (Counties)  |  區 (Districts)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  喬治亞  |  GEO  |  Country  |  大區/Mkhare  |  市鎮 (Municipalities)/Munitsipaliteti  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  迦納  |  GHA  |  Country  |  大區 (Regions)  |  區 (Districts)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  直布羅陀  |  GIB  |  Country  |    |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  幾內亞  |  GIN  |  Country  |  大區 (Regions)  |  縣 (Prefectures)  |  副縣 (Sub Prefectures)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  瓜地洛普  |  GLP  |  Country  |  Arrondissements  |  市鎮 (Communes)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  甘比亞  |  GMB  |  Country  |  大區 (Regions)  |  區 (Districts)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  幾內亞比索  |  GNB  |  Country  |  大區 (Regions)  |  區 (Sectors)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  赤道幾內亞  |  GNQ  |  Country  |  大區 (Regions)  |  Provincias  |  Distritos/地方 (Localities)/城市區域 (Urban Areas)  | 
|  希臘  |  GRC  |  Country  |  大區 (Regions)/Periphenies  |  Regional Units Peri Enotities  |  市鎮 (Municipalities)/Domoi/地方 (Localities)/城市區域 (Urban Areas)  | 
|  格瑞那達  |  GRD  |  Country  |  州 (States)  |  堂區 (Parishes)/領地 (Dependencies)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  格陵蘭  |  GRL  |  Country  |  市鎮 (Municipalities)/Kommunia  |    |    | 
|  瓜地馬拉  |  GTM  |  Country  |  省 (Departments)/Departamentos  |  市鎮 (Municipalities)/Municipios  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  法屬圭亞那  |  GUF  |  Country  |  Arrondissements  |  市鎮 (Communes)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  關島  |    |  國家 = 「美國」  |  州 (States)  |  區 (Districts)  |    | 
|  蓋亞納  |  GUY  |  Country  |  大區 (Regions)  |  鄰舍會 (Neighborhood Councils)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  香港  |  HKG  |  Country  |  區 (Districts)  |  次區 (Subdistricts)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  赫德島及麥唐納群島  |  HMD  |  Country  |    |    |    | 
|  宏都拉斯  |  HND  |  Country  |  省 (Departments)/Departamentos  |  市鎮 (Municipalities)/Municipios  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  克羅埃西亞  |  HRV  |  Country  |  郡 (Counties)  |  市鎮 (Municipalities)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  海地  |  HTI  |  Country  |  省 (Departments)/Départements  |  區 (Districts)/Arrondissements  |  市鎮 (Communes)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  匈牙利  |  HUN  |  Country  |  Regiok  |  Megyék  |  Járások/Városok  | 
|  印尼  |  IDN  |  Country  |  省 (Provinces)/Provinsi  |  省 (Regency)/Kabupaten  |  區 (Districts)/Kecamatan/地方 (Localities)/城市區域 (Urban Areas)  | 
|  印度  |  IND  |  Country  |  邦 (States)/屬地 (Territories)  |  區 (Districts)  |  次區 (Subdistricts)/城鎮 (Towns)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  英屬印度洋領地  |  IOT  |  Country  |    |    |    | 
|  愛爾蘭  |  IRL  |  Country  |  大區 (Regions)  |  郡 (Counties)  |  選區 (Electoral Divisions)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  伊朗  |  IRN  |  Country  |  省 (Provinces)/奧斯坦哈  |  縣 (Counties)/查斯坦  |  地方 (Localities)/Dehestân  | 
|  伊拉克  |  IRQ  |  Country  |  省 (Governorates)/Muhafazat  |  區 (Districts)/Qadaa/Kaza  |  城市區域 (Urban Areas)/地方 (Localities)  | 
|  冰島  |  ISL  |  Country  |  大區 (Regions)/Landsvaedi  |  市鎮 (Municipalities)/Sveitarfelog  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  以色列  |  ISR  |  Country  |  區 (Districts)  |  市 (Cities)/地議會 (Local Councils)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  義大利  |  ITA  |  Country  |  區 (Regiones)  |  Provincias  |  市鎮 (Communes)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  牙買加  |  JAM  |  Country  |  郡 (Counties)  |  堂區 (Parishes)  |  選區 (Constituencies)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  約旦  |  JOR  |  Country  |  省 (Governorates)  |  區 (Districts)  |  次區 (Subdistricts)/市 (Cities)  | 
|  日本  |  JPN  |  Country  |  縣 (Prefectures)  |    |  市 (Cities)/區 (Districts)/市鎮 (Municipalities)  | 
|  哈薩克  |  KAZ  |  Country  |  大區 (Regions)/Oblystar  |  區 (Districts)/Audandar  |  城鎮 (Towns)/市鎮 (Kent)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  肯亞  |  KEN  |  Country  |  郡 (Counties)  |  選區 (Constituencies)  |  地方 (Localities)/城市區域 (Urban Areas)/郊區 (Suburbs)  | 
|  吉爾吉斯  |  KGZ  |  Country  |  大區 (Regions)/Oblasttar  |  區 (Districts)/Raions  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  柬埔寨  |  KHM  |  Country  |  省/Khaet  |  區 (Districts)/Srŏk  |  市鎮 (Communes)/Khum/地方 (Localities)/城市區域 (Urban Areas)  | 
|  吉里巴斯  |  KIR  |  Country  |  區 (Districts)  |  島嶼委員會  |    | 
|  聖克里斯多福及尼維斯  |  KNA  |  Country  |  堂區 (Parishes)  |  州 (States)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  南韓  |  KOR  |  Country  |  省/Do  |  區 (Districts)/Si/Gun  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  科威特  |  KWT  |  Country  |  省 (Governorates)/Muhafazah  |  區域 (Areas)/Mintaqah  |  市 (Cities)/社區 (Communities)  | 
|  寮國  |  LAO  |  Country  |  省 (Provinces)/Khoueng  |  區 (Districts)/Muang  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  黎巴嫩  |  LBN  |  Country  |  省 (Governorates)/Muhafazat  |  區 (Districts)/Qadaa  |  市鎮 (Municipalities)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  賴比瑞亞  |  LBR  |  Country  |  郡 (Counties)  |  區 (Districts)  |  Clans/地方 (Localities)/城市區域 (Urban Areas)  | 
|  利比亞  |  LBY  |  Country  |  區 (Districts)/Shabiya  |    |  市 (Cities)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  聖露西亞  |  LCA  |  Country  |  區 (Districts)/區 (Quarters)  |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  列支敦斯登  |  LIE  |  Country  |  區 (Districts)/Bezirk  |  市鎮 (Municipalities)/Gemeinden  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  斯里蘭卡  |  LKA  |  Country  |  省 (Provinces)  |  區 (Districts)  |  秘書處分區 (Divisional Secretariats)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  賴索托  |  LSO  |  Country  |  區 (Districts)  |  選區 (Constituencies)  |  社區 (Community Councils)/地方 (Localities)  | 
|  立陶宛  |  LTU  |  Country  |  Apskritis  |  Savivaldybé  |  Seniūnija  | 
|  盧森堡  |  LUX  |  Country  |  縣 (Cantons)/Kantounen/Kantone  |  市鎮 (Communes)/Gemengen/Gemeinden  |  地方 (Localities)/Ortschaft/Uertschaft/市 (Cities)  | 
|  拉脫維亞  |  LVA  |  Country  |  大區 (Regions)  |  市鎮 (Municipalities)/Novadi  |  Pilsētas/Pagasti/地方 (Localities)/城市區域 (Urban Areas)  | 
|  澳門  |  MAC  |  Country  |  堂區 (Parishes)  |  區 (Districts)  |    | 
|  法屬聖馬丁  |  MAF  |  Country  |    |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  摩洛哥  |  MAR  |  Country  |  大區 (Regions)  |  省 (Provinces/縣 (Prefectures)  |  市鎮 (Communes)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  摩納哥  |  MCO  |  Country  |  市鎮 (Communes)  |  鄰區 (Wards)/區 (Quartiers)  |    | 
|  摩爾多瓦  |  MDA  |  Country  |  區 (Raion)  |  市鎮 (Comuna)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  馬達加斯加  |  MDG  |  Country  |  大區 (Regions)/Faritra  |  區 (Districts)  |  市鎮 (Communes)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  馬爾地夫  |  MDV  |  Country  |  行政環礁 (Atolls)/市 (Cities)  |  群島  |    | 
|  墨西哥  |  MEX  |  Country  |  Estados  |  Municipios/Delegaciones  |  Colonias/地方 (Localities)/城市區域 (Urban Areas)  | 
|  馬紹爾群島  |  MHL  |  Country  |  市鎮 (Municipalities)  |    |    | 
|  馬其頓  |  MKD  |  Country  |  統計區  |  Opstina  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  馬利  |  MLI  |  Country  |  大區 (Regions)  |  市鎮 (Communes)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  馬爾他  |  MLT  |  Country  |  區 (Districts)  |  地議會 (Local Councils)/Kunsilli Lokali  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  緬甸  |  MMR  |  Country  |  州 (States)/大區 (Regions)/中央直轄區 (Union Territories)  |  區 (Districts)  |  鎮區 (Townships)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  蒙特內哥羅  |  MNE  |  Country  |  Opštine/市鎮 (Municipalities)  |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  蒙古  |  MNG  |  Country  |  大區 (Regions)  |  省 (Provinces)/Aimags  |  區 (Districts)/Sums/地方 (Localities)/城市區域 (Urban Areas)  | 
|  北馬里亞納群島  |  MNP  |  Country  |  市鎮 (Municipalities)  |    |    | 
|  莫三比克  |  MOZ  |  Country  |  省 (Provinces)  |  區 (Districts)/Distritos  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  茅利塔尼亞  |  MRT  |  Country  |  大區 (Regions)  |  Départements  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  蒙特色拉特島  |  MSR  |  Country  |  堂區 (Parishes)  |  大區 (Regions)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  馬丁尼克  |  MTQ  |  Country  |  Arrondissements  |  市鎮 (Communes)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  模里西斯  |  MUS  |  Country  |  群島  |  區 (Districts)  |  鄰區 (Wards)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  馬拉威  |  MWI  |  Country  |  大區 (Regions)  |  區 (Districts)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  馬來西亞  |  MYS  |  Country  |  邦 (States)/Negeri  |  區 (Districts)/Daïra/Daerah  |  次區 (Subdistricts)/Mukim/地方 (Localities)/城市區域 (Urban Areas)/Bahagian Kecil  | 
|  馬約特島  |  MYT  |  Country  |  市鎮 (Communes)  |    |  村 (Villages)  | 
|  納米比亞  |  NAM  |  Country  |  省 (Provinces)  |  選區 (Constituencies)  |  郊區 (Suburbs)/地方 (Localities)  | 
|  新喀里多尼亞  |  NCL  |  Country  |  省 (Provinces)  |  市鎮 (Communes)  |    | 
|  尼日  |  NER  |  Country  |  大區 (Regions)  |  省 (Departments)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  奈及利亞  |  NGA  |  Country  |  州 (States)  |  當地政府區域  |  城鎮 (Towns)/城市  | 
|  尼加拉瓜  |  NIC  |  Country  |  省 (Departments)/Departamentos  |  市鎮 (Municipalities)/Municipios  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  紐埃島  |  NIU  |  Country  |  村 (Villages)  |    |  城鎮 (Towns)  | 
|  荷蘭  |  NLD  |  Country  |  郡 (Counties)/Fylker  |  區 (Districts)/Okonomisk  |  市鎮 (Municipalities)、市鎮 (Kommuner)、地方 (Localities) 或城市區域 (Urban Areas)  | 
|  挪威  |  NOR  |  Country  |  郡 (Counties)/Fylker  |  區 (Districts)/Okonomisk  |  市鎮 (Municipalities)、市鎮 (Kommuner)、地方 (Localities) 或城市區域 (Urban Areas)  | 
|  尼泊爾  |  NPL  |  Country  |  省 (Provinces)/Pradeshaharu  |  區 (Districts)/Jilla  |  市鎮 (Municipalities)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  諾魯  |  NRU  |  Country  |  區 (Districts)  |    |    | 
|  紐西蘭  |  NZL  |  Country  |  大區 (Regions)  |  領土主管機關  |  統計區 (Statistical Areas)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  阿曼  |  OMN  |  Country  |  省 (Governorates)/Muhafazah  |  省 (Provinces)/Wilayat  |  市 (Cities)/城市區域 (Urban Areas)/社區  | 
|  巴基斯坦  |  PAK  |  Country  |  省 (Provinces)  |  區 (Districts)  |  地方 (Localities)/Tehsils  | 
|  巴拿馬  |  PAN  |  Country  |  省 (Provinces)/Provincias  |  區 (Districts)/Distrito  |  Corregimientos/地方 (Localities)/城市區域 (Urban Areas)  | 
|  皮特肯群島  |  PCN  |  Country  |  群島  |    |    | 
|  秘魯  |  PER  |  Country  |  大區 (Regions)  |  區 (Districts)  |  Distritos/地方 (Localities)/城市區域 (Urban Areas)  | 
|  菲律賓  |  PHL  |  Country  |  大區 (Rehiyon)/Rehiyon  |  省 (Provinces)/Lalawigan  |  市鎮 (Municipalities)/Munisipiyos/市 (Cities)/Lungsod  | 
|  帛琉  |  PLW  |  Country  |  州 (States)  |    |    | 
|  巴布亞紐幾內亞  |  PNG  |  Country  |  大區 (Regions)  |  省 (Provinces)  |  區 (Districts)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  波蘭  |  POL  |  Country  |  省 (Provinces)/Voivodeship  |  郡 (Counties)/Powiats  |  市鎮 (Communes)/Gminas/城鎮 (Towns)/Dzielnicas  | 
|  北韓  |  PRK  |  Country  |  省 (Provinces)  |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  葡萄牙  |  PRT  |  Country  |  區 (Districts)/Distritos  |  市鎮 (Municipalities)/Concelhos  |  民政教區 (Civil Parish)/Freguesias/地方 (Localities)/城市區域 (Urban Areas)  | 
|  巴拉圭  |  PRY  |  Country  |  省 (Departments)  |  Distritos  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  巴勒斯坦  |  PSE  |  Country  |  領土 (Territories)  |  省 (Governorates)/Muhafazat  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  法屬玻里尼西亞  |  PYF  |  Country  |  分區 (Subdivisions)/Iles  |  市鎮 (Communes)  |    | 
|  卡達  |  QAT  |  Country  |  市鎮 (Municipalities)/Baladiyat  |  地區 (Zones)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  留尼旺  |  REU  |  Country  |  Arrondissements  |  市鎮 (Communes)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  羅馬尼亞  |  ROU  |  Country  |  大區 (Regions)/Judete  |  市鎮 (Communes)  |  城鎮 (Towns)/Oraș  | 
|  俄羅斯  |  RUS  |  Country  |  聯邦區/Federal'nyy Okrug  |  Oblast'  |  Rayon/Raion/城市區域 (Urban Areas)/Gorod  | 
|  盧安達  |  RWA  |  Country  |  省 (Provinces)  |  區 (Districts)  |  區 (Sectors)/Secteurs/地方 (Localities)/城市區域 (Urban Areas)  | 
|  沙烏地阿拉伯  |  SAU  |  Country  |  大區 (Regions)/Manatiq  |  省 (Governorates)/Muhafazat  |  市鎮 (Municipalities)/Amanah  | 
|  蘇丹  |  SDN  |  Country  |  州 (States)/Wilaya'at  |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  塞內加爾  |  SEN  |  Country  |  大區 (Regions)  |  省 (Departments)  |  Arrondissements/地方 (Localities)/城市區域 (Urban Areas)  | 
|  新加坡  |  SGP  |  Country  |  區 (Districts)  |  選區 (Constituencies)  |  鄰區 (Wards)  | 
|  聖赫勒拿  |  SHN  |  Country  |  群島  |  區 (Districts)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  索羅門群島  |  SLB  |  Country  |  省 (Provinces)  |  選區 (Constituencies)  |  鄰區 (Wards)  | 
|  獅子山  |  SLE  |  Country  |  省 (Provinces)  |  區 (Districts)  |  Chiefdoms/地方 (Localities)/城市區域 (Urban Areas)  | 
|  薩爾瓦多  |  SLV  |  Country  |  省 (Departments)/Departamentos  |  市鎮 (Municipalities)/Municipios  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  聖馬利諾  |  SMR  |  Country  |  市鎮 (Municipalities)/Castelli  |  地方 (Localities)/城市區域 (Urban Areas)  |    | 
|  索馬利亞  |  SOM  |  Country  |  大區 (Regions)/Gobolada  |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  聖皮埃赫及密克隆  |  SPM  |  Country  |  市鎮 (Communes)  |    |    | 
|  塞爾維亞  |  SRB  |  Country  |  Autonomna Pokrajina/大區 (Regions)  |  Okrug/區 (Districts)  |  Opstina/市鎮 (Municipalities)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  南蘇丹  |  SSD  |  Country  |  州 (States)/Wilayat  |  郡 (Counties)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  聖多美普林西比  |  STP  |  Country  |  省 (Provinces)  |  區 (Districts)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  蘇利南  |  SUR  |  Country  |  區 (Districts)/Distrikt  |  渡假村  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  斯洛伐克  |  SVK  |  Country  |  大區 (Regions)/Kraje  |  區 (Districts)/Okresy  |  市鎮 (Municipalities)/Obec/Mestská cast  | 
|  斯洛維尼亞  |  SVN  |  Country  |  大區 (Regions)/Regi  |  Upravne Enote  |  市鎮 (Municipalities)/Obcine/地方 (Localities)/城市區域 (Urban Areas)  | 
|  瑞典  |  SWE  |  Country  |  郡 (Counties)  |  市鎮 (Municipalities)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  史瓦帝尼  |  SWZ  |  Country  |  大區 (Regions)  |  Tinkhundla  |  城鎮 (Towns)/郊區 (Suburbs)/地方 (Localities)  | 
|  荷屬聖馬丁  |  SXM  |  Country  |  居民點 (Settlements)  |    |    | 
|  賽席爾  |  SYC  |  Country  |  區 (Districts)  |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  敘利亞  |  SYR  |  Country  |  省 (Governorates)  |  區 (Districts)/Muhafazah  |  市 (Cities)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  英屬土克斯及開科斯群島  |  TCA  |  Country  |  區 (Districts)  |  地方 (Localities)  |    | 
|  查德  |  TCD  |  Country  |  大區 (Regions)  |  Départements  |  Arrondissements/地方 (Localities)/城市區域 (Urban Areas)  | 
|  多哥  |  TGO  |  Country  |  大區 (Regions)/省 (Provinces)  |  縣 (Prefectures)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  泰國  |  THA  |  Country  |  省 (Provinces)/Changwat  |  區 (Districts)/Amphoe  |  次區 (Subdistricts)/Tambon/地方 (Localities)/城市區域 (Urban Areas)  | 
|  塔吉克  |  TJK  |  Country  |  省 (Provinces)/大區 (Regions)  |  區 (Districts)/Raion/Rayon  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  托克勞  |  TKL  |  Country  |  Atolls  |    |    | 
|  土庫曼  |  TKM  |  Country  |  省 (Provinces)/Welayat  |  區 (Districts)/Etraplar  |  城鎮 (Towns)  | 
|  東帝汶 (Timor-Leste)  |  TLS  |  Country  |  市鎮 (Municipalities)  |  行政郵政 (Administrative Post)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  東加  |  TON  |  Country  |  分區 (Subdivisions)  |    |    | 
|  千里達及托巴哥  |  TTO  |  Country  |  市鎮 (Municipalities)  |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  突尼西亞  |  TUN  |  Country  |  省 (Governates)/Wilayahs  |  委派 (Delegations)/Mutamadiyats  |  市鎮 (Municipalities)/Shaykhats/地方 (Localities)/城市區域 (Urban Areas)  | 
|  土耳其  |  TUR  |  Country  |  省 (Provinces)/Il  |  區 (Districts)/Ilce  |  城市區域 (Urban Areas)/Belde/次區 (Subdistricts)/Bucak/鄰里 (Neighborhoods)/Mahalle  | 
|  吐瓦魯  |  TUV  |  Country  |  群島  |    |    | 
|  臺灣  |  TWN  |  Country  |  省 (Provinces)  |  郡 (Counties)  |  鎮區 (Townships)/當地鄰里 (Local Neighborhoods)  | 
|  坦尚尼亞  |  TZA  |  Country  |  省 (Provinces)/Mkoa  |  區 (Districts)/Wilaya  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  烏干達  |  UGA  |  Country  |  大區 (Regions)  |  區 (Districts)  |  郡 (Counties)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  烏克蘭  |  UKR  |  Country  |  Oblast/Mista/Avtonomna Respublika  |  Raions  |  居民點委員會 (Settlement Councils)/農村委員會 (Rural Council)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  美國本土外小島嶼  |  UMI  |  Country  |  群島/Atolls  |    |    | 
|  烏拉圭  |  URY  |  Country  |  省 (Departments)/Departamentos  |  Municipios/市鎮 (Municipalities)/Secciones  |  Segmentos/地方 (Localities)/城市區域 (Urban Areas)  | 
|  美國  |  USA  |  Country  |  邦 (States)/屬地 (Territories)  |  郡 (Counties)  |  MCD/CCD/郵政地區 (Post Localities)/市鎮 (Municipalities)  | 
|  烏茲別克  |  UZB  |  Country  |  大區 (Regions)/Viloyatlar  |  區 (Districts)/Tumanlar  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  梵蒂岡  |  VAT  |  Country  |    |    |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  聖文森及格瑞那丁  |  VCT  |  Country  |  堂區 (Parishes)  |  行政區 (Divisions)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  委內瑞拉  |  VEN  |  Country  |  州 (States)/Estados  |  市鎮 (Municipalities)/Municipios  |  地方 (Localities)/城市區域 (Urban Areas)/堂區 (Parish)/Parroquias  | 
|  英屬維京群島  |  VGB  |  Country  |  區 (Districts)  |    |    | 
|  越南  |  VNM  |  Country  |  省 (Provinces)/市 (Cities)  |  區 (Districts)  |  鄰區 (Wards)/地方 (Localities)/城市區域 (Urban Areas)  | 
|  萬那杜  |  VUT  |  Country  |  省 (Provinces)  |    |    | 
|  瓦利斯群島和富圖那群島  |  WLF  |  Country  |  區/Rayaumes  |    |    | 
|  薩摩亞  |  WSM  |  Country  |  區/Itūmālō  |  城鎮 (Towns)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  科索沃  |  XKS  |  Country  |  區 (Districts)  |  市鎮 (Municipalities)  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  葉門  |  YEM  |  Country  |  省 (Governorates)/Muhafazat  |  區 (Districts)/Muderiah  |  地方 (Localities)/城市區域 (Urban Areas)  | 
|  南非  |  ZAF  |  Country  |  省 (Provinces)  |  區 (Districts)  |  市鎮 (Municipalities)/鄰區 (Wards)  | 
|  尚比亞  |  ZMB  |  Country  |  省 (Provinces)  |  區 (Districts)  |  郊區 (Suburbs)/地方 (Localities)  | 
|  辛巴威  |  ZWE  |  Country  |  省 (Provinces)  |  區 (Districts)/Muderiah  |  地方 (Localities)/城市區域 (Urban Areas)  | 

以下是各國家/地區支援的郵遞區號格式清單，包括位數與範例郵遞區號。

**注意**  
郵政信箱郵遞區號不是支援的郵遞區號格式。也不支援在印度使用的聯邦屬地郵遞區號。


**支援的郵遞區號**  

| Country | 郵政格式 | 範例 | 
| --- | --- | --- | 
|  阿富汗  |  4 位數  |  1001  | 
|  阿爾巴尼亞  |  4 位數  |  1001  | 
|  阿爾及利亞  |  5 位數  |  01000  | 
|  美屬薩摩亞  |  5 位數  |  96799  | 
|  安道爾  |  5 位數  |  AD100  | 
|  安圭拉  |  6 位數  |  AI-2640  | 
|  阿根廷  |  5 位數  |  A4126  | 
|  亞美尼亞  |  2 位數  |  00  | 
|  澳洲  |  4 位數  |  0800  | 
|  奧地利  |  4 位數  |  1010  | 
|  亞塞拜然  |  2 位數  |  01  | 
|  汶萊和平之國  |  6 位數  |  BA1111  | 
|  巴林  |  4 位數  |  0101  | 
|  孟加拉  |  2 位數  |  10  | 
|  白俄羅斯  |  6 位數  |  202115  | 
|  比利時  |  4 位數  |  1000  | 
|  百慕達  |  4 位數  |  CR 01  | 
|  不丹  |  2 位數  |  11  | 
|  波士尼亞與赫塞哥維納  |  5 位數  |  70101  | 
|  巴西  |  5 位數  |  01001  | 
|  英屬印度洋領地  |  英數字元 – 5 位數  |  BBND 1  | 
|  英屬維京群島  |  4 位數  |  1110  | 
|  保加利亞  |  4 位數  |  1000  | 
|  維德角  |  4 位數  |  1101  | 
|  柬埔寨  |  2 位數  |  01  | 
|  加拿大  |  3 位數  |  A0A  | 
|  開曼群島  |  英數字元 – 7 位數  |  KY1-1000  | 
|  智利  |  3 位數  |  100  | 
|  中國  |  4 位數  |  0100  | 
|  哥倫比亞  |  4 位數  |  0500  | 
|  哥斯大黎加  |  5 位數  |  10101  | 
|  克羅埃西亞  |  5 位數  |  10000  | 
|  古巴  |  1 位數  |  1  | 
|  賽普勒斯  |  4 位數  |  1010  | 
|  捷克  |  5 位數  |  100 00  | 
|  剛果民主共和國  |  4 位數  |  1001  | 
|  丹麥  |  4 位數  |  1050  | 
|  多明尼加共和國  |  5 位數  |  10101  | 
|  厄瓜多  |  6 位數  |  010101  | 
|  埃及  |  2 位數  |  11  | 
|  薩爾瓦多  |  4 位數  |  1101  | 
|  愛沙尼亞  |  5 位數  |  10001  | 
|  福克蘭群島  |  英數字元 – 5 位數  |  FIQQ 1  | 
|  法羅群島  |  3 位數  |  100  | 
|  芬蘭  |  5 位數  |  00100  | 
|  法國  |  5 位數  |  01000  | 
|  法屬圭亞那  |  5 位數  |  97300  | 
|  法屬玻里尼西亞  |  5 位數  |  98701  | 
|  喬治亞  |  2 位數  |  01  | 
|  德國  |  5 位數  |  01067  | 
|  迦納  |  2 位數  |  A2  | 
|  直布羅陀  |  英數字元 – 5 位數  |  GX11 1  | 
|  希臘  |  5 位數  |  104 31  | 
|  格陵蘭  |  4 位數  |  3900  | 
|  瓜地洛普  |  5 位數  |  97100  | 
|  關島  |  5 位數  |  96910  | 
|  瓜地馬拉  |  5 位數  |  01001  | 
|  根西島  |  英數字元 – 4 位數、5 位數  |  GY1 1、GY10 1  | 
|  幾內亞比索  |  4 位數  |  1000  | 
|  海地  |  4 位數  |  1110  | 
|  梵諦岡  |  5 位數  |  00120  | 
|  宏都拉斯  |  2 位數  |  11  | 
|  匈牙利  |  4 位數  |  1007  | 
|  冰島  |  3 位數  |  101  | 
|  印度  |  6 位數  |  110001  | 
|  印尼  |  5 位數  |  10110  | 
|  伊朗  |  2 位數  |  11  | 
|  伊拉克  |  2 位數  |  10  | 
|  愛爾蘭  |  3 位數  |  A41  | 
|  曼島  |  英數字元 – 4 位數  |  IM1 1  | 
|  以色列  |  5 位數  |  10292  | 
|  義大利  |  5 位數  |  00010  | 
|  日本  |  7 位數  |  001-0010  | 
|  澤西島  |  英數字元 – 4 位數  |  JE2 3  | 
|  約旦  |  5 位數  |  11100  | 
|  哈薩克  |  4 位數  |  0100  | 
|  肯亞  |  1 位數  |  0  | 
|  吉里巴斯  |  6 位數  |  KI0101  | 
|  科索沃  |  5 位數  |  10000  | 
|  科威特  |  2 位數  |  00  | 
|  吉爾吉斯  |  4 位數  |  7200  | 
|  寮國  |  2 位數  |  01  | 
|  拉脫維亞  |  4 位數  |  1001  | 
|  賴索托  |  1 位數  |  1  | 
|  賴比瑞亞  |  2 位數  |  10  | 
|  列支敦斯登  |  4 位數  |  9485  | 
|  立陶宛  |  5 位數  |  00100  | 
|  盧森堡  |  4 位數  |  1110  | 
|  馬其頓  |  4 位數  |  1000  | 
|  馬達加斯加  |  3 位數  |  101  | 
|  馬拉威  |  3 位數  |  101  | 
|  馬來西亞  |  5 位數  |  01000  | 
|  馬爾地夫  |  2 位數  |  00  | 
|  馬爾他  |  3 位數  |  ATD  | 
|  馬紹爾群島  |  3 位數  |  969  | 
|  馬丁尼克  |  5 位數  |  97200  | 
|  模里西斯  |  3 位數  |  111  | 
|  馬約特島  |  5 位數  |  97600  | 
|  墨西哥  |  5 位數  |  01000  | 
|  密克羅尼西亞  |  5 位數  |  96941  | 
|  摩爾多瓦  |  4 位數  |  2001  | 
|  摩納哥  |  5 位數  |  98000  | 
|  蒙古  |  4 位數  |  1200  | 
|  蒙特內哥羅  |  5 位數  |  81000  | 
|  蒙特色拉特島  |  4 位數  |  1120  | 
|  摩洛哥  |  5 位數  |  10000  | 
|  莫三比克  |  4 位數  |  1100  | 
|  緬甸  |  2 位數  |  01  | 
|  納米比亞  |  3 位數  |  100  | 
|  尼泊爾  |  3 位數  |  101  | 
|  荷蘭  |  4 位數  |  1011  | 
|  新喀里多尼亞  |  5 位數  |  98800  | 
|  紐西蘭  |  4 位數  |  0110  | 
|  尼加拉瓜  |  3 位數  |  110  | 
|  尼日  |  4 位數  |  1000  | 
|  奈及利亞  |  4 位數  |  1002  | 
|  紐埃島  |  4 位數  |  9974  | 
|  諾福克島  |  4 位數  |  2899  | 
|  北馬里亞納群島  |  5 位數  |  96950  | 
|  挪威  |  4 位數  |  0010  | 
|  阿曼  |  1 位數  |  1  | 
|  巴基斯坦  |  2 位數  |  10  | 
|  帛琉  |  5 位數  |  96939  | 
|  巴勒斯坦  |  4 位數  |  P104  | 
|  巴布亞紐幾內亞  |  3 位數  |  111  | 
|  巴拉圭  |  6 位數  |  001001  | 
|  秘魯  |  5 位數  |  01000  | 
|  菲律賓  |  4 位數  |  1000  | 
|  皮特肯群  |  英數字元 – 5 位數  |  PCRN 1  | 
|  波蘭  |  5 位數  |  00-002  | 
|  葡萄牙  |  4 位數  |  1000  | 
|  波多黎各  |  5 位數  |  00601  | 
|  羅馬尼亞  |  6 位數  |  010011  | 
|  俄羅斯  |  6 位數  |  101000  | 
|  留尼旺  |  5 位數  |  97400  | 
|  聖巴泰勒米島  |  5 位數  |  97133  | 
|  聖赫勒拿島、亞森欣島和特里斯坦達庫尼亞島  |  英數字元 – 5 位數  |  ASCN 1  | 
|  聖露西亞  |  7 位數  |  LC01 101  | 
|  法屬聖馬丁  |  5 位數  |  97150  | 
|  聖皮埃赫及密克隆  |  5 位數  |  97500  | 
|  聖文森及格瑞那丁  |  4 位數  |  VC01  | 
|  薩摩亞  |  2 位數  |  11  | 
|  聖馬利諾  |  5 位數  |  47890  | 
|  沙烏地阿拉伯  |  2 位數  |  12  | 
|  塞內加爾  |  5 位數  |  10000  | 
|  塞爾維亞  |  5 位數  |  11000  | 
|  新加坡  |  6 位數  |  018906  | 
|  斯洛伐克  |  5 位數  |  010 01  | 
|  斯洛維尼亞  |  4 位數  |  1000  | 
|  南非  |  4 位數  |  0001  | 
|  南喬治亞和南桑威奇群島  |  英數字元 – 5 位數  |  SIQQ 1  | 
|  南韓  |  5 位數  |  01000  | 
|  西班牙  |  5 位數  |  01001  | 
|  斯里蘭卡  |  2 位數  |  00  | 
|  蘇丹  |  2 位數  |  11  | 
|  斯瓦巴和揚馬延  |  4 位數  |  8099  | 
|  史瓦濟蘭  |  1 位數  |  H  | 
|  瑞典  |  5 位數  |  111 15  | 
|  瑞士  |  4 位數  |  1000  | 
|  臺灣  |  3 位數  |  100  | 
|  塔吉克  |  4 位數  |  7340  | 
|  坦尚尼亞聯合共和國  |  3 位數  |  111  | 
|  泰國  |  5 位數  |  10100  | 
|  東帝汶  |  4 位數  |  TL10  | 
|  千里達及托巴哥  |  2 位數  |  10  | 
|  突尼西亞  |  4 位數  |  1000  | 
|  土耳其  |  5 位數  |  01010  | 
|  土庫曼  |  3 位數  |  744  | 
|  英屬土克斯及開科斯群島  |  英數字元 – 5 位數  |  TKCA 1  | 
|  美屬維京群島  |  5 位數  |  00802  | 
|  烏克蘭  |  3 位數、5 位數  |  070、01001  | 
|  英國  |  英數字元 – 2 到 5 位數  |  B1、AL1、AB10、AB10 1  | 
|  美國  |  5 位數  |  00001  | 
|  烏拉圭  |  5 位數  |  11000  | 
|  烏茲別克  |  4 位數  |  1000  | 
|  委內瑞拉  |  4 位數  |  0000  | 
|  越南  |  5 位數  |  01106  | 
|  瓦利斯和富圖那  |  5 位數  |  98600  | 
|  尚比亞  |  5 位數  |  10100  | 

# 使用不支援的日期或自訂日期
<a name="using-unsupported-dates"></a>

Amazon Quick Sight 原生支援有限數量的日期格式。不過，您無法一直控制提供給您的資料格式。當您的資料包含不支援格式的日期時，您可以告知 Amazon Quick Sight 如何解譯它。

此做法為編輯資料集，然後將資料欄的格式從文字或數字變更為日期。在進行此變更之後會出現一個畫面，讓您可以輸入格式。例如，如果您使用的是關聯式資料來源，則可以對包含 '09-19-2017' 的文字欄位指定 MM-dd-yyyy，所以它會解譯為 2017-09-19T00:00:00.000Z。如果您使用的是非關聯式資料來源，則可以從數字欄位或文字欄位開始，執行相同的操作。

Amazon Quick Sight 僅支援關聯式 (SQL) 來源到目前為止的文字。

如需支援之日期格式的詳細資訊，請參閱[支援的日期格式](supported-data-types-and-values.md#supported-date-formats)。

使用此程序來協助 Amazon Quick Sight 了解不同格式的日期。

1. 對於包含不支援之日期格式的資料集，請編輯資料，如下所示。對於包含日期時間資料的欄位，請將資料類型從文字變更為日期。此做法為選擇資料預覽中資料欄名稱下方的各式各樣資料類型圖示。
**注意**  
不是 Unix epoch 日期時間的整數日期無法按原狀運作。例如，不支援這些格式做為整數：`MMddyy`、`MMddyyyy`、`ddMMyy`、`ddMMyyyy` 和 `yyMMdd`。解決方法為首先將它們變更為文字格式。確定您的所有資料列都包含六個數字 (而非五個數字)。然後，將文字資料類型變更為日期時間。  
如需 Unix epoch 日期時間的詳細資訊，請參閱[epochDate](epochDate-function.md)。

   當您將資料類型變更為日期時，**Edit date format (編輯日期格式)** 畫面即會出現。

1. 輸入您的日期格式，指出哪些部分是月、日、年或時間。格式會區分大小寫。

1. 選擇**驗證**，以確保 Amazon Quick Sight 現在可使用您指定的格式解譯您的日期時間資料。會從資料集略過和省略未通過驗證的資料列。

1. 當您對結果感到滿意時，請選擇 **Update (更新)**。否則，選擇 **Close (關閉)**。

# 將唯一金鑰新增至 Amazon Quick Sight 資料集
<a name="set-unique-key"></a>

快速作者可以在資料準備期間設定 Quick Sight 資料集的唯一索引鍵資料欄。此唯一索引鍵可做為資料集的全域排序索引鍵，並最佳化資料表視覺效果的查詢產生。當使用者在 Quick Sight 中建立資料表視覺效果，並將唯一索引鍵資料欄新增至值欄位集時，資料會從左到右排序至唯一索引鍵資料欄。唯一索引鍵資料欄右側的所有資料欄會在排序順序中予以忽略。不包含唯一索引鍵的資料表會根據資料欄出現在資料集中的順序進行排序。

下列限制適用於唯一索引鍵：
+ 僅未彙總的資料表支援唯一索引鍵。
+ 如果資料集資料欄用於資料欄層級安全性 (CLS)，則資料欄亦無法用作唯一索引鍵。

使用下列程序為 Amazon Quick Sight 中的資料集指定唯一金鑰。

**設定唯一索引鍵**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 選擇**資料**。

1. 執行下列動作之一：

   1. 導覽至您想要新增唯一索引鍵的資料集，選擇資料集旁的省略符號 (三個點)，然後選擇**編輯**。

   1. 選擇**新增**，然後選擇**資料集**。選擇您要新增的資料集，然後選擇**編輯資料來源**。如需在 Amazon Quick Sight 中建立新資料集的詳細資訊，請參閱 [建立資料集](creating-data-sets.md)。

1. 資料集的資料準備頁面將會開啟。導覽至**欄位**窗格，並找到您想要設定為唯一索引鍵的欄位。

1. 選擇欄位名稱旁的省略符號 (三個點)，然後選擇**設定為唯一索引鍵**。

建立唯一索引鍵後，欄位旁會顯示索引鍵圖示，表明此欄位現在是資料集的唯一索引鍵。當您儲存和發布資料集時，唯一索引鍵組態會套用至該資料集以及使用該資料集建立的所有儀表板與分析。若要從資料集中移除唯一索引鍵，請導覽至資料集的資料準備頁面，選擇唯一索引鍵欄位旁的省略符號，然後選擇**作為唯一索引鍵移除**。從資料集移除唯一索引鍵後，您可以將其他的欄位指定為唯一索引鍵。

# 將 Amazon SageMaker AI 模型與 Amazon Quick Sight 整合
<a name="sagemaker-integration"></a>

**注意**  
您不需要任何機器學習 (ML) 的技術經驗，即可撰寫使用 Amazon Quick Sight 中採用 ML 功能的分析和儀表板。

您可以使用 Amazon SageMaker AI 機器學習模型來擴增 Amazon Quick Enterprise 版資料。您可以在從 Quick 支援的任何資料來源SPICE匯入的 中存放的資料上執行推論。如需支援的資料來源的完整清單，請參閱 [支援的資料來源](supported-data-sources.md)。

使用 Quick with SageMaker AI 模型可以節省您管理資料移動和編寫程式碼所花費的時間。這些結果針對評估模型，以及 (當您滿意結果時) 用於與決策制定者分享都很有用。您可以在建立模型後立即開始。這樣做可以顯示您的資料科學家預先建立的模型，並可讓您將資料科學套用於資料集。然後，您可以在預測儀表板中分享這些深入解析。透過快速無伺服器方法，程序可無縫擴展，因此您不需要擔心推論或查詢容量。

Amazon Quick 支援使用迴歸和分類演算法的 SageMaker AI 模型。您可以套用此功能，取得幾乎所有商業使用案例的預測。有些範例包括預測客戶流失的可能性、員工流失、評分銷售潛在客戶，以及評估信用風險。若要使用 Quick 提供預測，輸入和輸出的 SageMaker AI 模型資料必須是表格格式。在多類別或多標籤的分類使用案例中，每個輸出資料欄都必須包含單一值。Quick 不支援單一資料欄中的多個值。

**Topics**
+ [

## SageMaker AI 整合的運作方式
](#sagemaker-how-it-works)
+ [

## 產生的成本 (整合本身無額外成本)
](#sagemaker-cost-of-use)
+ [

## 使用指引
](#sagemaker-usage-guidelines)
+ [

## 定義結構描述檔案
](#sagemaker-schema-file)
+ [

## 將 SageMaker AI 模型新增至 Quick Sight 資料集
](#sagemaker-using)
+ [

# 使用 SageMaker AI Canvas 建置預測模型
](sagemaker-canvas-integration.md)

## SageMaker AI 整合的運作方式
<a name="sagemaker-how-it-works"></a>

 一般來說，此程序的運作方式如下：

1. Amazon Quick 管理員新增 Quick 存取 SageMaker AI 的許可。若要這樣做，請從**管理快速**頁面開啟**安全與許可**設定。前往**快速存取 AWS 服務**，並新增 SageMaker AI。

   當您新增這些許可時，Quick 會新增至 AWS Identity and Access Management (IAM) 角色，該角色提供列出您 AWS 帳戶中所有 SageMaker AI 模型的存取權。它也提供執行名稱前置詞為 `quicksight-auto-generated-` 的 SageMaker AI 任務的許可。

1. 建議您連線至具有推論管道的 SageMaker AI 模型，因為其會自動執行資料預先處理。如需詳細資訊，請參閱《SageMaker AI 開發人員指南》**中的[部署推論管道](https://docs.aws.amazon.com/sagemaker/latest/dg/inference-pipelines.html)一節。

1. 識別資料和您要一起使用的預先訓練模型之後，模型的擁有者會建立並提供結構描述檔案。此 JSON 檔案是與 SageMaker AI 簽訂的合約。它提供有關欄位、資料類型、資料欄順序、輸出和模型預期之設定的中繼資料。選用設定元件提供要用於任務的執行個體大小和計算執行個體的計數。

   如果您是建置該模型的資料科學家，請使用下列格式建立此資料結構描述檔案。如果您是模型的使用者，請向模型的擁有者取得結構描述檔案。

1. 在 Quick 中，首先使用您要進行預測的資料建立新的資料集。如果您正在上傳檔案，您可以在上傳設定畫面上新增 SageMaker AI 模型。否則，您可以在資料準備頁面上新增模型。

   在繼續之前，請確認資料集和模型之間的對應。

1. 將資料匯入資料集之後，輸出欄位會包含從 SageMaker AI 傳回的資料。這些欄位的使用方式與您使用其他欄位的方式相同，請遵循 [使用指引](#sagemaker-usage-guidelines) 中所述的指導方針。

   當您執行 SageMaker AI 整合時，Quick 會將請求傳遞給 SageMaker AI，以使用推論管道執行批次轉換任務。快速啟動佈建和部署您 AWS 帳戶中所需的執行個體。當處理完成時，這些執行個體會被關閉並終止。運算容量只有在處理模型時才會產生成本。

   為了讓您更輕鬆地識別它們，快速將其所有 SageMaker AI 任務命名為字首 `quicksight-auto-generated-`。

1. 推斷的輸出會儲存在 SPICE 中，並附加到資料集。一旦推論完成，您就可以使用資料集來利用預測資料建立視覺效果和儀表板。

1. 每次儲存資料集時，都會開始重新整理資料。您可以重新整理 SPICE 資料集，以手動開始資料的重新整理程序，或者您可以將它排程為定期執行。在每次資料重新整理期間，系統會自動呼叫 SageMaker AI 批次轉換，以更新具有新資料的輸出欄位。

   您可以使用 Amazon Quick Sight SPICE 擷取 API 操作來控制資料重新整理程序。如需使用這些 API 操作的詳細資訊，請參閱 [Amazon Quick Sight API 參考](https://docs.aws.amazon.com/quicksight/latest/APIReference/qs-api-overview.html)。

## 產生的成本 (整合本身無額外成本)
<a name="sagemaker-cost-of-use"></a>

使用此功能本身不需支付額外的費用。您的成本包括下列各項：
+ 透過 SageMaker AI 模型部署的成本，只有在模型執行時才會產生成本。儲存資料集 (在建立或編輯資料集之後) 或重新整理資料之後，就會開始資料擷取程序。如果資料集具有推斷欄位，則此程序包括呼叫 SageMaker AI。成本會在您的快速訂閱所在的相同 AWS 帳戶中產生。
+ 您的快速訂閱成本如下所示：
  + 在 Quick () 的記憶體內計算引擎中存放資料的成本SPICE。如果您要新增資料至 SPICE，您可能需要購買足夠的 SPICE 容量來容納它。
  + 適用於建置資料集之作者或管理員的快速訂閱。
  + 檢視者 (讀者) 存取互動式儀表板的按工作階段付費費用。

## 使用指引
<a name="sagemaker-usage-guidelines"></a>

在 Amazon Quick 中，下列使用準則適用於此 Enterprise Edition 功能：
+ 模型的處理會發生在 SPICE 中。因此，它僅套用至儲存在 SPICE 中的資料集。該程序目前支援每個資料集最多 5 億個資料列。
+ 只有快速管理員或作者可以使用 ML 模型增強資料集。讀者只能在他們是儀表板的一部分時檢視結果。
+ 每個資料集僅可以使用確切一個 ML 模型。
+ 輸出欄位不能用來計算新欄位。
+ 資料集不能依與模型整合的欄位篩選。換句話說，如果您的資料集欄位目前映射至 ML 模型，則您無法依該欄位篩選。

在 SageMaker AI 中，下列使用準則適用於您與 Amazon Quick Sight 搭配使用的預先訓練模型：
+ 建立模型時，請將其與適當 IAM 角色的 Amazon Resource Name (ARN) 產生關聯。SageMaker AI 模型的 IAM 角色需要存取 Amazon Quick Sight 使用的 Amazon S3 儲存貯體。
+ 確定您的模型支援輸入和輸出的 .csv 檔案。確定您的資料是表格格式。
+ 提供包含模型相關中繼資料的結構描述檔案，包括輸入和輸出欄位的清單。目前，您必須手動建立此結構描述檔案。
+ 考量完成推論所需的時間，這取決於許多因素。其中包括模型的複雜性、資料量以及定義的計算容量。完成推論可能需要幾分鐘到幾個小時。Amazon Quick Sight 會將所有資料擷取和推論任務限制在最多 10 小時。若要減少執行推論所需的時間，請考慮增加執行個體大小或執行個體的數量。
+ 目前，您只能使用批次轉換來與 SageMaker AI 整合，而不能與即時資料整合。您無法使用 SageMaker AI 端點。

## 定義結構描述檔案
<a name="sagemaker-schema-file"></a>

在搭配 Quick Sight 資料使用 SageMaker AI 模型之前，請建立 JSON 結構描述檔案，其中包含 Amazon Quick Sight 處理模型所需的中繼資料。Amazon Quick 作者或管理員會在設定資料集時上傳結構描述檔案。

結構描述欄位的定義如下。除非在下列說明中有指定，否則所有欄位均為必填欄位。屬性區分大小寫。

 *inputContentType*   
此 SageMaker AI 模型對輸入資料預期的內容類型。此項目唯一支援的值是 `"text/csv"`。Quick Sight 不包含您新增至輸入檔案的任何標頭名稱。

 *outputContentType*   
由您想要使用的 SageMaker AI 模型產生的輸出的內容類型。此項目唯一支援的值是 `"text/csv"`。

 *input*   
模型預期在輸入資料中的功能清單。Quick Sight 會以完全相同的順序產生輸入資料。此清單包含下列屬性：  
+  *name*：資料欄的名稱。如果可能，請讓此名稱其與 QuickSight 資料集中對應欄的名稱相同。此屬性限制為 100 個字元。
+  *type*：此資料欄的資料類型。此屬性會採用值 `"INTEGER"`、`"STRING"` 和 `"DECIMAL"`。
+  *nullable*：(選用) 欄位的可為 Null 性。預設值為 `true`。如果您將 `nullable`設定為 `false`，Quick Sight 會在呼叫 SageMaker AI 之前捨棄不包含此值的資料列。這麼做有助於避免造成 SageMaker AI 因遺失必要的資料而失敗。

 *output*   
SageMaker AI 模型產生的輸出資料欄的清單。Quick Sight 預期這些欄位的順序完全相同。此清單包含下列屬性：  
+  *name* – 此名稱會成為在 Quick Sight 中建立之對應新資料欄的預設名稱。您可以覆寫 Quick Sight 中在此處指定的名稱。此屬性限制為 100 個字元。
+  *type*：此資料欄的資料類型。此屬性會採用值 `"INTEGER"`、`"STRING"` 和 `"DECIMAL"`。

 *instanceTypes*   
SageMaker AI 可以佈建以執行轉換任務的 ML 執行個體類型的清單。清單會提供給 Amazon Quick 使用者以供選擇。此清單僅限於 SageMaker AI 支援的類型。如需支援類型的詳細資訊，請參閱《SageMaker AI 開發人員指南》**中的 [TransformResources](https://docs.aws.amazon.com/sagemaker/latest/dg/API_TransformResources.html) 一節。

 *defaultInstanceType*   
（選用） 在 Quick Sight 的 SageMaker AI 精靈中顯示為預設選項的執行個體類型。在 `instanceTypes` 中包含此執行個體類型。

 *instanceCount*   
(選用) 執行個體計數會定義 SageMaker AI 要佈建以執行轉換任務的所選執行個體數目。此值必須為正整數。

 *description*   
此欄位可讓擁有 SageMaker AI 模型的人員與在 Quick Sight 中使用此模型的人員進行通訊。使用此欄位可提供有關成功使用此模型的提示。例如，此欄位可以包含有關選取有效的執行個體類型，以根據資料集大小從 `instanceTypes` 中的清單中選擇的資訊。此欄位限制為 1,000 個字元。

 *version*   
結構描述的版本，例如 "`1.0"`。

下列範例會顯示結構描述檔案中 JSON 的結構。

```
{
        "inputContentType": "CSV",
        "outputContentType": "CSV",
        "input": [
            {
                "name": "buying",
                "type": "STRING"
            },
            {
                "name": "maint",
                "type": "STRING"
            },
            {
                "name": "doors",
                "type": "INTEGER"
            },
            {
                "name": "persons",
                "type": "INTEGER"
            },
            {
                "name": "lug_boot",
                "type": "STRING"
            },
            {
                "name": "safety",
                "type": "STRING"
            }
        ],
        "output": [
            {
                "name": "Acceptability",
                "type": "STRING"
            }
        ],
        "description": "Use ml.m4.xlarge instance for small datasets, and ml.m4.4xlarge for datasets over 10 GB",
        "version": "1.0",
        "instanceCount": 1,
        "instanceTypes": [
            "ml.m4.xlarge",
            "ml.m4.4xlarge"
        ],
        "defaultInstanceType": "ml.m4.xlarge"
    }
```

結構描述檔案的結構與 SageMaker AI 所提供的範例中使用的模型種類有關。

## 將 SageMaker AI 模型新增至 Quick Sight 資料集
<a name="sagemaker-using"></a>

依照下列程序，您可以將預先訓練的 SageMaker AI 模型新增至資料集，以便在分析和儀表板中使用預測資料。

開始之前，請先準備好下列項目：
+ 您要用來建置資料集的資料。
+ 要用來擴增資料集的 SageMaker AI 模型名稱。
+ 模型的結構描述。此結構描述包括欄位名稱對應和資料類型。如果它還包含執行個體類型和要使用的執行個體數量的建議設定，這會很有幫助。

**使用 SageMaker AI 擴充 Amazon Quick Sight 資料集**

1. 從開始頁面建立新的資料集，方法是選擇**資料**，然後選擇**新增資料集**。

   您也可以編輯現有的資料集。

1. 在資料準備畫面上選擇**使用 SageMaker 擴增**。

1. 對於 **Select your model (選取您的模型)**，選擇下列設定：
   + **模型**：選擇要用來推斷欄位的 SageMaker AI 模型。
   + **名稱**：提供模型的描述名稱。
   + **結構描述**：上傳為模型提供的 JSON 結構描述檔案。
   + **進階設定**：QuickSight 會根據您的資料集建議選取的預設值。您可以使用特定的執行期設定來平衡任務的速度和成本。為此，請在**執行個體類型**中輸入 SageMaker AI ML 執行個體類型，在**計數**中輸入執行個體數量。

   選擇 **Next** (下一步) 繼續。

1. 對於 **Review inputs (檢閱輸入)**，請檢閱與您的資料集對應的欄位。Quick Sight 會嘗試自動將結構描述中的欄位映射至資料集中的欄位。如果對應需要調整，您可以在此處進行變更。

   選擇 **Next** (下一步) 繼續。

1. 針對**檢閱輸出**，請檢視新增至您的資料集的欄位。

   選擇 **Save and prepare data (儲存並準備資料)** 以確認您的選擇。

1. 若要重新整理資料，請選擇要檢視詳細資料的資料集。然後選擇 **Refresh Now (立即重新整理)** 以手動重新整理資料，或選擇 **Schedule refresh (排程重新整理)** 以設定定期的重新整理間隔。在每次資料重新整理期間，系統會自動執行 SageMaker AI 批次轉換任務，以更新具有新資料的輸出欄位。

# 使用 SageMaker AI Canvas 建置預測模型
<a name="sagemaker-canvas-integration"></a>

Amazon Quick 作者可以將資料匯出至 SageMaker AI Canvas，以建置可傳回 Quick 的 ML 模型。作者可以使用這些機器學習模型透過預測分析來擴增其資料集，進而將資料集用於建立分析和儀表板。

**先決條件**
+ 與 IAM Identity Center 整合的快速帳戶。如果您的快速帳戶未與 IAM Identity Center 整合，請建立新的快速帳戶，然後選擇**使用已啟用 IAM Identity Center 的應用程式**做為身分提供者。
  + 如需 IAM Identity Center 的詳細資訊，請參閱 [Getting started](https://docs.aws.amazon.com/singlesignon/latest/userguide/getting-started.html) 中的內容。
  + 若要進一步了解如何將 Quick 與 IAM Identity Center 整合，請參閱 [使用 IAM Identity Center 設定 Amazon Quick 帳戶](setting-up-sso.md#sec-identity-management-identity-center)。
  + 若要將資產從現有的快速帳戶匯入至與 IAM Identity Center 整合的新快速帳戶，請參閱[資產套件操作](https://docs.aws.amazon.com/quicksight/latest/developerguide/asset-bundle-ops.html)。
+ 與 IAM Identity Center 整合的新 SageMaker AI 網域。如需使用 IAM Identity Center 加入 SageMaker AI 網域的詳細資訊，請參閱 [Onboard to SageMaker AI Domain using IAM Identity Center](https://docs.aws.amazon.com/sagemaker/latest/dg/onboard-sso-users.html) 中的內容。

**Topics**
+ [

## 從 Amazon Quick Sight 在 SageMaker AI Canvas 中建置預測模型
](#sagemaker-canvas-integration-create-model)
+ [

## 使用 SageMaker AI Canvas 模型建立資料集
](#sagemaker-canvas-integration-create-dataset)
+ [

## 考量事項
](#sagemaker-canvas-integration-considerations)

## 從 Amazon Quick Sight 在 SageMaker AI Canvas 中建置預測模型
<a name="sagemaker-canvas-integration-create-model"></a>

**在 SageMaker AI Canvas 中建置預測模型**

1. 登入 Amazon Quick 並導覽至您要為其建立預測模型的表格式資料表或樞紐分析表。

1. 開啟視覺化效果選單並選擇**建置預測模型**。

1. 在顯示的**在 SageMaker AI Canvas 中建置預測模型**快顯視窗中，檢視顯示的資訊，然後選擇**將資料匯出至 SAGEMAKER CANVAS**。

1. 在顯示的**匯出**窗格中，選擇匯出完成後**前往 SAGEMAKER CANVAS** 以前往 SageMaker AI Canvas 主控台。

1. 在 SageMaker AI Canvas 中，使用您從 Quick Sight 匯出的資料建立預測模型。您可以選擇跟隨引導式導覽來協助您建置預測模型，也可以略過導覽按自己的步調進行。如需在 SageMaker AI Canvas 中建置預測模型的詳細資訊，請參閱 [Build a model](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas-build-model-how-to.html#canvas-build-model-numeric-categorical) 中的內容。

1. 將預測模型傳回 Quick Sight。如需將模型從 SageMaker AI Canvas 傳送至 Amazon Quick Sight 的詳細資訊，請參閱[將模型傳送至 Amazon Quick Sight](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas-send-model-to-quicksight.html)。

## 使用 SageMaker AI Canvas 模型建立資料集
<a name="sagemaker-canvas-integration-create-dataset"></a>

在 SageMaker AI Canvas 中建立預測模型並將其傳回 Quick Sight 後，請使用新模型建立新的資料集，或將其套用至現有的資料集。

**將預測欄位新增至資料集**

1. 開啟快速主控台，選擇左側**的資料**，然後選擇**資料集**索引標籤。

1. 上傳新資料集或選擇現有資料集。

1. 選擇**編輯**。

1. 在資料集的資料準備頁面上，選擇**新增**，然後選擇**新增預測欄位**，以開啟**使用 SageMaker AI 擴增**模態對話方塊。

1. 針對**模型**，從 SageMaker AI Canvas 選擇您傳送至 Quick Sight 的模型。結構描述檔案會自動填入**進階設定**窗格中。檢閱輸入，然後選擇**下一步**。

1. 在**檢視輸出**窗格中，輸入您在 SageMaker AI Canvas 中建立的模型所針對的資料欄的欄位名稱和描述。

1. 完成後，選擇**準備資料**。

1. 選擇**準備資料**後，您將被重新導向到資料集頁面。若要發布新資料集，請選擇**發布並視覺化**。

當您發布使用 SageMaker AI Canvas 模型的新資料集時，資料會匯入 SPICE 中，並在 SageMaker AI 中開始批次推論任務。這些程序最長可能需要 10 分鐘的時間才能完成。

## 考量事項
<a name="sagemaker-canvas-integration-considerations"></a>

下列限制適用於使用 Quick Sight 資料建立 SageMaker AI Canvas 模型。
+ 用於將資料傳送至 SageMaker AI Canvas 的**建置預測模型**選項僅適用於資料表和資料表式樞紐分析表視覺化效果。資料表或樞紐分析表視覺化效果必須具有 2 到 1,000 個欄位，以及至少 500 列。
+ 當您為資料集新增預測欄位時，包含整數或地理資料類型的資料集將會遇到結構描述映射錯誤。若要解決此問題，請從資料集中移除整數或地理資料類型，或將它們轉換為新的資料類型。

# 準備資料集範例
<a name="preparing-data-sets"></a>

您可以準備任何資料集內的資料，使其更適用於分析，例如變更欄位名稱或新增計算欄位。若為資料庫資料集，您也可以判定透過指定 SQL 查詢或聯結兩個或多個資料表所使用的資料。

請使用下列主題來了解如何準備資料集。

**Topics**
+ [

# 根據檔案資料準備資料集
](prepare-file-data.md)
+ [

# 根據 Salesforce 資料準備資料集
](prepare-salesforce-data.md)
+ [

# 根據資料庫資料準備資料集
](prepare-database-data.md)

# 根據檔案資料準備資料集
<a name="prepare-file-data"></a>

請透過以下程序，根據來自您的本機網路或 Amazon S3 的文字或 Microsoft Excel 檔案來準備資料集。

**根據來自本機網路或 S3 的文字或 Microsoft Excel 檔案準備資料集**

1. 選擇以下其中一個選項來開啟檔案資料集進行資料準備：
   + 建立新的本機檔案資料集，然後選擇 **Edit/Preview data (編輯/預覽資料)**。如需從本機文字檔案建立新資料集的詳細資訊，請參閱[使用本機文字檔案建立資料集](https://docs.aws.amazon.com/quicksight/latest/user/create-a-data-set-file.html)。如需從 Microsoft Excel 檔案建立新資料集的詳細資訊，請參閱[使用 Microsoft Excel 檔案建立資料集](https://docs.aws.amazon.com/quicksight/latest/user/create-a-data-set-excel.html)。
   + 建立新的 Amazon S3 資料集，然後選擇**編輯/預覽資料**。如需使用新的 Amazon S3 資料來源建立新的 Amazon S3 資料集的詳細資訊，請參閱[使用 Amazon S3 檔案建立資料集](https://docs.aws.amazon.com/quicksight/latest/user/create-a-data-set-s3.html)。如需使用現有 Amazon S3 資料來源建立新 Amazon S3 資料集的詳細資訊，請參閱[使用現有 Amazon S3 資料來源建立資料集](https://docs.aws.amazon.com/quicksight/latest/user/create-a-data-set-existing-s3.html)。
   + 從分析頁面或**您的資料集**頁面，開啟現有的 Amazon S3、文字檔案或 Microsoft Excel 資料集進行編輯。如需開啟現有資料集以進行資料準備的詳細資訊，請參閱[編輯資料集](https://docs.aws.amazon.com/quicksight/latest/user/edit-a-data-set.html)。

1. (選用) 在資料準備頁面上，將新名稱輸入至應用程式列上的資料集名稱方塊。

   這個名稱預設為本機檔案的檔案名稱。例如，它會預設為 **Group 1** (若為 Amazon S3 檔案)。

1. 檢閱檔案上傳設定，並在必要時更正它們。如需檔案上傳設定的詳細資訊，請參閱[選擇檔案上傳設定](https://docs.aws.amazon.com/quicksight/latest/user/choosing-file-upload-settings.html)。
**重要**  
如果您想要變更上傳設定，請先進行此變更，然後再對資料集進行任何其他變更。新的上傳設定會導致 Amazon Quick Sight 重新匯入檔案。此程序會覆寫您的所有其他變更。

1. 執行以下一個或多個動作來準備資料：
   + [選取欄位](https://docs.aws.amazon.com/quicksight/latest/user/selecting-fields.html)
   + [編輯欄位名稱和描述](https://docs.aws.amazon.com/quicksight/latest/user/changing-a-field-name.html)
   + [變更欄位資料類型](https://docs.aws.amazon.com/quicksight/latest/user/changing-a-field-data-type.html)
   + [新增計算欄位](https://docs.aws.amazon.com/quicksight/latest/user/adding-a-calculated-field-analysis.html)
   + [在 Amazon Quick Sight 中篩選資料](https://docs.aws.amazon.com/quicksight/latest/user/adding-a-filter.html)

1. 請檢查 [SPICE](spice.md) 指標，來查看您是否有足夠的容量來匯入資料集。檔案資料集會自動載入至 SPICE。當您選擇 **Save & visualize (儲存並視覺化)** 或 **Save (儲存)** 時，匯入即會發生。

   如果您無權存取足夠的 SPICE 容量，則可以使用以下其中一個選項，使資料集變得更小：
   + 套用篩選條件來限制資料列數目。
   + 選取要從資料集移除的欄位。
**注意**  
SPICE 指標不會更新，以指出您藉由移除欄位或篩選資料節省了多少空間。它持續反映來自前次匯入的 SPICE 用量。

1. 選擇 **Save (儲存)** 來儲存您的工作，或選擇 **Cancel (取消)** 來取消它。

   您也可能看到 **Save & visualize (儲存並視覺化)**。此選項會根據您開始的畫面而出現。如果缺少此選項，您可以從資料集畫面開始，建立新的視覺化。

## 根據 Microsoft Excel 檔案準備資料集
<a name="prepare-excel-file-data"></a>

透過以下程序來準備 Microsoft Excel 資料集。

**準備 Microsoft Excel 資料集**

1. 選擇以下其中一個選項來開啟文字檔案資料集進行準備：
   + 建立新的 Microsoft Excel 資料集，然後選擇 **Edit/Preview data (編輯/預覽資料)**。如需建立新 Excel 資料集的詳細資訊，請參閱[使用 Microsoft Excel 檔案建立資料集](https://docs.aws.amazon.com/quicksight/latest/user/create-a-data-set-excel.html)。
   + 開啟現有的 Excel 資料集進行編輯。您可以從分析頁面或 **Your Data Sets (您的資料集)** 頁面執行此操作。如需開啟現有資料集以進行資料準備的詳細資訊，請參閱[編輯資料集](https://docs.aws.amazon.com/quicksight/latest/user/edit-a-data-set.html)。

1. (選用) 在資料準備頁面上，將名稱輸入至應用程式列中的資料集名稱方塊。如果您不重新命名資料集，則其名稱會預設為 Excel 檔案名稱。

1. 檢閱檔案上傳設定，並在必要時更正它們。如需檔案上傳設定的詳細資訊，請參閱[選擇檔案上傳設定](https://docs.aws.amazon.com/quicksight/latest/user/choosing-file-upload-settings.html)。
**重要**  
如果需要變更上傳設定，請先進行此變更，然後再對資料集進行任何其他變更。變更上傳設定會導致 Amazon Quick Sight 重新匯入檔案。此程序會覆寫您目前所做的任何變更。

1. (選用) 變更工作表選擇。

1. (選用) 變更範圍選擇。為此，請從右上角登入名稱下方的資料集選單中，開啟**上傳設定**。

1. 執行以下一個或多個動作來準備資料：
   + [選取欄位](https://docs.aws.amazon.com/quicksight/latest/user/selecting-fields.html)
   + [編輯欄位名稱和描述](https://docs.aws.amazon.com/quicksight/latest/user/changing-a-field-name.html)
   + [變更欄位資料類型](https://docs.aws.amazon.com/quicksight/latest/user/changing-a-field-data-type.html)
   + [新增計算欄位](https://docs.aws.amazon.com/quicksight/latest/user/adding-a-calculated-field-analysis.html)
   + [在 Quick Sight 中篩選資料](https://docs.aws.amazon.com/quicksight/latest/user/adding-a-filter.html)

1. 請檢查 [SPICE](spice.md) 指標，來查看您是否有匯入資料集的足夠空間。Amazon Quick Sight 必須匯入 Excel 資料集到 SPICE。當您選擇 **Save & visualize (儲存並視覺化)** 或 **Save (儲存)** 時，此匯入即會發生。

   如果您沒有足夠的 SPICE 容量，則可以選擇使用以下其中一種方法，使資料集變得更小：
   + 套用篩選條件來限制資料列數目。
   + 選取要從資料集移除的欄位。
   + 定義範圍更小的資料來匯入。
**注意**  
SPICE 指標不會更新以反映您的變更，直到您載入它們為止。它會顯示來自前次匯入的 SPICE 用量。

1. 選擇 **Save (儲存)** 來儲存您的工作，或選擇 **Cancel (取消)** 來取消它。

   您也可能看到 **Save & visualize (儲存並視覺化)**。此選項會根據您開始的畫面而出現。如果缺少此選項，您可以從資料集畫面開始，建立新的視覺化。

# 根據 Salesforce 資料準備資料集
<a name="prepare-salesforce-data"></a>

透過以下程序來準備 Salesforce 資料集。

**準備 Salesforce 資料集**

1. 選擇以下其中一個選項來開啟 Salesforce 資料集進行準備：
   + 建立新的 Salesforce 資料集，然後選擇 **Edit/Preview data (編輯/預覽資料)**。如需使用新的 Salesforce 資料來源建立新的 Salesforce 資料集的詳細資訊，請參閱[從 Salesforce 建立資料集](https://docs.aws.amazon.com/quicksight/latest/user/create-a-data-set-salesforce.html)。如需使用現有 Salesforce 資料來源建立新 Salesforce 資料集的詳細資訊，請參閱[使用現有 Salesforce 資料來源建立資料集](https://docs.aws.amazon.com/quicksight/latest/user/create-a-data-set-existing-salesforce.html)。
   + 從分析頁面或 **Your Data Sets (您的資料集)** 頁面，開啟現有的 Salesforce 資料集進行編輯。如需開啟現有資料集以進行資料準備的詳細資訊，請參閱[編輯資料集](https://docs.aws.amazon.com/quicksight/latest/user/edit-a-data-set.html)。

1. (選用) 如果您想要變更資料集名稱，請在資料準備頁面上，將名稱輸入至應用程式列中的資料集名稱方塊。此名稱預設為報告或物件名稱。

1. (選用) 變更資料元素選項，以查看報告或物件。

1. (選用) 變更資料選項，以選擇不同的報告或物件。

   如果您在**資料**窗格中有長清單，則可以將搜尋詞彙輸入至**搜尋資料表**方塊，來搜尋以找出特定項目。這時會顯示任何其名稱包含搜尋詞彙的項目。搜尋不區分大小寫，而且不支援萬用字元。選擇搜尋方塊右邊的取消圖示 (**X**)，來返回以檢視所有項目。

1. 執行以下一個或多個動作來準備資料：
   + [選取欄位](https://docs.aws.amazon.com/quicksight/latest/user/selecting-fields.html)
   + [編輯欄位名稱和描述](https://docs.aws.amazon.com/quicksight/latest/user/changing-a-field-name.html)
   + [變更欄位資料類型](https://docs.aws.amazon.com/quicksight/latest/user/changing-a-field-data-type.html)
   + [新增計算欄位](https://docs.aws.amazon.com/quicksight/latest/user/adding-a-calculated-field-analysis.html)
   + [在 Quick Sight 中篩選資料](https://docs.aws.amazon.com/quicksight/latest/user/adding-a-filter.html)

1. 請檢查 [SPICE](spice.md) 指標，來查看您是否有匯入資料集的足夠空間。Salesforce 資料集需要將資料匯入至 SPICE。當您選擇 **Save & visualize (儲存並視覺化)** 或 **Save (儲存)** 時，匯入即會發生。

   如果您沒有足夠的 SPICE 容量，則可以從資料集移除欄位，或套用篩選條件來降低其大小。如需從資料集新增和移除欄位的詳細資訊，請參閱[選取欄位](https://docs.aws.amazon.com/quicksight/latest/user/selecting-fields.html)。
**注意**  
SPICE 指標不會更新，以反映移除欄位或篩選資料的潛在空間節省。它會持續反映從資料來源擷取的資料集大小。

1. 選擇 **Save (儲存)** 來儲存您的工作，或選擇 **Cancel (取消)** 來取消它。

   您也可能看到 **Save & visualize (儲存並視覺化)**。此選項會根據您開始的畫面而出現。如果缺少此選項，您可以從資料集畫面開始，建立新的視覺化。

# 根據資料庫資料準備資料集
<a name="prepare-database-data"></a>

請透過以下程序，根據對資料庫的查詢來準備資料集。此資料集的資料可以來自 Amazon Athena、Amazon RDS 或 Amazon Redshift 等 AWS 資料庫資料來源，也可以來自外部資料庫執行個體。您可以選擇要將資料的副本匯入至 [SPICE](spice.md)，還是直接查詢資料。

**根據對資料庫的查詢準備資料集**

1. 選擇以下其中一個選項來開啟資料庫資料集進行準備：
   + 建立新的資料庫資料集，然後選擇 **Edit/Preview data (編輯/預覽資料)**。如需使用新資料庫資料來源建立新資料集的詳細資訊，請參閱[從資料庫建立資料集](https://docs.aws.amazon.com/quicksight/latest/user/create-a-database-data-set.html)。如需使用現有資料庫資料來源建立新資料集的詳細資訊，請參閱[使用現有資料庫資料來源建立資料集](https://docs.aws.amazon.com/quicksight/latest/user/create-a-data-set-existing-database.html)。
   + 從分析頁面或 **Your Data Sets (您的資料集)** 頁面，開啟現有的資料庫資料集進行編輯。如需開啟現有資料集以進行資料準備的詳細資訊，請參閱[編輯資料集](https://docs.aws.amazon.com/quicksight/latest/user/edit-a-data-set.html)。

1. (選用) 在資料準備頁面上，將名稱輸入至應用程式列上的資料集名稱方塊。

   如果您在進行資料準備之前已選取一個資料表名稱，則系統會將此名稱預設為該資料表名稱。否則為 **Untitled data source**。

1. 請選擇以下其中一項來決定如何選取您的資料：
   + 若要使用單一資料表來提供資料，請選擇一個資料表或變更資料表選項。

     如果您在 **Tables (資料表)** 窗格中有長資料表清單，則可以對 **Search tables (搜尋資料表)** 輸入搜尋詞彙，來搜尋特定的資料表。

     這時會顯示任何其名稱包含搜尋詞彙的資料表。搜尋不區分大小寫，而且不支援萬用字元。選擇搜尋方塊右邊的取消圖示 (**X**)，來返回以檢視所有資料表。
   + 若要使用兩個或多個聯結的資料表來提供資料，請選擇兩個資料表，然後使用聯結窗格來聯結它們。如果您選擇使用聯結的資料表，則必須將資料匯入 Quick Sight。如需使用 Amazon Quick Sight 介面聯結資料的詳細資訊，請參閱[聯結資料](https://docs.aws.amazon.com/quicksight/latest/user/joining-data.html)。
   + 若要使用自訂 SQL 查詢，來提供新資料集內的資料，請選擇 **Tables (資料表)** 窗格上的 **Switch to Custom SQL (切換到自訂 SQL)** 工具。如需詳細資訊，請參閱[使用 SQL 自訂資料](https://docs.aws.amazon.com/quicksight/latest/user/adding-a-SQL-query.html)。

     若要變更現有資料集內的 SQL 查詢，請選擇 **Fields (欄位)** 窗格上的 **Edit SQL (編輯 SQL)**，來開啟 SQL 窗格並編輯查詢。

1. 執行以下一個或多個動作來準備資料：
   + [選取欄位](https://docs.aws.amazon.com/quicksight/latest/user/selecting-fields.html)
   + [編輯欄位名稱和描述](https://docs.aws.amazon.com/quicksight/latest/user/changing-a-field-name.html)
   + [變更欄位資料類型](https://docs.aws.amazon.com/quicksight/latest/user/changing-a-field-data-type.html)
   + [新增計算欄位](https://docs.aws.amazon.com/quicksight/latest/user/adding-a-calculated-field-analysis.html)
   + [在 Quick Sight 中篩選資料](https://docs.aws.amazon.com/quicksight/latest/user/adding-a-filter.html)

1. 如果您不是聯結資料表，請選擇**查詢**或 **SPICE** 圓鈕，來選擇您要直接查詢資料庫，或是將資料匯入至 SPICE。建議使用 SPICE 以增強效能。

   如果想要使用 SPICE，請檢查 SPICE 指標，以查看您是否有足夠的空間來匯入資料集。當您選擇 **Save & visualize (儲存並視覺化)** 或 **Save (儲存)** 時，匯入即會發生。

   如果您沒有足夠的空間，則可以從資料集移除欄位，或套用篩選條件來降低其大小。
**注意**  
SPICE 指標不會更新，以反映移除欄位或篩選資料的潛在空間節省。它會持續反映從資料來源擷取的資料集大小。

1. 選擇 **Save (儲存)** 來儲存您的工作，或選擇 **Cancel (取消)** 來取消它。

   您也可能看到 **Save & visualize (儲存並視覺化)** 的選項。此選項會根據您開始的畫面而出現。如果缺少此選項，您可以從資料集畫面開始，建立新的視覺化。

# 分析和報告：在 Amazon Quick Sight 中視覺化資料
<a name="working-with-visuals"></a>

您可以在下面找到如何建立和自訂 Amazon Quick Sight 圖表、在儀表板中排列圖表等的說明。

**Topics**
+ [

# 在 Amazon Quick Sight 中使用分析
](working-with-an-analysis.md)
+ [

# 新增和管理工作表
](working-with-multiple-sheets.md)
+ [

# 在 Amazon Quick Sight 中使用互動式工作表
](working-with-interactive-sheets.md)
+ [

# 在 Amazon Quick Sight 中使用像素完美報告
](working-with-reports.md)
+ [

# 在 Amazon Quick Sight 分析中的工作表上使用項目
](authoring-sheets.md)
+ [

# 在 Amazon Quick Sight 中使用佈景主題
](themes-in-quicksight.md)
+ [

# 使用鍵盤快速鍵存取 Amazon Quick Sight
](quicksight-accessibility.md)

# 在 Amazon Quick Sight 中使用分析
<a name="working-with-an-analysis"></a>

在 Quick Sight 中，分析與儀表板相同，但只能由您選擇的作者存取。您可以將其保持在私有狀態，並根據需要使其具有強大和詳細的功能。當您決定發布它時，它的共用版本稱為儀表板。

使用下列各節來了解如何與 Quick Sight 分析互動。

**Topics**
+ [

# 在 Quick Sight 中開始分析
](creating-an-analysis.md)
+ [

# 新增分析的標題和描述
](adding-a-title-and-description.md)
+ [

# 共用 Quick Sight 分析
](sharing-analyses.md)
+ [

# 重新命名分析
](renaming-an-analysis.md)
+ [

# 複製分析
](duplicating-an-analysis.md)
+ [

# 自訂分析的日期和時間值
](analysis-date-time.md)
+ [

# 分析選單
](analysis-menu.md)
+ [

# 設定分析設定
](analysis-settings.md)
+ [

# Quick Sight APIs 中 Amazon Quick Sight 分析的項目限制
](analysis-item-limits.md)
+ [

# 儲存對分析所做的變更
](saving-changes-to-an-analysis.md)
+ [

# 從 Quick Sight 分析匯出資料
](exporting-data-analysis.md)
+ [

# 刪除分析
](deleting-an-analysis.md)

# 在 Quick Sight 中開始分析
<a name="creating-an-analysis"></a>

在 Quick Sight 中，您會在分析中分析和視覺化資料。完成後，您可以將分析作為儀表板發布，以便與組織中的其他人共用。

依照下列步驟建立新的分析。

**若要建立新的分析**

1. 在 Amazon Quick Start 頁面上，選擇**分析**，然後選擇**新增分析**。

1. 選擇要包含在新分析中的資料集，然後選擇右上角的**在分析中使用**。

1. 在出現的**新工作表**快顯視窗中，選擇您想要的工作表類型。您可以選擇**互動式工作表**和**像素完美報告**。若要建立像素完美報告，您需要您帳戶的像素完美報告附加元件。如需像素完美報告的詳細資訊，請參閱 [在 Amazon Quick Sight 中使用像素完美報告](working-with-reports.md)。如需工作表的詳細資訊，請參閱 [新增和管理工作表](working-with-multiple-sheets.md)。

1. (選用) 如果您選擇**互動式工作表**，請依照下列步驟執行：
   + (選用)：為互動式工作表選擇所需的類型版面配置。您可以選擇下列其中一個選項：
     + 任意格式
     + 拼排

     預設選項為**任意格式**。

     如需互動式工作表版面配置的詳細資訊，請參閱 [版面配置類型](types-of-layout.md)。
   + 請選擇您希望工作表最佳化的畫布大小。您可以選擇下列其中一個選項：
     + 1024px
     + 1280px
     + 1366px
     + 1600px
     + 1920px

     如需格式化互動式工作表的詳細資訊，請參閱 [在 Amazon Quick Sight 中使用互動式工作表](working-with-interactive-sheets.md)。

1. （選用） 如果您選擇**像素完美報告**，請遵循下列步驟：
   + (選用) 選擇要用於分頁報告的紙張大小。您可從下列選項擇一使用：
     + 美國信函用紙 (8.5 x 11 英吋)
     + 美國法律用紙 (8.5 x 14 英吋)
     + A0 (841 x 1189 毫米)
     + A1 (594 x 841 毫米)
     + A2 (420 x 594 毫米)
     + A3 (297 x 420 毫米)
     + A4 (210 x 297 毫米)
     + A5 (148 x 210 毫米)
     + 日本 B4 (257 x 364 毫米)
     + 日本 B5 (182 x 257 毫米)

     預設紙張大小為美國信函用紙 (8.5 x 11 英吋)
   + (選用) 選擇頁面方向。您可以選擇**縱向**或**橫向**。預設選項是縱向。

     在建立 Amazon Quick Sight 像素完美報告之前，請先取得 Quick 帳戶的像素完美報告附加元件。如需取得像素完美報告附加元件的詳細資訊，請參閱[取得快速像素完美報告附加元件](qs-reports-getting-started.md#qs-reports-getting-started-subscribe)。

     如需格式化像素完美報告的詳細資訊，請參閱 [在 Amazon Quick Sight 中使用像素完美報告](working-with-reports.md)。

1. 選擇**新增**。

1. 建立視覺化效果。如需建立視覺化效果的詳細資訊，請參閱[將視覺效果新增至 Quick Sight 分析](creating-a-visual.md)。

您建立分析之後，您可以修改視覺化效果、新增更多的視覺化效果、將場景新增到預設案例，或新增更多的案例，以便反覆進行分析。

# 新增分析的標題和描述
<a name="adding-a-title-and-description"></a>

除了分析名稱之外，您也可以新增分析的標題和描述。實用的標題和描述提供分析中的資訊相關的脈絡。

## 新增標題和描述
<a name="add-a-title-and-description"></a>

請使用下列步驟來新增分析的標題和描述。標題和描述最多可包含 1024 個字元。像素完美報告不支援標題和描述。

**若要新增分析的標題和描述**

1. 在分析頁面，選擇應用程式列中的**工作表**，然後選擇**新增標題**。

1. 針對 **Sheet title (資料表標題)**，輸入標題並按 **Enter**。若要移除標題，請選擇應用程式列中的**工作表**，然後選擇**刪除標題**。或者，如要移除標題，您可以選取標題，然後選擇 **x** 形的刪除圖示。

   如要建立動態資料表標題，您可以將現有的參數新增到資料表標題。如需詳細資訊，請參閱[在 Amazon Quick 的標題和描述中使用參數](parameters-in-titles.md)。

1. 選擇應用程式列中的**工作表**，然後選擇**新增描述**。

1. 在工作表上顯示的描述空間中，輸入所需的描述，然後按 **Enter**。若要移除描述，請選擇應用程式列中的**工作表**，然後選擇**刪除描述**。或者，若要移除描述，您可以選取描述，然後選擇 **x** 形的刪除圖示。

# 共用 Quick Sight 分析
<a name="sharing-analyses"></a>

您可以與其他一位或多位使用者共用分析，方法是將透過電子郵件將連結傳送給使用者，以便進行協作並散佈發現的結果。您只能與快速帳戶中的其他使用者共用分析。

在您共用分析後，您可以檢閱其他使用者存取分析的權限，也可以撤銷任何使用者的存取權限。

**Topics**
+ [

## 共用分析
](#share-an-analysis)
+ [

# 檢視共用分析的使用者
](view-users-analysis.md)
+ [

# 撤銷對分析的存取權
](revoke-access-to-an-analysis.md)

## 共用分析
<a name="share-an-analysis"></a>

請依照下列程序來共用您的分析。

**若要​共用分析**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟要變更的分析。

1. 在分析頁面，選擇應用程式列上的**檔案**，然後選擇**​共用**。

   您只能與快速帳戶中的使用者或群組共用分析。

1. 新增要共用的使用者或群組。若要這樣做，請針對**輸入使用者名稱或電子郵件地址**，輸入您要與其共用此分析的第一個使用者或群組。然後，選擇 **Share (共用)**。重複這個步驟，直到您對於要共用分析的每個人輸入資訊為止。

   若要編輯此分析的共用許可，請選擇**管理分析許可**。

   **管理分析許可**畫面隨即顯示。在此畫面上，您可以**邀請使用者**以編輯許可，並新增更多使用者或群組。

1.  對於 **Permission (許可)**，請選擇將指派到每個使用者或群組的角色。此角色會決定授予該使用者或群組的許可層級。

1. 選擇**共用**。

   您共用分析的使用者會收到電子郵件，內含分析的連結。群組不會收到邀請電子郵件。

# 檢視共用分析的使用者
<a name="view-users-analysis"></a>

如果您已共用分析，您可以使用以下程序查看可以存取分析的使用者或群組。

**若要檢視可存取分析的使用者或群組**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟要變更的分析。

1. 在分析頁面，選擇應用程式列上的**檔案**，然後選擇**​共用**。

1. 選擇**管理分析許可**。

1. 檢閱已與哪些人員共用此分析。您可以透過輸入搜尋詞彙進行搜尋的方式尋找特定帳戶。該搜尋會傳回包含搜尋詞彙的任何使用者、群組或電子郵件地址。搜尋區分大小寫，而且不支援萬用字元。刪除搜尋詞彙即可檢視所有使用者和群組。

# 撤銷對分析的存取權
<a name="revoke-access-to-an-analysis"></a>

請依照下列程序來撤銷分析的存取權。

**若要撤銷分析的存取權**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟要變更的分析。

1. 在分析頁面，選擇應用程式列上的**檔案**，然後選擇**​共用**。

1. 選擇**管理分析許可**。

1. 找出您想撤銷的使用者或群組存取權，然後選擇使用者或群組旁的垃圾桶圖示。

1. 選擇**確認**。

# 重新命名分析
<a name="renaming-an-analysis"></a>

請依照下列程序來將分析重新命名。

**若要重新命名分析**

1. 開啟您要重新命名的分析。

1. 在應用程式列的**分析名稱**方塊中，選取目前的名稱，然後輸入新的名稱。

# 複製分析
<a name="duplicating-an-analysis"></a>

您可以在 Quick Sight 中複製分析。使用下列程序來了解方法。

**若要複製分析**

1. 在快速首頁中，選擇**分析**，然後開啟您要複製的分析。

1. 在分析中，選擇右上角的應用程式列中的**另存新檔**。

1. 在開啟的**儲存副本**頁面中，輸入分析的名稱，然後選擇**儲存**。

   新的分析即會開啟。您可以透過返回快速開始頁面並選擇**分析來尋找原始分析**。

# 自訂分析的日期和時間值
<a name="analysis-date-time"></a>

在 Amazon Quick 中，作者可以設定自訂時區和分析的週開始日。設定自訂週開始日或時區時，分析中使用日期時間資料的所有視覺效果都會格式化，以反映分析使用的時區或週開始日。

## 設定分析中的自訂時區
<a name="analysis-timezone"></a>

快速作者可以使用*自訂時區*來協助管理跨多個地理區域的資料。設定自訂時區時，所有可見的維度、量值、計算欄位和篩選條件都會在查詢執行時間轉換為所選的時區。系統會自動套用日光節約時間 (DST) 調整，因此無需採取無法準確處理歷史日期的耗時解決方法。

*自訂時區*是指使用代表世界各地特定地理區域的 IANA 時區縮寫。每個時區都定義為與國際標準時間 (UTC) 的偏移。時區包含 DST，因此與簡單的偏移不同。

所有分析的預設時區為 `UTC`。

下列規則適用於時區。
+ **日期時間會以小於 `hour` 的精細程度顯示，並轉換為所選時區的日期時間。**例如，如果您將分析的時區設定為 `America/New_York (UTC-04:00)`，那麼 `UTC+00:00` 中的日期時間值 `Dec.1, 2020 12:00am` 會轉換並顯示為 `Nov.30, 2020 7:00pm`。日光節約時間 (DST) 已包含在日期時間轉換中。
+ **新增至計算或在篩選條件中選取的日期時間常值遵循分析的所選時區。**例如，如果您在 等計算欄位中手動輸入常值`01-01-2022 7:00pm`，或選取固定的篩選時間，Quick Sight 會將選擇的時區套用至常值。
+ **在 `hour/minute` 以上精細度彙總的量值會根據分析設定的時區進行彙總。**當 Quick Sight 處理資料集時，所有時間戳記一開始會以最低的精細程度進行轉換。然後，值會根據分析所選時區的界限進行彙總。例如，`UTC+00:00` 時區的日層級每小時營收總和會彙總 `UTC` 時區 `12am-11pm` 時間段內的所有每小時營收。將 `UTC+00:00` 轉換為 `New_York (UTC-04:00)` 時，會彙總 `UTC` 時區 `8:00pm-7:00pm(+1day)` 時間段內的所有營收資料點，以與 `New_York (UTC-04:00)` 時區中該日的開始和結束對應。
+ **`now()` 函數、滾動日期篩選條件和參數會轉換至所選的時區。**使用 `now()` 函數的相對日期篩選條件、滾動日期篩選條件和相對日期參數，也會在套用到視覺效果時遵循所選時區。例如，如果您選擇相對篩選條件 (如 `last week`) 或滾動日期篩選條件(如 `start of the month`)，所選的時區會自動套用至篩選條件，分別顯示 `last week of New_York time zone` 值和 `start of the month of New_York time zone` 值。

**設定分析的自訂時區**

1. 在要變更的分析中，導覽至頂端選單，然後選擇**編輯**。

1. 選擇**分析設定**，然後選擇**日期和時間**。

1. 將**轉換時區**切換為開啟，然後選擇所需的**時區**。

1. 選擇**套用**。

分析被指派時區後，分析頂端會出現圖示，指示分析使用的時區。此圖示也會顯示在從分析發布的任何儀表板上。

**考量**

下列考量適用於自訂時區。
+ 若要使用自訂時區，資料集中的所有日期時間資料欄都必須標準化為 UTC。如果日期時間資料欄未在資料來源中標準化，您必須先轉換資料來源中的資料欄，才能使用此功能。
+ 對於未指派自訂時區的分析，作者和讀者的功能不受影響。
+ 將時區新增至分析後，時區會套用至分析中的所有視覺效果和資料表。
+ 快速作者只能為分析選擇一個時區。從分析發布的所有儀表板都會使用分析使用的時區。若要建立使用不同於分析所用時區的儀表板，請變更分析的時區並重新發布儀表板。
+ 快速讀取器無法變更儀表板的時區。
+ 如果您為使用直接查詢中所儲存資料集的分析設定了時區，但載入緩慢，請考慮將資料集存放在 SPICE 中。SPICE 旨在以高效能的方式處理時區轉換。
+ 自訂時區不支援下列資料庫引擎：
  + Timestream
  + OpenSearch Service
  + Teradata
  + SqlServer

## 設定分析中的自訂週開始日
<a name="analysis-week-start"></a>

快速作者可以定義分析的一週開始日，使其資料與其公司或產業遵循的排程保持一致。設定自訂週開始日後，在週層級彙總的所有維度、計算欄位和篩選條件都會根據新的週開始日進行計算。預設的週開始日為 `Sunday`。

**設定分析的自訂週開始日**

1. 在要變更的分析中，導覽至頂端選單，然後選擇**編輯**。

1. 選擇**分析設定**，然後選擇**日期和時間**。

1. 對於**自訂開始日**欄位，選擇所需的開始日。

1. 選擇**套用**。

**考量**

下列考量適用於自訂週開始日。
+ 日期時間欄位會在執行時期轉換。如果您使用採用日期時間值的計算欄位，請在分析層級 (而非資料集層級) 定義欄位。
+ 選擇了新的週開始日後，變更將會套用至分析中的所有視覺效果和資料表。
+ 快速作者只能為分析選擇一週的開始日期。從分析發布的所有儀表板都會使用分析所用的週開始日。若要建立使用不同於分析所用週開始日的儀表板，請變更分析的週開始日並重新發布儀表板。
+ 快速讀者無法變更儀表板的一週開始日。

# 分析選單
<a name="analysis-menu"></a>

進行分析時，Amazon Quick 提供數個選單選項。您可以使用這些選單選項有效率地執行工作，而無需手動瀏覽分析以尋找要變更的資產。

您可使用這些選項執行下列任務。
+ *檔案* – 執行分析管理工作，包括建立、共用和發布。作者可以使用此選項在分析中，對所有工作表或視覺效果進行變更。
+ *編輯* – 在您對分析所做的變更之間導覽。您可以復原或重做您所做的變更。
+ *資料* – 管理資料集、資料欄位和參數。您使用此選項所做的變更會套用至分析中的所有工作表。
+ *插入* – 使用輸入點，您可以將視覺效果、文字方塊、深入解析、報告物件、篩選條件和參數新增至分析。您插入的內容可以是資料或物件。
+ *工作表* – 管理分析的工作表設定，包括版面配置設定、在工作表中加入或移除資產的動作，以及工作表屬性。
+ *物件* – 管理物件及其功能，包括樣式、畫布位置、調整大小、卡片背景和邊框。您也可以在於視覺效果物件上工作時，使用**屬性**窗格來管理這些物件。
+ *搜尋*：存取*快速搜尋*列。快速搜尋是會在您輸入時開始顯示您要搜尋之資產結果的搜尋列。建議的結果會在您輸入時繼續修改，直到您看到您要尋找的結果為止。

  若要使用快速搜尋，請開啟**搜尋**選單，然後在**搜尋分析動作**方塊中開始輸入與您嘗試尋找的資產相關聯的名稱或片語。

# 設定分析設定
<a name="analysis-settings"></a>

Amazon Quick 作者可以使用分析設定選單來設定分析的重新整理和日期時間設定。若要存取「分析設定」選單，請選擇**編輯**，然後選擇**分析設定**。您可以在「分析設定」選單中設定下列設定：

**重新整理設定**
+ **每次我切換工作表時重新載入視覺效果** – 每當使用者切換到分析中的不同工作表時，使用此設定重新載入 Quick Sight 分析中的每個視覺效果。
+ **手動更新視覺效果**：使用此設定，可以在使用者套用其變更時僅更新分析中適用的視覺效果。此設定開啟後，分析依預設會載入空白視覺效果，因為在使用者選取位於工具列或受影響視覺效果上的**更新視覺效果**按鈕時才會觸發查詢。**更新視覺效果**按鈕會確認使用者已完成要套用至受影響視覺效果的篩選條件和控制選擇。下圖顯示了**更新視覺效果**按鈕。

  **手動更新視覺效果**開啟後，作者仍然可以新增和編輯視覺效果以及編輯控制選擇，但受影響的視覺效果在作者套用新變更之前不會更新。這可讓作者在不增加資料庫負載的情況下建置分析，並更好地控制在分析中載入哪些值。

**日期和時間設定**
+ **轉換時區**：使用此設定轉換所有日期欄位相關的視覺效果、篩選條件和參數，以反映所選時區。系統會自動進行所有日光節約時間調整。如需時區設定的詳細資訊，請參閱 [自訂分析的日期和時間值](analysis-date-time.md)。
+ **一週開始**：使用此設定來選擇分析的週開始日。

**互動性**
+ 使用此設定在工作表的視覺效果中醒目顯示特定資料點。選取或將游標暫留在視覺效果上的資料點上時，其他視覺效果的相關資料會突出顯示，而不相關的資料則會變暗。醒目顯示可讓您了解相互關聯性、Spot 模式、趨勢和極端值，有助於實現更強大、更明智的分析。選取**選擇時**或**暫留時**開啟醒目顯示，或選取**沒有醒目提示**將其關閉。
+ 若要在每個資料表層級上自訂醒目顯示，請參閱[新增和管理工作表](working-with-multiple-sheets.md)。

# Quick Sight APIs 中 Amazon Quick Sight 分析的項目限制
<a name="analysis-item-limits"></a>

使用下表檢閱使用 Amazon Quick Sight APIs 建立和管理之 Amazon Quick Sight 中不同分析項目的目前限制或配額。如果分析包含的分析項目數超過支援的數目，請移除項目以最佳化分析的效能。新的分析項目無法新增至分析項目數超過支援數目的分析。


| 分析項目 | 限制 | 
| --- | --- | 
|  [工作表](https://docs.aws.amazon.com/quicksuite/latest/userguide/working-with-multiple-sheets)  |  每個分析 20 個工作表  | 
|  [視覺效果](https://docs.aws.amazon.com/quicksuite/latest/userguide/creating-a-visual)  |  每個工作表 50 個視覺效果  | 
|  [計算欄位](https://docs.aws.amazon.com/quicksuite/latest/userguide/working-with-calculated-fields)  |  每個分析 500 個，每個資料集 200 個\$1  | 
|  [書籤](https://docs.aws.amazon.com/quicksuite/latest/userguide/dashboard-bookmarks-create)  |  每個儀表板 200 個  | 
|  [自訂動作](https://docs.aws.amazon.com/quicksuite/latest/userguide/custom-actions)  |  每個視覺效果 10 個  | 
|  [篩選條件群組](https://docs.aws.amazon.com/quicksuite/latest/userguide/add-a-compound-filter)  |  每個分析 2,000 個  | 
|  [篩選條件](https://docs.aws.amazon.com/quicksuite/latest/userguide/adding-a-filter)  |  每個篩選條件群組 20 個篩選條件  | 
|  [參數](https://docs.aws.amazon.com/quicksuite/latest/userguide/parameters-in-quicksight)  |  每次分析 400 個  | 
|  [控制項](https://docs.aws.amazon.com/quicksuite/latest/userguide/filter-controls)  |  每個工作表 200 個  | 
|  [文字方塊](https://docs.aws.amazon.com/quicksuite/latest/userguide/textbox)  |  每個工作表 100 個  | 
|  [影像元件](https://docs.aws.amazon.com/quicksuite/latest/userguide/image-component)  |  每個工作表 10 個  | 
|  [圖層地圖視覺效果](https://docs.aws.amazon.com/quicksuite/latest/userguide/layered-maps)  |  每個工作表 5 個  | 

\$1 每個資料集限制適用於在分析中建立的計算。資料集層級計算不包含在此限制中。如需有關資料集層級計算的詳細資訊，請參閱[新增計算欄位](adding-a-calculated-field-analysis.md)。

# 儲存對分析所做的變更
<a name="saving-changes-to-an-analysis"></a>

進行分析時，您可以將自動儲存設定為開啟 (預設) 或關閉。自動儲存開啟時，每隔一分鐘左右就會自動儲存變更。自動儲存關閉時，不會自動儲存變更，這樣您可以進行變更並追蹤不同行的查詢，而不永久更改分析。如果您決定仍要儲存結果，請重新啟用自動儲存。到該時間點為止的變更都會予以儲存。

無論是哪一種自動儲存模式，您都可以選擇應用程式列上的**復原**或**重做**來復原或重做最多 200 個變更。

## 變更自動儲存模式
<a name="changing-autosave"></a>

若要變更分析的自動儲存模式，請選擇**檔案**，然後選擇**開啟自動儲存**或**關閉自動儲存**。

## 自動儲存無法儲存變更時
<a name="conflicting-changes"></a>

假設發生其中一個情況：
+ 自動儲存開啟，而另一個使用者做出對分析相衝突的變更。
+ 自動儲存開啟，但是發生服務故障，而且無法儲存您的最新變更。
+ 自動儲存關閉，您開啟自動儲存，而且您將現在待處理的變更儲存到伺服器，卻與其他使用者的變更相衝突。

在這種情況下，Amazon Quick Sight 可讓您選擇執行以下兩種操作之一。您可以讓 Amazon Quick Sight 關閉自動儲存並繼續在未儲存的模式中工作，或從伺服器重新載入分析，然後重做最新的變更。

您編輯分析時，如果您的用戶端驗證過期，則會再次將您導向到登入。成功登入時，則將您重新導向回分析，以便您可以繼續正常處理。

如果您在編輯時撤銷分析的許可，則您無法進行任何進一步的變更。

# 從 Quick Sight 分析匯出資料
<a name="exporting-data-analysis"></a>

**注意**  
匯出檔案可以直接傳回資料集匯入的資訊。如果匯入的資料含公式或命令，這會使檔案受到 CSV 注入的攻擊。因此，匯出檔案會提示安全警告。若要避免惡意活動，請在讀取匯出檔案時關閉連結和巨集。

您可以從分析將資料匯出到 CSV 或 PDF 檔案。若要從分析或儀表板將資料匯出為 CSV 檔案，請遵循[從視覺效果匯出資料](exporting-data.md)中的程序。

依照下列程序將分析匯出為 PDF。

1. 在要匯出的分析中，選擇**檔案 > 匯出至 PDF**。Quick Sight 開始準備要下載的分析。

1. 在藍色快顯視窗中選擇**檢視匯出**，可開啟右側的**匯出**窗格。

1. 在綠色快顯視窗中選擇**下載**。

1. 若要查看準備好下載的所有分析或報告，請選擇**檔案**，然後選擇**匯出**。匯出面板會在畫面右側開啟。選取您要儲存到偏好位置的檔案旁的**按一下即可下載**。

匯出至 PDF 的程序在儀表板和分析中的運作方式相同。

您也可以將 PDF 附加至儀表板電子郵件報告。如需詳細資訊，請參閱[透過電子郵件排程和傳送 Quick Sight 報告](sending-reports.md)。

# 刪除分析
<a name="deleting-an-analysis"></a>

如果您有執行此作業的許可，您可以從**分析**頁面刪除分析。刪除分析後，不會影響以該分析為基礎的任何儀表板。它們會繼續顯示已刪除的分析，但刪除分析後，您就無法對該分析進行變更。導覽至「分析」頁面並找到您要移除的分析。選擇分析上的詳細資訊圖示 (⋮)，然後選擇**刪除**。再次選擇 **Delete (刪除)** 來確認您的選擇。您無法復原此動作。

# 新增和管理工作表
<a name="working-with-multiple-sheets"></a>

*工作表*是在單一頁面中一起檢視的一組視覺效果。當您建立分析時，您會在工作表上的工作空間中放入視覺效果。您可以想像這是報紙的一個版面，只不過其中充滿資料視覺化。您可以新增更多工作表，讓其在您的分析中分開或一起運作。

首位工作表 (也稱為預設工作表) 是位於最左邊的工作表。此工作表顯示在分析或儀表板的頂部。每個分析最多可包含 20 個工作表。

您可以分享具有多個工作表的分析和發布儀表板。您也可以為分析中的任何工作表組合排程電子郵件報告。

當您在現有分析中建立新的分析或新工作表時，您可以選擇要讓新工作表成為**互動式工作表**或 **Pixel 完美報告**。如此一來，您可以僅分析互動式工作表、僅分析像素完美報告，也可以分析包含互動式工作表和像素完美報告。

*互動式工作表*是以視覺效果表示的資料集合，當工作表發布到儀表板時，使用者可以與之互動。Amazon Quick 作者可以將不同的控制項和篩選條件新增至其互動式工作表。儀表板檢視者可以使用這些資料從已發布的資料中取得詳細資訊。如需互動式工作表的詳細資訊，請參閱[在 Amazon Quick Sight 中使用互動式工作表](https://docs.aws.amazon.com/quicksight/latest/user/working-with-interactive-sheets.html)。

*分頁報告*是資料表、圖表和視覺效果的集合，用於傳達業務重要資訊，例如每日交易摘要或每週業務報告。若要在 Quick Sight 中建立像素完美報告，請將**像素完美報告附加元件**新增至您的 Quick 帳戶。若要取得**像素完美報告附加元件**並開始使用像素完美報告，請參閱[在 Amazon Quick Sight 中使用像素完美報告](https://docs.aws.amazon.com/quicksight/latest/user/working-with-reports.html)。

 請透過以下動作清單來使用工作表：
+ 若要新增工作表，請選擇工作表索引標籤右側的加號 (\$1)，選擇您要的工作表類型，然後選擇**新增**。
+ 若要重新命名工作表，請選擇工作表名稱，並開始輸入。您也可以從工作表功能表**進行重新命名**。
+ 若要複製工作表，請選擇工作表的名稱，然後從工作表功能表中選擇**複製**。只有在開啟**自動儲存**時，才能複製工作表。
+ 若要複製互動式工作表並將其轉換為像素完美報告，請選擇工作表的名稱，然後從工作表功能表中選擇**複製以進行報告**。您無法將像素完美報告轉換為互動式工作表。
+ 若要刪除工作表，請選擇工作表的名稱，然後從工作表功能表中選擇**刪除**。如果工作表是分析中唯一的工作表，則無法刪除該工作表。
+ 若要變更工作表的順序，請選擇工作表的名稱並將其拖曳至新位置。
+ 若要將視覺效果複製到新的工作表，請從視覺化功能表中選擇 **Duplicate visual to (將視覺效果複製到)**。然後選擇目標工作表。您在工作表上建立的篩選條件只存在於此工作表上。若要複製篩選條件，請在目標工作表上重新建立它們。
+ 若要醒目顯示工作表中視覺效果的特定資料點，請前往**工作表**索引標籤，然後選取**版面配置設定**。在**互動**區段下，選取**選擇時**或**暫留時**以開啟醒目顯示，或選取**沒有醒目提示**以關閉突出顯示。根據預設，工作表醒目顯示遵循與分析突出顯示相同的設定。

  選取或將游標暫留在視覺效果上的資料點上時，其他視覺效果的相關資料會突出顯示，而不相關的資料則會變暗。醒目顯示可讓您了解相互關聯性、Spot 模式、趨勢和極端值，有助於實現更強大、更明智的分析。

您可以在首位工作表上使用參數控制項來控制多個工作表。若要執行此作業，請開啟您要使用參數的每個工作表。然後新增篩選條件，該篩選條件使用頂部工作表上控制項中所使用的相同參數。或者，如果您希望新工作表獨立運作，您可以新增有別於首位工作表的參數和參數控制項。

# 在 Amazon Quick Sight 中使用互動式工作表
<a name="working-with-interactive-sheets"></a>

*互動式工作表*是以視覺效果表示的資料集合，當工作表發布到儀表板時，使用者可以與之互動。Amazon Quick 作者可以將不同的配置、控制項和篩選條件新增至其互動式工作表，儀表板檢視器可用來從已發佈的資料中取得詳細資訊。預設情況下，分析中的每個工作表都是互動式工作表。如果您的帳戶沒有 **Pixel 完美報告附加元件**，您只能建立和發佈互動式工作表。

如需建立互動式工作表的詳細資訊，請參閱 [在 Quick Sight 中開始分析](creating-an-analysis.md)。

如需有關格式化互動式工作表的詳細資訊，請參閱下列主題。

**Topics**
+ [

# 在 Amazon Quick Sight 中自訂儀表板配置
](customizing-dashboards-and-visuals.md)
+ [

# Amazon Quick 中的參數
](parameters-in-quicksight.md)
+ [

# 使用自訂動作進行篩選和導覽
](quicksight-actions.md)

# 在 Amazon Quick Sight 中自訂儀表板配置
<a name="customizing-dashboards-and-visuals"></a>

您可以自訂儀表板的版面配置來整理資料，以符合您的業務需求。您可以從三個儀表板版面配置中選擇。您也可以變更視覺效果的大小、背景顏色、邊界顏色和互動，以建立完全自訂的儀表板。

使用下列主題可進一步了解自訂儀表板和視覺效果。

**Topics**
+ [

# 版面配置類型
](types-of-layout.md)
+ [

# 選擇版面配置
](choosing-a-layout.md)
+ [

# 自訂自由格式版面配置中的視覺效果
](customizing-visuals-in-free-form.md)
+ [

# 條件式規則
](conditional-rules.md)

# 版面配置類型
<a name="types-of-layout"></a>

您可以選擇三種儀表板版面配置設計：**拼排**、**自由格式**和**經典**。

## 拼排版面配置
<a name="tiled-layout"></a>

**拼排**版面配置中的視覺效果會貼齊至具有標準間距和對齊的格線。您可以製作任何大小的視覺效果，並將其放置在儀表板內的任何位置，但視覺效果不能重疊。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/fixed-layouts-tiled-demo.gif)


儀表板會依設計顯示，並提供適合螢幕或視觀表實際大小的選項。您也可以在右上角選擇**檢視**的**調整成視窗大小**，將整個儀表板調整至您的視窗大小。此選項先前稱為**已最佳化**。

**注意**  
在行動裝置上，拼排版面配置儀表板會在縱向模式下顯示為單一資料欄，或與橫向模式下完全相同。

## 自由格式版面配置
<a name="free-form-layout.title"></a>

**自由格式**版面配置中的視覺效果可以使用精確座標放置在儀表板中的任何位置。您可以將視覺效果拖曳至您想要的確切位置，也可以輸入視覺效果位置的座標。使用下列程序輸入視覺效果位置的精確座標。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/fixed-layouts-freeform-placement1.gif)


儀表板會依所選設計方式顯示，並提供適合螢幕或實際大小檢視的選項。您可以最佳化自由格式的版面配置，以便以特定解析度檢視，預設值為 1,600 像素。您也可以在右上角選擇**檢視**的**調整成視窗大小**，將整個儀表板調整至您的瀏覽器視窗大小。

**注意**  
如果檢視者的電腦解析度與設定的儀表板解析度不相同，則具有最佳化解析度的儀表板可能會在檢視者電腦上顯示得更大或更小。  
從**自由格式**切換至其他版面配置可能會導致某些視覺元素移動。  
在行動裝置上，**自由格式**儀表板會顯示為已發布，而不會變更版面配置。

## 經典版面配置
<a name="classic-layout.title"></a>

**經典**版面配置中的視覺效果會貼齊至具有標準間距和對齊的格線。儀表板隱藏資料或變更格式以適應較小的螢幕大小。例如，如果您將視覺效果變得非常小，則視覺效果選單和編輯器會隱藏，以挪出更多空間來顯示圖表元素。長條圖視覺效果也可以顯示較少的資料點。

如果您減少瀏覽器視窗的大小，Amazon Quick Sight 會調整大小，並視需要重新排序視覺效果，以獲得最佳顯示效果。例如，並排的較小視覺效果可能循序顯示。再次放大瀏覽器視窗時，就會恢復原始配置。

**注意**  
在行動裝置上，經典版面配置儀表板會顯示為單一資料欄或完全符合橫向模式的設計。

# 選擇版面配置
<a name="choosing-a-layout"></a>

**若要變更儀表板的版面配置**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 在快速首頁中，選擇**分析**，然後選擇您要變更的分析。

1. 在分析頁面上，選擇**編輯**，然後選擇**分析設定**。

1. 展開**工作表版面配置**，然後選擇您要使用的版面配置。

1. 完成後，選擇**套用**。

# 自訂自由格式版面配置中的視覺效果
<a name="customizing-visuals-in-free-form"></a>

您可以使用自由格式版面配置，完全自訂儀表板中每個視覺效果的顏色、大小、位置和可見性。

## 組織視覺效果
<a name="organizing-visuals.title"></a>

除了將視覺效果拖曳到儀表板中的偏好位置外，還有許多不同的方法可以將視覺效果移至所需的確切位置。

**若要輸入視覺效果位置的座標**

1. 選擇您想要的視覺效果。

1. 在視覺效果右上角的選單中，選取**格式化視覺化效果**圖示。

1. 在開啟的**屬性**窗格中，選擇**放置**。

1. 輸入要放置視覺效果之位置的 **X** 和 **Y** 座標。您也可以輸入**寬度**和**高度**值來調整視覺效果的大小。

也可以使用鍵盤的方向鍵依像素移動選取的視覺效果。

您可以將視覺效果彼此疊加，以建立顯示資料的多層視覺效果。

視覺效果可以組織成多個圖層，可以手動上下移動。

**若要將覆疊的視覺效果移至頂層和底層**

1. 選擇您想要的視覺效果。

1. 在視覺效果右上角的三點式選單上，選擇**選單選項**。

1. 對於**選單選項**，請選擇下列項目：
   + **推至底層**將視覺效果移到底層。
   + **下移一層**將視覺效果下移一層。
   + **上移一層**將視覺效果上移一層。
   + **移至頂層**將視覺效果移到頂層。

## 變更視覺效果的背景顏色
<a name="changing-a-visuals-background-color.title"></a>

您可以在**屬性**窗格的**顯示設定**面板中自訂視覺效果背景、邊界和選擇框的顏色。

**若要變更視覺效果背景、邊界和選擇框的顏色**

1. 選擇要變更的視覺效果。

1. 在視覺效果右上方的選單上，選擇**屬性**圖示。

1. 在左側顯示的**屬性**窗格中，選擇**顯示設定**。

1. 導覽至**卡片樣式**區段，並執行一或多個可用的動作：
   + 若要變更視覺效果背景的顏色，請選擇**背景**顏色方塊，然後選擇所需的顏色。
   + 若要變更視覺效果邊界的顏色，請選擇**邊界**顏色方塊，然後選擇您所需的顏色。
   + 若要變更視覺效果選擇框的顏色，請選擇**選擇**顏色方塊，然後選擇所需的顏色。

   如果您想要為視覺效果的背景、邊界或選擇框使用自訂顏色，請選擇您要變更之屬性的顏色方塊，然後選擇**自訂顏色**。在顯示的**自訂顏色**視窗中，選擇您的自訂顏色或輸入顏色的十六進位碼。完成時，請選擇 **Apply** (套用)。

您也可以將視覺效果的自訂背景重設為預設外觀。

**若要重設視覺效果的外觀**

1. 選擇要變更的視覺效果。

1. 在視覺效果右上方的選單上，選擇**屬性**圖示。

1. 在左側顯示的**屬性**窗格中，選擇**顯示設定**。

1. 選擇您要重設的顏色，然後選擇**重設為預設值**。

## 隱藏視覺背景、邊界和選取顏色
<a name="hiding-visual-backgrounds-and-borders.title"></a>

您也可以選擇不顯示背景邊界或視覺效果的選取顏色。這對於重疊多個視覺效果的情況非常有用。您可以透過選擇**邊界**、**背景**或**選擇**顏色方塊旁的眼睛圖示，隱藏視覺效果的背景、邊界和選擇顏色。您也可以清除**顯示載入動畫**方塊來移除視覺效果的載入動畫。

## 停用視覺化效果選單
<a name="disabling-visual-menus.title"></a>

使用**屬性**窗格中的**互動**面板，隱藏選取的視覺效果的**內容**選單和**視覺化效果**選單。您可以隱藏輔助視覺化效果選單，以使視覺效果不那麼擁擠，或者使視覺行為像覆蓋。

點按資料點可開啟**內容**選單。**內容選單**中的常見動作包括**焦點**、**排除**和**向下切入**。

**視覺化效果**選單會出現在視覺效果的右上角。**視覺化效果**選單可用來存取**屬性**窗格、**最大化**視覺效果、存取**選單選項**面板，以及檢閱**異常狀況洞見**。

您可以透過清除**內容**選單和**視覺化效果**選單選項來關閉輔助視覺化選單。

**注意**  
您無法在**分析**中預覽**互動**面板的變更。發布儀表板以檢視您的變更。

# 條件式規則
<a name="conditional-rules"></a>

**自由格式**版面配置目前可使用此功能。條件式規則用於在符合特定條件時隱藏或顯示視覺效果。當您有多個版本的相同視覺效果彼此重疊，並希望儀表板檢視者看到最能代表其所選參數值的版本時，此功能會很有用。

條件式規則使用參數和參數控制項來隱藏和顯示視覺效果。參數是具名變數，可以傳輸供動作或物件使用的值。此功能支援字串和數字參數。若要讓儀表板檢視者可以存取參數，請新增參數控制項。參數控制項可讓使用者選擇要在預先定義的篩選條件或 URL 動作中使用的值。如需參數和參數控制項的詳細資訊，請參閱 [Amazon Quick 中的參數](parameters-in-quicksight.md)。

參閱以下各節來設定和使用條件式規則。

**Topics**
+ [

# 依預設隱藏視覺效果
](hiding-a-visual-by-default.title.md)
+ [

# 設定條件式規則
](setting-a-conditional-rule.title.md)
+ [

# 使用條件式規則
](using-conditional-rules.md)

# 依預設隱藏視覺效果
<a name="hiding-a-visual-by-default.title"></a>

在**屬性**窗格的**互動**窗格中，您可以選擇預設隱藏視覺效果。如果您希望檢視者只能根據特定條件查看視覺效果，則這樣做會很有用。

**若要依預設隱藏視覺效果**

1. 在快速首頁中，選擇**分析**，然後選擇您要自訂的分析。

1. 選擇您要新增規則的視覺效果。

1. 在視覺效果右上方的選單上，選擇**屬性**。

1. 在開啟的**屬性**窗格中，選擇**互動**並開啟**規則**下拉式清單。

1. 在**規則**選單中，選擇**預設為隱藏此視覺效果**。

隱藏的視覺效果會完全隱藏於檢視儀表板中。在**分析**窗格中，隱藏的視覺效果會顯示「根據規則隱藏」訊息。透過此顯示，您可以查看儀表板所有視覺效果的位置。

**注意**  
您無法建立條件式規則來隱藏預設情況下已隱藏的視覺效果，或顯示預設情況下已顯示之視覺效果。如果您變更視覺效果的預設外觀，則會停用與新預設外觀相衝突的現有規則。

# 設定條件式規則
<a name="setting-a-conditional-rule.title"></a>

當您設定條件式規則時，您會建立條件陳述式，在符合特定條件時隱藏或顯示視覺效果。您目前可以建立隱藏或顯示視覺效果的條件式規則。如果您想要建立讓隱藏視覺效果顯示的條件式規則，請在**屬性**窗格的**規則**選單中選擇**預設為隱藏此視覺效果**。

**注意**  
在開始之前，請先建立參數和對應的參數控制項，以便以新條件式規則為基礎。支援的參數為字串參數和數字參數。如需參數和參數控制項的詳細資訊，請參閱 [Amazon Quick 中的參數](parameters-in-quicksight.md)。

**若要設定條件式規則**

1. 在快速首頁中，選擇**分析**，然後選擇您要自訂的分析。

1. 選擇您要新增規則的視覺效果。

1. 在視覺效果右上方的選單上，選擇**屬性**。

1. 在左側顯示的**屬性**窗格中，選擇**互動**，然後選擇**規則**。

1. 選擇**新增規則**。

1. 在**新增規則**窗格的第一個選單中，選擇所需的參數。

1. 在**新增規則**窗格的第二個選單中，選擇您要的條件。對於字串參數，支援的條件為**等於**、**開頭為**、**包含**和**不等於**。對於數字參數，支援的條件為**等於**、**開頭為**、**包含**和**不等於**。

1. 輸入您希望條件式規則符合的值。
**注意**  
值區分大小寫。

1. 選擇**新增規則**，將新的條件式規則套用至視覺效果。若要取消規則，請選擇**取消**。

條件式規則也可以編輯和刪除。

**若要編輯條件式規則**

1. 在視覺效果右上方的選單上，選擇**屬性**。

1. 在左側顯示的**屬性**窗格中，選擇**互動**，然後選擇**規則**。

1. 選擇要編輯之規則右側的選單圖示，然後選擇**編輯**。

1. 視需要進行變更，然後按一下**儲存**。

**若要刪除條件式規則**

1. 在視覺效果右上方的選單上，選擇**屬性**。

1. 在左側顯示的**屬性**窗格中，選擇**互動**，然後選擇**規則**。

1. 選擇要編輯之規則右側的選單圖示，然後選擇**刪除**。

# 使用條件式規則
<a name="using-conditional-rules"></a>

設定連接至參數和參數控制項的條件式規則後，您可以使用參數控制項來啟用或停用已設定的條件式規則。

**若要啟用條件式規則**

1. 在快速首頁中，選擇**分析**，然後選擇您要自訂的分析。

1. 在工作區頂端的**控制項**列上，選擇下拉式清單圖示。

1. 選擇與您建立之條件式規則相關聯的參數控制項。

1. 選擇與您從參數選單建立的條件式規則相關聯的值。您也可以在**搜尋數值**方塊中輸入所需的值。
**注意**  
值區分大小寫。

   選取正確的值會導致視覺效果顯示或消失，取決於您設定的規則。

您也可以將參數控制項帶入視覺效果所在的工作表。當您希望參數控制項位於與其關聯的視覺效果旁邊，或者當您想要將條件式規則新增至控制項，使其僅在符合特定條件時才顯示時，此選項非常有用。

**若要將參數控制項帶入工作表**

1. 在快速首頁中，選擇**分析**，然後選擇您要自訂的分析。

1. 在工作區頂端的**控制項**列上，選擇您要移動的控制項。

1. 在控制項的右上角，開啟**選單選項**選單。

1. 選擇**移至工作表**。

**若要將參數控制項移回控制列**

1. 在儀表板上，選取要移動的參數控制項。

1. 在控制項的右上角，開啟**選單選項**選單。

1. 選擇**移至工作表頂部**。

# Amazon Quick 中的參數
<a name="parameters-in-quicksight"></a>

*參數*是具名變數，可以傳輸供動作或物件使用的值。透過使用參數，您可建立更簡單的方法，讓儀表板使用者能以較淺顯易懂的方式與儀表板功能互動。參數也可以將某個儀表板連接到另一個，讓使用者能夠深入探索不同分析中的資料。

例如，儀表板使用者可以使用清單來選擇一個值。該值會設定一個參數，接著對選擇的值設定一個篩選條件、計算或 URL 動作。然後，儀表板中的視覺效果會回應使用者的選擇。

若要讓儀表板檢視者可以存取參數，請新增參數控制項。您可以設定階層式控制項，以便某個控制項中的選擇可以篩選另一個控制項中顯示的選項。控制項可以選項清單、滑桿或文字輸入區域形式出現。如果您未建立控制項，則仍可將一值傳遞至您在儀表板 URL 中的參數。

若要讓參數運作，無論其是否具有相關控制項，都需要將其連接至分析中的某項。您可以在下列項目中參考參數：
+ 計算欄位 (多值參數除外)
+ 篩選條件
+ 儀表板和分析 URL
+ 動作
+ 整個分析過程中的標題和描述

一些您可以使用參數的方式如下：
+ 您可以使用計算來轉換分析中顯示的資料。
+ 如果您將具有篩選條件的控制項新增至您正要發布的分析，則儀表板使用者可以篩選資料，無需建立自己的篩選條件。
+ 您可以使用控制項和自訂動作，讓儀表板使用者設定 URL 動作的值。

**Topics**
+ [

# 在 Amazon Quick 中設定參數
](parameters-set-up.md)
+ [

# 在 Amazon Quick 中使用具有參數的控制項
](parameters-controls.md)
+ [

# 在 Amazon Quick 中建立參數預設值
](parameters-default-values.md)
+ [

# 連線至 Amazon Quick 中的參數
](parameters-connections.md)

# 在 Amazon Quick 中設定參數
<a name="parameters-set-up"></a>

請使用下列程序來建立或編輯基本參數。

**若要建立或編輯基本參數**

1. 選擇要使用的分析，然後決定您想要將哪些欄位參數化。

1. 從頁面頂端的圖示清單中選擇**參數**圖示。

1. 選擇窗格頂部附近的加號 (**\$1 新增**) 來新增參數。

   編輯現有的參數，方法是先選擇參數名稱附近的 `v` 形圖示，然後選擇 **Edit parameter (編輯參數)**。

1. 對於**名稱**，輸入參數的英數值。

1. 針對**資料類型**，選擇**字串**、**數字**、**整數**或**日期時間**，然後完成下列步驟。
   + 如果您選擇**字串**、**數字**或**整數**，請執行下列動作：

     1. 對於**值**，請選擇**單一值**或**多個值**。

        為只能包含一個值的參數選擇單一值選項。為可以包含一個或多個值的參數選擇多個值選項。多值參數不得為 `datetime` 資料類型。其亦不支援動態預設值。

        若要將現有的參數從單一值切換為多個值或反向切換，請刪除並重新建立該參數。

     1. (選用) 對於**靜態預設值**或**多個靜態預設值**，請輸入一或多個值。

        如果未提供動態預設值或 URL 參數，則在載入第一個頁面期間即會使用此靜態值類型。

     1. (選用) 選擇**預設顯示為空白**。

        選取此選項可將多值清單的預設值顯示為空白。此選項僅適用於多值參數。
   + 如果您選擇**日期時間**，請執行下列動作：

     1. 對於**時間精細程度**，請選擇**日**、**小時**、**分鐘**或**秒**。

     1. 針對**預設日期**，選取**固定日期**或**相對日期**，然後執行下列動作：
        + 如果您選取**固定日期**，請使用日期和時間選擇器輸入日期和時間。
        + 如果您選取**相對日期**，請選擇滾動日期。您可以選擇**今天**、**昨天**，也可以指定**篩選條件** (「開頭」或「結束」)、**範圍** (這個、上一個或下一個) 和**期間** (年、季、月、週或日)。

1. (選用) 選擇**設定動態預設值**，來建立使用者特定的預設值。

   *動態預設值*是載入儀表板的第一個頁面時每個使用者的預設值。使用動態預設值可為每位使用者建立個人化檢視。

   計算欄位無法用做動態預設值。

   動態預設值不會防止使用者選取不同的值。如果您想要保護資料，則可以新增資料列層級鎖定。如需詳細資訊，請參閱[透過以使用者為基礎的規則使用資料列層級安全來限制對資料集的存取使用以使用者為基礎的規則](restrict-access-to-a-data-set-using-row-level-security.md)。

   此選項僅限於選擇單一值參數時才會出現。多值參數不能有動態預設值。
**注意**  
如果您選擇了多值參數，畫面將會變更而移除預設選項。反之，您會看到內文為 **Enter values you want to use for this control (輸入要用於此控制項的數值)** 的方塊。您可以在該方塊中輸入多個值，每個值各佔一行。這些值會做為參數控制項的預設選定值。此處的值將與您所選擇為參數控制項輸入的內容進行聯集。如需參數控制項的詳細資訊，請參閱[參數控制項](parameters-controls.md)。

1. (選用) 設定保留值以決定**全部選取**值。參數的**「保留值」是當您選擇**全部選取**作為參數值時，指定給參數的值。當您為參數設定特定的保留值時，不會再將該值視為資料集中的有效參數值。保留值無法用於任何**「參數取用者」，例如篩選條件、控制項和計算欄位以及自訂動作。此外，它不會出現在參數控制項清單中。您可以從**建議值**、**Null** 和**自訂值**中選擇。**建議值**是預設值。如果您選擇**建議值**，則會根據值類型將保留值設定為下列值：
   + 字串：`"ALL_VALUES"`
   + 數字：`"Long.MIN_VALUE"-9,223,372,036,854,775,808`
   + 整數：`Int.MIN_VALUE"-2147483648`

   若要在新參數中設定保留值，請在**建立新參數**頁面或**編輯參數**頁面中選擇**進階設定**下拉式清單，然後選取您要的值。

1. 選擇 **Create (建立)** 或 **Update (更新)** 來完成建立或更新參數。

在建立參數之後，您可以採用各種方式使用它。您可以建立控制項 (例如按鈕)，以便能夠為您的參數選擇一值。如需詳細資訊，請參閱下列區段。

# 在 Amazon Quick 中使用具有參數的控制項
<a name="parameters-controls"></a>

在儀表板中，參數控制項會出現在資料表的頂部，其中包含一組視覺效果。提供控制項可讓使用者選擇要在預先定義的篩選條件 或 URL 動作中使用的值。使用者可以使用控制項，在儀表板上的所有視覺效果資料集之中套用篩選條件，而不必自行建立篩選條件。

適用的規定如下：
+ 若要建立或編輯參數的控制項，請確定該參數存在。
+ 多選清單控制項與分析 URL、儀表板 URL、自訂動作和自訂篩選條件相容。篩選條件必須等於或不等於提供的值。不支援其他比較。
+ 清單最多可顯示 1,000 個值。如果有超過 1,000 個不同值，則會出現一個搜尋方塊，以便您篩選清單。當篩選清單中包含的值小於 1,001 時，清單的內容會顯示為行項目。
+ **Style (樣式)** 選項只會顯示適用於參數的資料類型和單一值或多值設定的樣式類型。若您想要使用的樣式不在清單中，可以透過適當的設定重新建立該參數，然後再試一次。
+ 如果您的參數連結至資料集欄位，則其必須是實際欄位。不支援計算欄位。
+ 除非有 1,000 個以上的相異值，否則在控制項中，這些值依字母順序顯示。控制項接著會顯示搜尋方塊。每次您想要搜尋值時，即啟動新的查詢。如果結果包含 1,000 個以上的值，您可以使用分頁捲動值。支援萬用字元搜尋。若要進一步了解萬用字元搜尋，請參閱 [使用字元搜尋](search-filter.md#search-filter-wildcard)。

請使用下列程序來建立或編輯現有參數的控制項。

**若要為現有的參數建立或編輯控制項**

1. 選擇現有參數的內容功能表、參數名稱附近的 `v` 圖示，然後選擇 ** Add control (新增控制項)**。

1. 輸入名稱以賦予新的控制項一個標籤。此標籤會顯示在工作區項部，而且稍後會顯示在儀表板顯示所在之資料表的頂部。

1. 從下列樣式中選擇控制項的樣式：
   + **文字欄位**

     文字欄位允許您輸入自己的值。文字欄位使用數字和文字 (字串)。
   + **文字欄位 - 多行**

     多行文字欄位可讓您輸入自己的值。使用此選項，您可以選擇使用換行符號、逗號、直線 (\$1) 或分號對您輸入到參數控制項中的值進行分隔。文字欄位使用數字和文字 (字串)。
   + **下拉式清單**

     可用來選取單一值的下拉式清單控制項。此類清單使用數字和文字 (字串)。
   + **下拉式清單 - 多選**

     可用於選取多個值的清單控制項。此類清單使用數字和文字 (字串)。
   + **清單**

     可用於選取單一值的清單控制項。此類清單使用數字和文字 (字串)。
   + **清單 - 多選**

     可用於選取多個值的清單控制項。此類清單使用數字和文字 (字串)。
   + **滑桿 (Slider)**

     滑桿可讓您將控制項從列的一端滑至另一端來選取一個數值。滑桿使用數字。
   + **Date-picker (日期選擇器)**

     使用日期選擇器，您可以從行事曆控制項中選擇日期。當您選擇新增日期選擇器控制項時，您可以自訂如何格式化控制項中的日期。若要執行此作業，請針對**日期格式**，使用 [在 Quick 中自訂日期格式](format-visual-date-controls.md) 中所述的記號輸入您想要的日期格式。

1. (選用) 如果您選擇下拉式清單控制項，則畫面會展開，因此您可以選擇要顯示的值。您可以指定值清單，或使用資料集中的欄位。選擇下列其中一項：
   + **Specific values (特定值)**

     若要建立特定值的清單，請一行輸入一個特定值，沒有分隔空格或逗號，如以下螢幕擷取畫面所示。

     在控制項中，這些值會依字母順序顯示，而不是依您輸入它們的順序顯示。
   + **Link to a data set field (連結到資料集欄位)**

     若要連結到欄位，請選擇包含您欄位的資料集，然後從清單中選擇欄位。

     如果您變更參數中的預設值，請選擇控制項上的 **Reset (重設)** 來顯示新值。

   您在此處所選擇的值將與參數設定中的靜態預設值進行聯集。

1. (選用) 如果參數已設定預設值，則啓用選項**「隱藏控制項值中的「全部」選項」**。這樣做只會顯示資料值，並移除選項以選取控制項中的所有項目。如未設定參數的靜態預設值，此選項將無法運作。您可以選擇參數，然後選取 **Edit parameter (編輯參數)**，在新增控制項後新增預設值。

1. (選用) 您可以限制控制項中顯示的值，以便它們只顯示對其他控制項中選取之項目有效的值。這稱為階層式控制項。

   若要建立一個，請選擇 **Show relevant values only (僅顯示相關值)**。選擇一或多個可以變更此控制項中所顯示項目的控制項。

   建立串聯式控制項時，會套用下列限制。
   + 串聯控制項必須繫結至相同資料集中的資料集資料欄。
   + 子控制項必須是下拉清單或清單控制項。
   + 對於參數控制項，子控制項必須連結至資料集資料欄。
   + 對於篩選條件控制項，子控制項必須鏈接到篩選條件 (而不是僅顯示特定值)。
   + 父控制項必須是下列其中一種。
     + 字串、整數或數值參數控制項。
     + 字串篩選控制項 (不包括「上下」篩選條件)。
     + 非彙總的數字篩選控制項。
     + 日期篩選控制項 (不包括「上下」篩選條件)。

1. 當您為控制項完成選擇選項時，請選擇 **Add (新增)**。

完成的控制項會出現在工作區的頂部。形狀類似 `v` 的內容功能表會提供四個選項：
+ **Reset (重設)** 可將使用者的選擇還原為其預設狀態。
+ **重新整理清單**僅適用於連結到資料集內欄位的下拉式清單。選擇 **Refresh list (重新整理清單) ** 可查詢資料來檢查變更。控制項中使用的資料會進行快取。
+ **Edit (編輯)** 可重新開啟控制項建立畫面，以便您可以變更設定。

  開啟**編輯控制項**窗格後，您可以點選不同的視覺效果和控制項以檢視特定視覺效果或控制項的格式化資料。如需格式化視覺效果的詳細資訊，請參閱 [在 Amazon Quick 中格式化](formatting-a-visual.md)。
+ **Delete (刪除)** 可控制項。您可以選擇參數內容功能表來重新建立它。

在工作區中，您也可以調整控制項的大小和重新排列控制項。儀表板使用者會看到控制項如您所做的樣子，但無法編輯或刪除它們。

# 在 Amazon Quick 中建立參數預設值
<a name="parameters-default-values"></a>

使用本節來進一步了解可以使用哪些類型的參數預設值，以及如何設定各個參數預設值。

每個欄位都可以有一個參數和一個與其關聯的控制項。當有人檢視儀表板或電子郵件報告時，任何已設定靜態預設值的工作表控制項都會使用靜態預設值。預設值可以變更資料的篩選方式、自訂動作的行為方式，以及動態工作表標題中顯示的文字。電子郵件報告也支援動態預設值。

最簡單的預設值是靜態 (不變) 預設值，它向每個人顯示相同的值。身為儀表板的設計者，您可以選擇預設值。儀表板的使用者無法變更。但是，該人員可以從控制項中選擇任何值。設定預設值並不會變更這一點。若要限制人員可以選取的值，請考慮使用資料列層級安全性。如需詳細資訊，請參閱[透過以使用者為基礎的規則使用資料列層級安全來限制對資料集的存取使用以使用者為基礎的規則](restrict-access-to-a-data-set-using-row-level-security.md)。

**若要建立或編輯，適用於每個人的儀表板檢視的靜態預設值**

1. 依您想要編輯的參數選擇內容選單 (`v`)，或遵循 [在 Amazon Quick 中設定參數](parameters-set-up.md) 中的步驟來建立新的參數。

1. 在**靜態預設值**中輸入值以設定靜態預設值。

若要根據檢視儀表板之人員顯示不同的預設值，請建立動態預設參數 (DDP)。使用動態預設值需要一些準備，將人員映射至其指派的預設值。首先，您需要建立資料庫查詢或資料檔案，其中包含要顯示之人員、欄位和預設值的相關資訊。您可以將其新增至資料集中，然後將資料集新增至分析中。接下來，您可以尋找可用來收集資訊、建立資料集，以及將動態預設值新增至參數的程序。

為動態預設值建立資料集時，請遵循下列指引：
+ 建議您使用單一資料集來包含使用者或群組邏輯分組的所有動態預設定義。如果可以的話，請將它們保留在單一資料表或檔案中。
+ 也建議您資料集中的欄位名稱與分析中的欄位名稱盡量相似。並非所有資料集欄位都需要成為分析的一部分，例如，如果您正在多個儀表板中為預設值使用相同的資料集。欄位可以是任意順序的。
+ 不建議您將使用者和群組名稱合併在相同的資料欄中，甚至是在相同的資料集中。這種配置將需要更多的工作來進行維護和疑難排解。
+ 如果您使用逗號分隔的檔案來建立資料集，則請務必移除檔案中值之間的任何空格。下列範例顯示了正確的逗號分隔值 (CSV) 格式。以單引號或雙引號括住包含非英數字元 (例如空格、單引號等) 的文字 (字串)。您可以用引號括住日期或時間的欄位，但這並非必要動作。您可以用引號括住數字欄位，例如，如果數字包含特殊字元，如下所示。

  ```
  "Value includes spaces","Field contains ' other characters",12345.6789,"20200808"
  ValueWithoutSpaces,"1000,67","Value 3",2020-AUG-08
  ```
+ 建立資料集之後，請務必仔細檢查 Quick 為欄位選取的資料類型。

在開始之前，您需要使用動態預設值的使用者或群組名稱的清單。若要產生使用者或群組的清單，您可以使用 AWS CLI 來取得資訊。若要執行 CLI 命令，請確認您已經安裝及設定 AWS CLI 。如需詳細資訊，請參閱「AWS CLI 使用者指南」**中的[安裝 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html)。

這只是如何取得使用者名稱或群組名稱清單的其中一個範例。使用最適合您的任何方法。

**若要識別適合動態預設參數 (DDP) 的人員**
+ 列出個別使用者名稱或群組名稱：
  + 若要列出個別使用者名稱，請加入可識別 DDP 人員的資料欄。此欄應包含每個人的系統使用者名稱，用於從您的身分提供者連線至 Quick。此使用者名稱通常與 @ 符號前的人員的電子郵件別名相同，但並非總是如此。

    若要取得使用者清單，請使用 [ListUsers](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_ListUsers.html) Quick API 操作或 AWS CLI 命令。CLI 命令如下列範例所示。為您的身分提供者指定 AWS 區域 ，例如 `us-east-1`。

    ```
    awsacct1="111111111111"
    namespace="default"
    region="us-east-1"
    
    aws quicksight list-users --aws-account-id $awsacct1 --namespace $namespace --region $region
    ```

    下列範例會加入將結果限制為作用中使用者的查詢，以變更前一個命令。

    ```
    awsacct1="111111111111"
    namespace="default"
    region="us-east-1"
    
    aws quicksight list-users --aws-account-id $awsacct1 --namespace $namespace --region $region --query 'UserList[?Active==`true`]'
    ```

    得到的結果看起來類似以下範例。此範例摘自 JSON 輸出 (`--output json`)。擁有聯合身分使用者名稱的人員擁有以單字 `federated` 開頭的主體 ID。

    ```
    [
        {
            "Arn": "arn:aws:quicksight:us-east-1:111111111111:user/default/anacasilva",
            "UserName": "anacarolinasilva",
            "Email": "anacasilva@example.com",
            "Role": "ADMIN",
            "Active": true,
            "PrincipalId": "federated/iam/AIDAJ64EIEIOPX5CEIEIO"
        },
        {
            "Arn": "arn:aws:quicksight:us-east-1:111111111111:user/default/Reader/liujie-stargate",
            "UserName": "Reader/liujie-stargate",
            "Role": "READER",
            "Active": true,
            "PrincipalId": "federated/iam/AROAIJSEIEIOMXTZEIEIO:liujie-stargate"
        },
        {
            "Arn": "arn:aws:quicksight:us-east-1:111111111111:user/default/embedding/cxoportal",
            "UserName": "embedding/cxoportal",
            "Email": "saanvisarkar@example.com",
            "Role": "AUTHOR",
            "Active": true,
            "PrincipalId": "federated/iam/AROAJTGEIEIOWB6BEIEIO:cxoportal"
        },
        {
            "Arn": "arn:aws:quicksight:us-east-1:111111111111:user/default/zhangwei@example.com",
            "UserName": "zhangwei@example.com",
            "Email": "zhangwei@example.com",
            "Role": "AUTHOR",
            "Active": true,
            "PrincipalId": "user/d-96123-example-id-1123"
        }
    ]
    ```
  + 若要列出群組名稱，請加入資料欄，以識別包含 DDP 使用者名稱的群組。此欄應包含用於從您的身分提供者連線至 Quick 的系統群組名稱。若要識別您可以新增至資料集的群組，請使用下列一或多個快速 API 操作或 CLI 命令：
    + [ListGroups](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_ListGroups.html) – 列出包含您的身分提供者之 的 AWS 帳戶 ID 和命名空間 AWS 區域 的快速群組。
    + [ListGroupMemberships](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_ListGroupMemberships.html) – 列出指定 Quick 群組中的使用者。
    + [ListUserGroups](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_ListUserGroups.html) – 列出 Quick 使用者所屬的 Quick 群組。

    或者，您可以要求網路管理員查詢您的身分提供者以取得此資訊。

接下來的兩個程序會提供如何完成建立動態預設值之資料集的指示。第一個程序是為單值 DDP 建立資料集。第二個是為多值 DDP 建立資料集。

**若要建立單值 DDP 的資料集**

1. 使用單值參數建立資料集資料欄。查詢或檔案中的第一欄應適用於使用儀表板的人員。此欄位可以包含使用者名稱或群組名稱。不過， 群組的支援僅適用於 Quick Enterprise Edition。

1. 針對每個顯示單值參數動態預設值的欄位，將資料欄新增至資料集。資料欄的名稱並不重要，您可以使用與欄位或參數相同的名稱。

   如果使用者實體和動態預設值的組合對該參數的欄位而言是唯一的，則單值參數才能正常運作。如果使用者實體的預設欄位有多個值，則該欄位的單一值控制項會改為顯示靜態預設值。如果未定義靜態預設值，則控制項不會顯示預設值。如果您使用群組名稱，則請務必小心，因為某些使用者名稱可能是多個群組的成員。如果這些群組具有不同的預設值，則此類型的使用者名稱會當做重複項目運作。

   下列範例顯示包含兩個單值參數的資料表。我們這樣假設是因為沒有使用者名稱與多個預設值配對。為了使此表更易於理解，我們在分析中的字段名稱前面新增單字 `'default'`。因此，您可以透過下列陳述式、變更每個資料列的值來讀取資料表：由 `anacarolinasilva` 檢視時，控制項會顯示預設區域 `NorthEast` 與預設區段 `SMB`。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/parameters-default-values.html)

1. 將此資料匯入 Quick，並將其儲存為新資料集。

1. 在分析中，新增您建立的資料集。分析需要至少使用一個與您為預設值定義之資料欄相符的其他資料集。如需詳細資訊，請參閱[將資料集新增至分析](adding-a-data-set-to-an-analysis.md)。

**若要建立多值 DDP 的資料集**

1. 使用多值參數建立資料集資料欄。查詢或檔案中的第一欄應適用於使用儀表板的人員。此欄位可以包含使用者名稱或群組名稱。不過， 群組的支援僅適用於 Quick Enterprise Edition。

1. 針對每個顯示多值參數動態預設值的欄位，將資料欄新增至資料集。資料欄的名稱並不重要，您可以使用與欄位或參數相同的名稱。

   與單值參數不同，多值參數允許在與參數相關聯的欄位中使用多個值。

   下列範例顯示包含一個單值參數和一個多值參數的資料表。我們可以進行此假設，因為每個使用者名稱在一個資料欄中都有唯一的值，並且某些使用者名稱在另一資料欄中具有多個值。為了使此表更易於理解，我們在分析中的字段名稱前面新增單字 `'default'`。因此，您可以透過建立下列陳述式、變更每一列的值來讀取資料表：如果 `viewed-by` 是 `liujie`，控制項會顯示 `default-region` 的值 `SouthEast`，以及 `default-city` 的值 `Atlanta`。如果我們提前讀一列，就會看到，`liujie` 在 `default-city` 中還有 `Raleigh`。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/parameters-default-values.html)

   在此範例中，無論是單值還是多值參數，我們套用 `default-region` 的參數都能正常運作。如果它是單值參數，則兩個項目適用於一個使用者，因為兩個項目有相同的值 `SouthEast`。如果它是多值參數，它仍然有效，除了預設情況下只選擇一個值。但是，如果我們將使用 `default-city` 作為其預設值的參數從多值變更為單值參數，則不會看到選取這些預設值。相反地，參數會使用靜態預設值 (如果有定義的話)。例如，如果靜態預設值設定為 `Atlanta`，則已在該控制項中為 `liujie` 選取 `Atlanta`，但未選取 `Raleigh`。

   在某些情況下，您的靜態預設值也可能會用作動態預設值。如果是這樣，請務必測試使用者名稱的控制項，確保其不使用兩者皆可同時使用的預設值。

   如果使用者名稱屬於多個群組，則具名使用者會看到一組預設值，這是兩個群組預設值的聯集。

1. 將此資料匯入 Quick，並將其儲存為新資料集。

1. 在分析中，新增您建立的資料集。分析需要至少使用一個與您為預設值定義之資料欄相符的其他資料集。如需詳細資訊，請參閱[將資料集新增至分析](adding-a-data-set-to-an-analysis.md)。

使用以下程序，將動態預設參數新增至分析。開始之前，請確定您有資料集，且其中包含每個使用者名稱或群組名稱的動態預設值。此外，請確定您的分析正在使用此資料集。如需這些需求的說明，請參閱前面的程序。

**若要將 DDP 新增至您的分析**

1. 在快速主控台中，選擇頁面頂端的**參數**圖示，然後選擇現有的參數。從參數選單中選擇**編輯參數**。若要新增參數，請選擇**參數**附近的加號 (`+`)。

1. 選擇 **Set a dynamic default (設定動態預設值)**。

1. 使用您的設定配置以下選項：
   + **Dataset with default values and user information** – 選擇您建立並新增至分析的資料集。
   + **使用者名稱資料欄** – 若要建立以使用者名稱為基礎的預設值，請在資料集中選擇包含使用者名稱的資料欄。
   + **群組名稱資料欄** – 若要建立以群組名稱為基礎的預設值，請在資料集中選擇包含群組名稱的資料欄。
   + **適用於預設值的資料欄** – 選擇包含此參數預設值的資料欄。

1. 選擇**套用**以儲存設定變更，然後選擇**更新**以儲存參數變更。若要退出而不儲存變更，則請選擇**取消**。

1. 為每個包含動態預設值的欄位新增篩選條件，以使預設值正常運作。若要進一步了解如何使用篩選條件與參數搭配，請參閱 [在 Amazon Quick 中使用具有參數的篩選條件](parameters-filtering-by.md)

   Amazon Quick 會針對其使用者名稱不存在於資料集、未指派預設值，或沒有唯一預設值的任何人使用靜態預設值。每個人只能有一組預設值。若您不想使用動態預設值，則可以設定靜態預設值。

# 連線至 Amazon Quick 中的參數
<a name="parameters-connections"></a>

在已設定參數之後，請使用本節來連接它並使其運作。

在建立參數之後，您可以建立參數的消費者。「參數使用者」**是使用參數值的元件，例如篩選條件、控制項、計算欄位或自訂動作。

您可以改採另一種方式導覽至上述各個選項，如下所示：
+ 若要建立篩選條件，請選擇頁面頂端的**篩選條件**圖示。簡言之，您將建立 **Custom Filter (自訂篩選條件)** 並啟用 **Use parameters (使用參數)**。清單中只會顯示合格的參數。
+ 若要為 參數新增控制項，請選擇頁面頂端的**參數**圖示。簡言之，您將選擇所需參數，然後選擇 **Add control (新增控制項)**。
+ 若要在計算欄位內使用參數，請編輯現有的計算欄位，或是選擇左上方的 **Add (新增)** 以進行新增。參數清單將顯示於欄位清單下方。
**注意**  
多值參數不能用於計算欄位。
+ 若要建立 URL 動作，請從視覺效果上選擇 **v** 形功能表，然後選擇 **URL Actions (URL 動作)**。

如需上述個別主題的詳細資訊，請參閱以下各節。

**Topics**
+ [使用篩選條件與參數搭配](parameters-filtering-by.md)
+ [使用計算欄位與參數搭配](parameters-calculated-fields.md)
+ [搭配參數使用自訂動作](parameters-custom-actions.md)
+ [URL 中的參數](parameters-in-a-url.md)
+ [標題和說明中的參數](parameters-in-titles.md)

# 在 Amazon Quick 中使用具有參數的篩選條件
<a name="parameters-filtering-by"></a>

遵循本節所述步驟，依單一值參數值篩選分析或儀表板中的資料。若要使用多值參數，亦即搭配複選下拉清單控制項的參數，請建立等於 (或不等於) 其值的自訂篩選條件。

在使用篩選條件與參數搭配之前，您應該已經知道如何使用篩選條件。

1. 確認您的分析已建立參數。從參數或控制項的選單中選擇**編輯**，以了解正在使用哪些設定。

1. 從畫面左側選擇 **Filter (篩選條件)** 窗格。如果已有一個篩選條件用於您想要使用的欄位，請選擇它來開放其設定。否則，為您要依參數篩選的欄位建立一個篩選條件。

1. 選擇 **Use Parameters (使用參數)**。

1. 從 **Use parameters (使用參數)** 下方的一個或多個清單中選擇您的參數。對於文字 (字串) 欄位，先選擇 **Custom Filter (自訂篩選條件)**，然後啟用 **Use Parameters (使用參數)**。

   對於日期欄位，選擇 **Start date (開始日期)** 和 **End date (結束日期)** 參數，如下列螢幕擷取畫面所示。

   對於其有其他資料類型的欄位，選擇 **Select a parameter (選取參數)**，然後從清單中選擇您的參數。
**注意**  
能夠容納多個值的參數必須使用等於或不等於做為比較類型。

1. 選擇 **Apply (套用)** 來儲存您的變更。

選擇分析頂部附近的控制項來測試您的新篩選條件。在此範例中，我們使用沒有預設值的基本參數，以及連結到**區域**欄位的動態控制項，而此欄位位於名為 **Sales Pipeline** 的範例資料集中。此控制項會查詢資料，傳回所有值。

如果刪除或重新建立您在篩選條件中使用的參數，則您可以使用新參數來更新篩選條件。若要這樣做，請開啟篩選條件、選擇您想要使用的新參數，然後選擇 **Apply (套用)**。

如果您重新命名參數，則不需要更新篩選條件或任何其他消費者。

# 在 Amazon Quick 中使用計算欄位搭配參數
<a name="parameters-calculated-fields"></a>

您可以將參數值傳遞給分析中的計算欄位。當您建立計算時，您可以從 **Parameter list (參數清單)** 下的參數清單中選擇現有參數。您無法建立含有多值參數 (其將使用複選下拉式控制項) 的計算欄位。

對於公式，您可以使用任何可用的函數。您可以將檢視者的選擇從參數控制項傳遞給 `ifElse` 函數。之後，您會得到一個指標。下列顯示一個範例。

```
ifelse(

${KPIMetric} = 'Sales',sum({Weighted Revenue}),

${KPIMetric} = 'Forecast',sum({Forecasted Monthly Revenue}),

${KPIMetric} = '# Active', distinct_count(ActiveItem),

NULL

)
```

上述範例會建立您可以在欄位中適當地使用的指標 (小數)。然後，當使用者從參數控制項中選擇一值時，視覺效果會更新以反映他們的選擇。

# 在 Amazon Quick 中使用具有參數的自訂動作
<a name="parameters-custom-actions"></a>

「自訂動作」**可讓您在視覺效果中選取一個資料點，或是從內容選單中選擇動作名稱，來啟動 URL 或篩選視覺效果。當您搭配參數使用 URL 動作時，您可以傳遞或動態傳送參數至 URL。若要使此作業運作，您可以設定參數，然後在您使用 **URL action (URL 動作)** 動作類型建立自訂動作時，在 URL 中使用該參數。傳送端和接收端上的參數必須具有相符的名稱和資料類型。所有參數都與 URL 動作相容。

如需建立 URL 動作的詳細資訊，請參閱 [在 Amazon Quick Sight 中建立和編輯自訂動作](custom-actions.md)。如果您只想要在連結中使用參數，而不建立 URL 動作，請參閱[在 URL 中使用參數](parameters-in-a-url.md)。

# 在 URL 中使用參數
<a name="parameters-in-a-url"></a>

您可以在 Amazon Quick 的 URL 中使用參數名稱和值，在儀表板或分析中設定該參數的預設值。

以下範例顯示由某個儀表板的 URL 為另一個儀表板設定參數。

```
https://us-east-2.quicksight.aws.amazon.com/sn/dashboards/abc123-abc1-abc2-abc3-abcdefef1234#p.myParameter=12345
```

在上述範例中，第一個部分是目標儀表板的連結：`https://us-east-2.quicksight.aws.amazon.com/sn/dashboards/abc123-abc1-abc2-abc3-abcdefef1234`。井字號 (`#)` 接在第一部分後面，以引進*片段*，其中包含您想要設定的數值。

 AWS 伺服器不會接收或記錄片段中的值。此功能可讓您的資料值更為安全。

`#` 之後的片段遵循下列規則：
+ 參數的字首為 `p.`。其名稱是參數名稱，而非控制項名稱。您可透過開啟分析並由左側列選擇 **Parameter (參數)** 以檢視參數名稱。
+ 值是使用等號 (`=`) 進行設定。適用的規定如下：
  + 常值不會使用引號。
  + 數值內的空格將由瀏覽器自動進行編碼，所以您手動建立 URL 時無須使用逸出字元。
  + 若要傳回全部的值，請將參數設為等於 `"[ALL]"`。
  + 若要將參數的值指派給 `null`，請將它設為等於 `%00`。例如 `p.population=%00`。
  + 在自訂動作中，目標參數名稱會以 `$` 開頭，例如：`<<$passThroughParameter>>`
  + 在自訂動作中，參數值會伴隨角括弧 `<< >>` 顯示，例如 `<<dashboardParameter1>>`)。儀表板使用者將看到查詢值而不是變數。
+ 對於自訂 URL 動作，多值參數在片段中同一參數只需要一個執行個體，例如：`p.city=<<$city>>`
+ 對於導向 URL，單一參數的多個值在片段中同一參數會有兩個執行個體。如需範例，請參閱下文。
+ `&` 符號可區隔多個參數。如需範例，請參閱下文。

伺服器會將日期轉換成 UTC 並以無時區的字串形式傳送至後端。若要使用國際標準時間 (UTC) 日期，請排除時區。以下是一些可以運作的日期格式範例：
+ `2017-05-29T00%3A00%3A00` 
+ `2018-04-04 14:51 -08:00`
+ `Wed Apr 04 2018 22:51 GMT+0000`

```
https://us-east-2.quicksight.aws.amazon.com/sn/dashboards/abc123-abc1-abc2-abc3-abcdefef1234#p.shipdate=2018-09-30 08:01&p.city=New York&p.city=Seattle&p.teamMember=12&p.percentageRank=2.3
```

在瀏覽器中，此程式碼會變成下列程式碼。

```
https://us-east-2.quicksight.aws.amazon.com/sn/dashboards/abc123-abc1-abc2-abc3-abcdefef1234#p.shipdate=2018-09-30%2008:01&p.city=New%20York&p.city=Seattle&p.teamMember=12&p.percentageRank=2.3
```

上述範例設定四個參數：
+ `shipDate` 是日期參數：`Sept 30, 2018`。
+ `city` 是多值字串參數：`New York` 和 `Seattle`
+ `teamMember` 是整數參數：`12`。
+ `percentageRank` 是小數參數：`2.3`。

以下範例示範如何為接受多個值的參數設定其值。

```
https://us-east-2.quicksight.aws.amazon.com/sn/dashboards/abc123-abc1-abc2-abc3-abcdefef1234#p.MultiParam=WA&p.MultiParam=OR&p.MultiParam=CA
```

若要根據使用者所選資料點，將數值從某個儀表板 (或分析) 傳遞至另一儀表板，請使用自訂 URL 動作。您也可選擇手動產生這類 URL，並將其用於共享特定的資料檢視。

如需建立自訂動作的資訊，請參閱 [使用自訂動作進行篩選和導覽](quicksight-actions.md)。

# 在 Amazon Quick 的標題和描述中使用參數
<a name="parameters-in-titles"></a>

當您在 Amazon Quick 中建立參數時，您可以在圖表和分析的標題和描述中使用它們，以動態顯示參數值。

您可以在分析的下列區域中使用參數：
+ 圖表標題和字幕
+ 軸標題
+ 圖例標題
+ 參數控制項標題
+ 工作表標題和說明

下圖顯示使用參數的圖表標題。

![\[「格式化視覺化效果」窗格的影像，其中包含圖表標題中的參數，以及標題中的參數值以紅色圈出的圖表。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/parameters-in-titles-labels2.png)


使用下列程序來了解如何在整個分析中將參數加入至區域。如需參數及其建立方式的詳細資訊，請參閱 [Parameters](parameters-in-quicksight.md)。

## 為圖表標題和字幕新增參數
<a name="parameters-in-titles-chart-titles"></a>

請使用下列程序來了解如何將參數新增至圖表標題和字幕。

**若要將參數新增至圖表標題或字幕**

1. 為您要格式化的視覺效果開啟**屬性**窗格。

1. 在**屬性**窗格中，選擇**標題**索引標籤。

1. 選擇**顯示標題**或**顯示字幕**。這些選項可能已經被選取。

1. 在**編輯標題**或**編輯字幕**右側選擇三個點，然後從清單中選擇一個參數。

   參數會新增至**屬性**窗格中的標題。在圖表中，參數值會顯示在標題中。

   如需在視覺效果中編輯標題和字幕的詳細資訊，請參閱 [Quick 中視覺效果類型的標題和字幕](customizing-a-visual-title.md)。

## 將參數新增到軸標題
<a name="parameters-in-titles-axis-titles"></a>

使用以下程序，了解如何將參數新增到軸標題。

**若要將參數加入至軸標題**

1. 為您要格式化的視覺效果開啟**屬性**窗格。

1. 在**屬性**窗格中，選擇您要格式化的軸。

1. 選取**顯示標題**。

1. 選擇預設軸標題右側的三個點，然後從清單中選擇參數。

   參數會新增至**屬性**窗格中的軸標題。在圖表中，參數值會顯示在軸標題中。

   如需編輯軸標題的詳細資訊，請參閱 [軸和網格線](showing-hiding-axis-grid-tick.md)。

## 將參數新增到圖例標題
<a name="parameters-in-titles-legend-titles"></a>

使用以下程序，了解如何將參數新增到圖例標題。

**若要將參數加入至圖例標題**

1. 為您要格式化的視覺效果開啟**屬性**窗格。

1. 在**屬性**窗格中選擇**圖例**。

1. 選取**顯示圖例標題**。

1. 選擇**圖例標題**右側的三個點，然後從清單中選擇參數。

   參數會新增至**屬性**窗格中的圖例標題。在圖表中，參數值會顯示在圖例標題中。

   如需格式化這些圖例的詳細資訊，請參閱 [Quick 中視覺效果類型的圖例](customizing-visual-legend.md)。

## 將參數新增到控制項標題
<a name="parameters-in-titles-control-titles"></a>

使用下列程序來了解如何將參數新增至參數控制項標題。

**若要將參數新增至參數控制項標題**

1. 選取您要編輯的參數控制項，選擇參數控制項標題右側的三個點，然後選擇**編輯**。

1. 在開啟的**編輯控制項**頁面中，選取**顯示標題**。

1. 選擇**顯示名稱**右側的三個點，然後從清單中選擇參數。

   參數會加入至參數控制項標題。

   如需使用參數控制項的詳細資訊，請參閱 [參數控制項](parameters-controls.md)。

## 將參數加入到工作表標題和描述
<a name="parameters-in-titles-sheet-titles"></a>

使用下列程序來了解如何將參數加入到分析中的工作表標題和描述。

**若要將參數加入到工作表標題或描述**

1. 在分析頁面，選擇應用程式列中的**工作表**，然後選擇**新增標題**或**新增描述**。

   工作表標題或描述將顯示在工作表上。

1. 對於**表標題**或**描述**，請選擇右側的三個點，然後從清單中選擇參數。

   參數會加入到工作表標題或描述中，當您關閉文字方塊時，參數值會顯示在文字中。

   如需新增工作表標題與描述的詳細資訊，請參閱 [新增分析的標題和描述](adding-a-title-and-description.md)。

# 使用自訂動作進行篩選和導覽
<a name="quicksight-actions"></a>

若要為儀表板訂閱者 （快速讀者） 新增互動式選項，您可以在分析中的一或多個視覺效果上建立自訂動作。透過自訂動作增強儀表板，可協助使用者從資料集中新增更多內容來探索資料。它可以更輕鬆地鑽研詳細信息，並在同一儀表板、不同的儀表板或不同的應用程序中查找新的見解。您最多可以將 10 個自訂動作新增至儀表板中的單個視覺效果。

在開始之前，進行一些計畫會很有幫助。例如，識別適合篩選、開啟其他工作表、開啟 URL 或傳送電子郵件的欄位。針對每個工作表，識別顯示這些欄位的小工具。然後決定哪些小工具將包含動作。建立命名方案，以便在整個分析中保持一致的動作名稱。一致的名稱可讓使用您分析的人員更容易找出將執行什麼動作，此外，這些名稱還可讓您更輕鬆地維護您在整個分析中可能要複製的動作。

動作僅存在於您建立動作的儀表板小工具上，而且它們在小工具的父工作表和其顯示的子欄位的前後關聯中運作。您只能針對特定類型的小工具建立動作：視覺效果和深入解析。您無法將它們新增至其他小工具，例如篩選條件或清單控制項。自訂動作只能從您建立其的小工具啟用。

若要啟用動作，分析的使用者可以在資料點上按一下左鍵 (選取) 或按一下右鍵 (使用關聯式選單)。*資料點*是資料集中的項目，例如折線圖上的點、樞紐分析表中的儲存格、圓餅圖上的切片等。如果人員按一下視覺元素，則會啟動*選取*動作。這是目前為分析中**動作**之**在選取**類別成員的動作。如果該人員改為以滑鼠右鍵按一下視覺元素，他們可以從*選單*動作清單中選擇。列出的任何動作目前都是分析中**動作**之**選單選項**類別的成員。**在選取**類別只能包含一個成員動作。

依預設，您建立的第一個動作會變成選取動作，即可透過按一下滑鼠左鍵啟動的動作。若要從**在選取**類別中移除動作，請將動作的**啟用**設定變更為**選單選項**。儲存變更後，您可以將其他動作的**啟用**設定設為**選取**。

設定動作時，您可以從三種**動作類型**中選擇：
+ **篩選動作** – 篩選視覺效果或整個工作表中包含的資料。依預設，篩選條件適用於父視覺效果中的所有欄位。串聯式篩選條件預設為啟用。篩選動作可以透過使用自動產生的欄位映射，跨多個資料集運作。

  如果分析使用多個資料集，您可以檢視存在於多個資料集之欄位的自動產生欄位映射。若要這樣做，如果您正在編輯動作，您可以在動作設定結尾選擇****檢視欄位映射****。如果您正在檢視動作清單，請從每個動作的選單中選擇****檢視欄位映射****。欄位映射會顯示在新畫面中，顯示初始資料集和視覺效果中所有其他資料集之間的映射。如果沒有自動映射任何欄位，則會顯示包含[映射與聯合欄位](mapping-and-joining-fields.md)連結的訊息。

  
+ **導覽動作** – 啟用相同分析中不同工作表之間的導覽。
+ **URL 動作** – 開啟指向另一個網頁的連結。如果要開啟其他儀表板，請使用 URL 動作。您可以使用 URL 動作將資料點和參數傳送至其他 URL。您可以包括任何可用的欄位或參數。

  如果 URL 使用 `mailto` 配置，執行動作會開啟您的預設電子郵件編輯器。

**Topics**
+ [

# 新增一鍵交互式篩選
](quick-actions.md)
+ [

# 在 Amazon Quick Sight 中建立和編輯自訂動作
](custom-actions.md)
+ [

# 修復自訂動作
](repairing-custom-actions.md)
+ [

# 了解 Amazon Quick Sight 中自訂動作的欄位映射
](quicksight-actions-field-mapping.md)

# 新增一鍵交互式篩選
<a name="quick-actions"></a>

*一鍵式互動篩選*提供從可點選的視覺效果串聯到工作表上的所有其他視覺效果和深入解析的點按篩選。將其新增至您的分析中，從摘要開始，並深入分析指標，所有這些指標都在同一個儀表板工作表中。

在完成設定後，當您按一下資料點 (例如折線圖中的點) 時，您會立即使用該資料表上所有其他視覺效果上的所有映射欄位進行篩選。如果您有多個資料集，所有目標欄位都必須經過映射，此功能才能運作。此外，您只能擁有一個可透過按一下資料點運作的動作；所有其他動作都必須從內容選單進行操作。

使用以下程序，來在分析中建立單鍵篩選條件。

**若要在視覺效果或深入分析上建立一鍵式篩選**

1. 在分析中，選擇您要新增互動式篩選的視覺效果或深入分析。

1. 從右上角的「選單選項」下拉式清單中選擇**動作**。

1. 選擇**篩選相同表的視覺效果**。這會立即新增一鍵式篩選。

1. 為您想要互動的每個視覺效果重複此程序。

# 在 Amazon Quick Sight 中建立和編輯自訂動作
<a name="custom-actions"></a>

您可以為每個要新增至視覺效果的任務建立一個動作。您建立的動作會成為每個視覺效果，或深入分析功能的一部分。

下表定義何時使用每種類型的動作。


|  要執行的動作  |  動作類型  | 
| --- | --- | 
|  新增或自訂互動式篩選動作，包括一鍵式篩選  |  篩選動作  | 
|  在同一儀表板中開啟另一個工作表  |  導覽動作  | 
|  在同一 AWS 帳戶中的不同儀表板中開啟工作表  |  URL 動作  | 
|  開啟 URL (`https`,`http`)  |  URL 動作  | 
|  傳送電子郵件 (`mailto`)  |  URL 動作  | 

您可以為自訂動作設定下列屬性和選項：
+ ****動作名稱**** – 這是您為動作選擇的描述名稱。根據預設，動作會命名為 **Action 1**、**Action 2**，以此類推。如果您的自訂動作是從內容選單啟用的，這個名稱會在您以滑鼠右鍵按一下資料點時，顯示在選單中。

  若要使動作名稱成為動態，您可以將其參數化。使用動作名稱標頭附近的加號圖示，以顯示可用變數的清單。變數會以尖括號 `<< >>` 括住。參數的前綴為 `$`，例如 `<<$parameterName>>`。欄位名稱沒有前綴，例如 `<<fieldName>>`。
+ ****啟用**** – 可用選項包括**選取**或**選單選項**。若要使用動作，您可以*選取*資料點 (以滑鼠左鍵按一下)，或是導覽至內容選單 (以滑鼠右鍵按一下) 中的*選單選項*。導覽內容選單的中間列出的動作和 URL 動作，就在**顏色**選項上方。您也可從視覺效果上的圖例取得由選單啟動的動作。
+ ****動作類型**** – 您希望的動作類型。只有在您選擇動作類型後，才會顯示特定於動作類型的設定。
  + **篩選動作**設定包含下列項目：
    + ****篩選範圍**** – 要篩選的欄位。如要篩選所有欄位，請選擇 **All fields (所有欄位)**。否則，請選擇**選取欄位**，然後關閉您不想用作目標的項目。

      預設值為**所有欄位**。
    + ****目標視覺化效果**** – 要用作目標的儀表板小工具。若要將篩選條件套用至所有視覺效果，請選擇**所有視覺效果**。否則，請選擇**選取視覺化效果**，然後關閉您不想用作目標的項目。當您將篩選動作套用至其他視覺效果時，效果稱為 *cascading filters (串聯篩選條件)*。

      預設值為**全部視覺效果**。

      串聯篩選條件會套用在特定篩選動作**Target visuals (目標視覺效果)** 區段中設定的所有視覺效果。Amazon Quick Sight 一開始會評估您的視覺效果，並為您預先設定設定。但是，如果您願意，可以變更預設值。您可以在相同資料表或分析中的多個視覺效果上設定多個串聯篩選條件。當您使用分析或儀表板時，您可以同時使用多個串聯篩選條件，不過您一次只能啟動其中一個篩選條件。

      篩選動作至少需要一個目標視覺效果，因為篩選動作需要來源和目標。如果只要篩選目前的視覺效果，請選擇左側的 **Filter (篩選條件)** 來建立一般篩選條件。
  + **導覽動作**設定包含下列項目：
    + ****目標工作表**** – 要用作目標的工作表。
    + ****參數**** – 要傳送至目標工作表的參數。選擇加號圖示以新增現有的參數。
  + **URL 動作**設定包含下列項目：
    + ****URL**** – 要開啟的 URL。URL 動作可以是其他應用程式的深層連結。有效的 URL 配置包括 `https`、`http` 和 `mailto`。
    + ****\$1** （值）** – （選用） 要傳送至目標 URL 的參數。參數名稱以 `$` 開頭。傳送端和接收端上的參數必須具有相符的名稱和資料類型。
    + ****開啟於**** – 要開啟 URL 的位置。您可以選擇 **New browser tab (新瀏覽器標籤)**、**Same browser tab (相同瀏覽器標籤)** 或 **New browser window (新瀏覽器視窗)**。

某些類型的動作可讓您包含視覺效果或深入解析中可用的參數或欄位中的值。您可以手動輸入這些項目，或選擇 **\$1** 從清單中選擇。為了使自訂動作起作用，它引用的每個字段和參數在父小工具中都必須是作用中的。

使用以下程序來在分析中建立、檢視或編輯自訂動作。

**若要建立、檢視或編輯自訂動作**

1. 開啟分析後，從右上角的**選單選項**下拉式清單中選擇**動作**。

   現有動作 (如有) 會依啟動類型顯示。若要開啟或關閉現有動作，請使用動作名稱右側的核取方塊。

1. （選用） 若要編輯或檢視現有的動作，請選擇動作名稱旁的功能表圖示。

   若要編輯動作，請選擇 **Edit (編輯)**。

   若要刪除動作，請選擇 **Delete (刪除)**。

1. 若要建立新動作，請選擇下列其中一項：
   + **動作**標題附近的新增圖示
   + **定義自訂動作**按鈕

1. 針對**動作名稱**，定義動作名稱。若要讓動作名稱成為動態，請使用加號圖示來新增參數或欄位值。

1. 對於**啟用**，請選擇動作的執行方式。

1. 對於**動作類型**，選擇您要使用的動作類型。

1. 對於**篩選條件動作**，請執行下列操作：

   1. 對於**篩選條件範圍**，選擇篩選的範圍。

   1. 對於**目標視覺化效果**，請選擇篩選串聯的程度

1. 對於**導覽動作**，請執行下列操作：

   1. 對於**目標工作表**，選擇目標工作表。

   1. 針對**參數**，選擇**參數**標題附近的加號圖示，選取參數，然後選擇參數值。您可以選擇所有值、輸入自訂值或選取特定欄位。

1. 對於 **URL 動作**，請執行下列操作：

   1. 對於 **URL**，請輸入超連結。

   1. 選擇 **URL** 標題附近的加號圖示。然後，從清單中新增變數。

   1. 在**開啟方式**中，選擇如何開啟 URL。

1. 在您完成動作後，請在**動作**面板底部選擇下列其中一項 (可能需要向下捲動)：
   + **儲存** – 儲存您的選取項目，然後建立自訂動作。
   + **關閉** – 關閉此自訂動作並捨棄您的變更。
   + **刪除** – 刪除此動作。

# 修復自訂動作
<a name="repairing-custom-actions"></a>

為了使自訂動作起作用，它引用的每個字段和參數父小工具中都必須處於活動狀態。如果來源小工具遺失欄位，或分析中缺少參數，則該欄位或參數的動作將無法使用。選單動作不再包含在情境選單中。選取動作不再回應互動嘗試。但是，在所有其他方式中，小工具會繼續運作。您的使用者不會顯示任何錯誤。您可以將遺失的欄位新增回損毀的視覺效果或深入解析，以修正中斷的篩選動作和 URL 動作。

下列程序說明如何修正因有人移除欄位或參數卻不更新動作而中斷的動作。這些步驟提供了如何解決此問題的基本指導。但是，請使用您自己的判斷，來決定您應該如何或是否對分析進行變更。如果您不確定，最好先向 Amazon Quick 管理員尋求協助，再進行任何變更。例如，可能有一種方法可以還原先前版本的分析，如果您不確定分析發生了什麼，則這樣可能會更安全。

**若要從中斷的動作中移除欄位**

1. 從開始頁面選擇**分析**。然後選擇要修正的分析。

1. 選擇動作不再起作用的視覺效果或深入分析。確保其在工作表上突出顯示。

1. 從右上角的「選單選項」下拉式清單中選擇**動作**。

1. 找到您要修正的動作，然後選擇**編輯**。

1. 如果動作類型為**篩選動作**，且您看到錯誤指出**「此動作所使用的欄位已移除」，請檢查**篩選範圍**的設定。**已選取的欄位**只能顯示視覺效果中的欄位。若要停用已移除的選定欄位，請選擇下列其中一項：
   + 將**篩選範圍**設定變更為**所有欄位**。這樣做可讓小工具篩選每個欄位。
   + 如果您想使用**已選取的欄位**清單，那麼請驗証欄位清單。如果您需要包含其他欄位，則需要先將其新增至視覺效果。

1. 如果動作類型為**導覽動作**，請遵循錯誤訊息中的指示，該訊息會反映造成錯誤的變更類型。

1. 如果動作類型為 **URL 動作**，請檢查 **URL** 設定是否有雙角括號 (`<<FIELD-OR-$PARAMETER>`) 標記的變數。選擇加號圖示，開啟可用的變數清單。請移除任何不在清單中的欄位或參數。確保您還刪除了相符的 *URL 參數*和它的分隔符 (`?` 用於第一個 URL 參數，`&` 用於後續參數)。下列範例 (使用**粗體**) 顯示如果您要從視覺效果中移除名為 `Product` 的欄位，哪個部分會被移除。

   ```
   https://www.example.com/examplefunction?q=<<Product>
   ```

   ```
   https://www.example.com/examplefunction?q=<<Product>&uact=<<$CSN>
   ```

   ```
   https://www.example.com/examplefunction?pass=yes&q=<<Product>+<<City>&oq=<<Product>+<<City>&uact=<<$CSN>
   ```

   請務必測試新的 URL。

1. (選用) 若要刪除動作，請捲動至結尾，然後選擇**刪除**。

1. 完成後，請確定您對動作所做的變更。捲動至**動作**窗格底部，然後選擇**儲存**。

   如果相關聯的儀表板中也存在錯誤，請再次共用並發布儀表板以傳播修正程式。

# 了解 Amazon Quick Sight 中自訂動作的欄位映射
<a name="quicksight-actions-field-mapping"></a>

自動化欄位映射是以完全相同的欄位為基礎。具有相同名稱和資料類型的欄位會自動跨資料集進行映射。其欄位名稱和資料類型必須完全相符。此運作方式與聯結相似，但不同處在於其會針對每個相符的欄位，根據名稱和資料類型來自動產生。如您遺失欄位，您可以使用遺失欄位資料集中的計算欄位來進行建立。如果你不想讓一些欄位相互對應，你可以重新命名或從資料集中刪除它們。

若已啟用目標欄位以搭配篩選動作 (位於 **Filter scope (篩選範圍)** 中) 使用，則確認所有目標欄位都已經過映射相當重要。執行此作業可允許自動套用篩選。如果某些目標欄位並未經過映射，則自動篩選便無法運作。

映射只會在您建立或儲存自訂動作時產生。因此，每當您進行會影響映射的變更，請確保返回並再次進行儲存。當您建立動作時，映射會以欄位當時存在的狀態為基礎。當您儲存動作時，任何您自建立自訂動作以來重新命名的映射欄位都會維持在映射狀態。但是，如果您改變了映射欄位的資料類型，映射便會遭到移除。

如果您的映射遺失某些欄位，您可以執行以下其中一項作業來進行修復：
+ 從 **Filter scope (篩選範圍)** 移除未映射的欄位，只瞄準映射欄位。
+ 從目標視覺效果中移除有問題的視覺效果。
+ 建立計算欄位，為映射提供遺失的欄位，然後儲存您的自訂動作。
+ 編輯資料集並重新命名欄位，或是變更其資料類型，然後儲存您的自訂動作。
+ 編輯資料集並重新命名欄位，或是變更其資料類型，然後重新儲存您的自訂動作。

**注意**  
在映射畫面上顯示的資訊會顯示您最近一次進行儲存時的組態。若要重新整理或更新檢視，請再次儲存動作。

如果您新增或編輯了資料集，這些資料集不會自動映射或重新映射。這會導致篩選無法正確運作。例如，假設您新增了新的資料集，然後為其建立視覺效果。新的視覺效果不會回應篩選動作，因為沒有欄位映射將他們連線。當您進行變更時，請記得再次儲存您的自訂動作，來復原欄位映射。

當您從來源視覺效果移除參數化欄位或任何其他的目標欄位時，使用該欄位的動作便會中斷。遺失欄位的動作在您選取資料點時將無法運作，或是會在內容選單中隱藏。

如需為自動化欄位映射準備您資料集的資訊，請參閱[映射欄位](mapping-and-joining-fields.md#mapping-and-joining-fields-automatic)。

# 在 Amazon Quick Sight 中使用像素完美報告
<a name="working-with-reports"></a>

透過 Amazon Quick Sight Pixel Perfect Reports，您可以建立、排程和共用高度格式化的多頁 PDF 報告。您也可以使用 Quick Sight 的現有 Web 介面，將資料匯出排程為 CSV 檔案。這會統一歷史上獨立的儀表板和報告系統。

報告建立者可以使用 Quick Sight 的瀏覽器型撰寫體驗，連線到各種支援的資料來源，並建立高度格式化的報告。他們能以像素級精度指定圖像、圖表和資料表的精確頁面大小、長度和排列。然後，作者可以使用 Quick Sight 的排程機制來設定和排程高度個人化的報告交付給最終使用者，或封存報告以供日後使用。

像素完美報告旨在列印或分發。像素完美報告內容的格式符合紙張大小，即使資料跨越多個頁面，也會顯示資料表和樞紐分析表中的所有資料。它們已針對確切的紙張大小進行格式化，您可以精確控制頁面配置。每個像素完美報告最多可產生 1，000 頁的 PDF。

像素完美報告提供報告發佈為 PDF 或 CSV 時存在的所有可用資料。例如，假設您有一個含有 10,000 列的資料表。像素完美報告跨多個頁面呈現整個報告，供讀者完整檢視。如果您在互動式儀表板報告中包含此相同資料表，則產生的 PDF 會包含資料表的快照，該快照會填入可捲動的單一頁面中。這些自訂報告可以透過電子郵件大量傳送，為個人使用者和群組產生多達數千個個人化 PDF 或 CSV 報告。

**注意**  
像素完美報告不適用於`eu-central-2`歐洲 （蘇黎世） 區域。

**Topics**
+ [

# 開始使用
](qs-reports-getting-started.md)
+ [

# 從 Amazon Quick Sight 中的分析建立報告
](qs-reports-create-reports.md)
+ [

# 在 Amazon Quick Sight 中格式化報告
](qs-reports-format-reports.md)
+ [

# 在 Amazon Quick Sight 中使用像素完美報告
](qs-reports-consume-reports.md)
+ [

# 在 Quick Sight 中取消訂閱分頁報告
](qs-reports-getting-started-unsubscribe.md)

# 開始使用
<a name="qs-reports-getting-started"></a>

若要開始使用 Amazon Quick Sight 像素完美報告，請先取得 Amazon Quick 帳戶的像素完美報告附加元件。附加元件的定價適用於您的整個 Quick 帳戶，並非特定於區域。訂閱快速報告後，作者可以開始建立、排程和傳送像素完美報告。

## 取得快速像素完美報告附加元件
<a name="qs-reports-getting-started-subscribe"></a>

您必須先將 Pixel**-Perfect 報告附加元件新增至您的 Quick 訂閱，才能在 Amazon Quick Sight 中使用像素完美報告**。

**在 Amazon Quick Sight 中取得像素完美報告附加元件**

1. 在快速入門頁面上，選擇右上角的使用者名稱，然後選擇**管理快速**。

1. 選擇**管理訂閱**，然後選擇 **Pixel-Perfect 報告**。

1. 選擇想要的訂閱計畫。您可以選擇每月計畫與年度計畫。

1. 檢閱 Pixel-Perfect 報告附加元件定價資訊，然後選擇**確認訂閱**。

取得像素完美報告附加元件後，您的訂閱可能需要幾分鐘才會生效。當您的訂閱生效時，您將能夠在 Amazon Quick Sight 中開始建立像素完美報告。

# 從 Amazon Quick Sight 中的分析建立報告
<a name="qs-reports-create-reports"></a>

像素完美報告是在 Amazon Quick Sight 中分析的工作表層級建立。當您在現有分析中建立新的分析或新工作表時，您可以選擇要讓新工作表成為**互動式儀表板**或 **Pixel 完美報告**。如此一來，您可以僅分析互動式儀表板、僅分析像素完美報告，也可以分析包含互動式儀表板和像素完美報告。

建立像素完美報告有三種方式。您可以從分析中的新工作表建立新的報告，您可以在儀表板中複製互動式工作表，也可以複製已存在的像素完美報告。使用以下程序建立像素完美報告。

## 從 Amazon Quick Sight 中的分析建立報告
<a name="qs-reports-create-reports-from-analysis"></a>

**從新分析建立像素完美報告**

1. 在快速首頁上，選擇**分析**，然後選擇**新增分析**。

1. 選擇要包含在新分析中的資料集，然後選擇右上角的**用於分析**。

1. 在出現**的新工作表**快顯視窗中，選擇**像素完美報告**。

1. （選用） 選擇像素完美報告所需的紙張大小。您可從下列選項擇一使用：
   + 美國信函用紙 (8.5 x 11 英吋)
   + 美國法律用紙 (8.5 x 14 英吋)
   + A0 (841 x 1189 毫米)
   + A1 (594 x 841 毫米)
   + A2 (420 x 594 毫米)
   + A3 (297 x 420 毫米)
   + A4 (210 x 297 毫米)
   + A5 (148 x 210 毫米)
   + 日本 B4 (257 x 364 毫米)
   + 日本 B5 (182 x 257 毫米)

   預設紙張大小為美國信函用紙 (8.5 x 11 英吋)

1. (選用) 在圖紙的縱向和橫向排列之間進行選擇。預設選項是縱向。

1. 選擇**新增**。

如果您想要在現有分析中建立新的像素完美報告，請選擇分析中工作表索引標籤右側的加號 (＋) 圖示，並遵循上述程序的步驟 3-6。

## 從 Amazon Quick Sight 中的現有儀表板建立報告
<a name="qs-reports-create-report-from-dashboard"></a>

您也可以透過複製互動式工作表並將複製工作表轉換為像素完美報告，來建立像素完美報告。

**從互動式工作表建立像素完美報告**

1. 從您要在分析中複製的工作表中，選擇要轉換的工作表名稱旁的下拉式清單。

1. 選擇**複製到以報告**。

您可以將互動式工作表轉換為像素完美報告，但無法將像素完美報告轉換為互動式工作表。

## 在 Amazon Quick Sight 中複製現有報告
<a name="qs-reports-create-report-from-report"></a>

本章節將介紹複製報告的方法。

**複製像素完美報告**

1. 從您要在分析中複製的工作表中，選擇要轉換的工作表名稱旁的下拉式清單。

1. 選擇 **Duplicate (複製)**。

# 在 Amazon Quick Sight 中格式化報告
<a name="qs-reports-format-reports"></a>

使用本節了解如何在 Amazon Quick Sight 中格式化像素完美報告。

**Topics**
+ [

# 使用區段
](qs-reports-working-with-sections.md)
+ [

# 變更紙張尺寸、邊界和方向
](qs-reports-paper-size.md)
+ [

# 在報告中新增和移除分頁符號
](qs-reports-page-breaks.md)
+ [

# 新增和刪除報告的視覺效果
](qs-reports-add-visuals.md)
+ [

# 將文字方塊新增至報告
](qs-reports-add-text-box.md)
+ [

# 設定分頁報告的提示
](paginated-reports-prompts.md)

# 使用區段
<a name="qs-reports-working-with-sections"></a>

*區段*是用於垂直生長以包含內容不同視覺效果的容器。每個區段都會逐一渲染完成，適應設定的分頁符號和區段設定。標頭和頁尾是特殊類型的區段，在報告的每個頁面中都有預先定義的大小、位置和重複項目。

像素完美報告中的每個區段都可以獨立於報告中的其他區段進行格式化。視覺效果可以拖放到任何想要的位置，類似於互動式工作表中的任意格式版面配置。視覺效果也可以重疊、調整大小，或在區段內向前或向後移動。此外，您可以變更區段內的邊界，使視覺效果群組在報告的其餘部分脫穎而出。

Quick Sight 中的每個報告至少需要一個區段。您可以新增多個區段，將不同的視覺效果集合到一起，或控制不同視覺效果群組的渲染順序。

每個像素完美報告表最多支援 30 個區段，包括標頭和頁尾。

參閱下列主題了解有關不同區段的更多資訊。

**Topics**
+ [

# 新增、移動及刪除區段
](qs-reports-add-delete-section.md)
+ [

# 標頭和頁尾
](qs-reports-add-delete-headers-footers.md)
+ [

# 區段填補
](qs-reports-section-padding.md)
+ [

# 建立重複區段
](qs-reports-repeat-sections.md)

# 新增、移動及刪除區段
<a name="qs-reports-add-delete-section"></a>

## 新增區段
<a name="paginated-reports-add-section"></a>

若要將新區段新增至像素完美報告，請使用下列程序。

**將新區段新增至像素完美報告**

1. 在快速首頁中，選擇**分析**，然後選擇包含您要新增區段之報告的分析。

1. 選擇包含您要新增區段之像素完美報告的工作表。

1. 選擇左上角的**新增** (\$1) 圖示，然後選擇**新增區段**。

您也可以選擇現有區段底部的加號 (\$1) 圖示，然後選擇**新增區段**以新增區段。

當您選擇**新增區段**時，報告底部會新增一個區段。

您無法在另一個區段內建立區段。如果您選取現有區段，然後選擇**新增區段**，報告底部就會出現一個新區段。

當您在像素完美報告中有多個區段時，可以按您想要的任何順序排列這些區段。

## 移動區段
<a name="paginated-reports-move-section"></a>

**若要移動報告中的區段**

1. 選擇要移動的區段，然後選擇右上角的三點圖示，開啟「區段上」選單。

1. 選擇要移動區段的位置。您可從下列選項擇一使用：
   + **將區段移至頂部**
   + **將區段向上移動**
   + **將區段向下移動**
   + **將區段移至底部**

在某些情況下，您無法選取某些上述的選項。例如，如果您的區段已經位於報告底部，則無法選取**下移**或**將區段移至底部**。

區段會根據其在報告中的遞增順序命名。您在報告中上下移動區段時，受移動影響的每個區段都會根據新的遞增順序重新命名。

當您從像素完美報告中刪除區段時，剩餘區段的名稱可能會根據已刪除區段的位置而變更。例如，假設您決定刪除 `Section 1`。當您刪除該區段時，上一個 `Section 2` 將向上移動報告並成為新的 `Section 1`。

## 刪除區段
<a name="paginated-reports-delete-section"></a>

**若要從報告中刪除區段**

1. 導覽至要刪除的區段，然後選擇右上角的三點圖示，以開啟「區段上」選單。

1. 選擇**刪除**。

# 標頭和頁尾
<a name="qs-reports-add-delete-headers-footers"></a>

*標頭*和*頁尾*是選用的特殊區段，位於像素完美報告的頂端和底部。標頭和頁尾通常用於顯示基本資訊，例如建立報告的日期或頁碼。您可以使用與報告中一般區段互動的方式與標頭和頁尾互動。

根據預設，Amazon Quick Sight 中的每個報告都有標頭和頁尾。若要從報告移除標頭或頁尾，請按下列程序操作。

**從像素完美報告中移除標頭或頁尾**

1. 在像素完美報告中，導覽至您要刪除的標頭或頁尾，然後開啟 **區段**。

1. 選擇 **刪除**。

當您從報告中刪除標頭或頁尾時，即從報告的每一頁中刪除標頭或頁尾。您不能在某些頁面擁有標頭或頁尾，但在其他頁面可以擁有。

如果您已從報告中移除標頭或頁尾，但希望它們再次顯示，請按下列程序操作。

**將標頭或頁尾新增至像素完美報告**

1. 導覽至您要新增標頭或頁尾的像素完美報告，然後從頂端選單中選擇**插入**。

1. 選擇**新增標頭**或**新增頁尾**。

# 區段填補
<a name="qs-reports-section-padding"></a>

您可以使用區段填補來變更像素完美報告中個別區段的邊界。根據預設，報告中的所有區段都會使用已設定並套用至整份報告的頁面邊界。您也可以將區段填補新增至標頭或頁尾。使用區段填補，您可以建立另一組邊界，讓區段從其他區段脫穎而出。將新的邊界組套用至其餘報告使用的頁面邊界上方的區段。

**若要變更區段的區段填補**

1. 導覽至您要新增區段填補的區段，然後開啟**編輯區段**。

1. 在**編輯區段**的**填補**區段中，以英吋為單位輸入您想要的填補量。您可以自訂區段每一邊的填補 (上、下、左、右)。

您無法使用區段填補來減少區段的邊界。例如，如果整個像素完美報告的邊界為 1 英吋，您只能使用區段填補將 新增至該值。

# 建立重複區段
<a name="qs-reports-repeat-sections"></a>

使用重複區段建立報告特定區段的複本，以顯示一或多個維度值。重複區段中的資料會經過分割，以符合區段的維度。重複區段可以大規模複寫，以減少建置報告所需的時間。

依照下列程序在報告中建立和設定重複區段。

**定義重複區段**

1. 導覽至您要新增重複行為的區段，然後選擇**編輯重複區段** (三重面板)。

1. 在開啟的**編輯區段**窗格中，選擇**新增維度**，然後選擇您要新增的維度。

1. 若要新增其他維度，請重複步驟 2。您可以在每個重複區段組態中新增最多 3 個維度。

**有關重複區段的考量事項**

下列限制適用於重複區段。
+ 重複區段不支援洞察視覺效果。
+ 重複區段維度僅來自上次選取用於分析的資料集。

建立重複區段後，您可以定義重複區段設定的排序和限制。您也可以使用文字方塊將系統參數新增至重複區段。

# 定義重複區段中的排序
<a name="qs-reports-repeat-sections-sort"></a>

**定義重複區段中的排序**

1. 導覽至您要新增重複行為的區段，然後選擇**編輯重複區段** (三重面板)。

1. 在開啟的**編輯區段**中，選擇您要變更之維度旁的省略符號 (三個點)。

1. 導覽至**重複**索引標籤，然後選擇您要排序之維度旁的省略符號 (三個點)，然後選擇**編輯**。

1. 對於**排序方式**，請使用下拉式清單選擇要排序的維度。

1. 在**彙總**下拉式清單中，選擇您要指定的彙總。

1. 對於**排序順序**，請選取**遞增**或**遞減**。

# 定義重複區段中的限制
<a name="qs-reports-repeat-sections-limits"></a>

您可以設定限制，以便重複區段的每個維度僅顯示特定數量的不同維度值。您可以選擇顯示 1 到 1,000 個不同的值。預設限制為 50。

**定義重複區段中的限制**

1. 導覽至您要新增重複行為的區段，然後選擇**編輯重複區段** (三重面板)。

1. 在開啟的**編輯區段**中，選擇您要變更之維度旁的省略符號 (三個點)。

1. 在**限制**欄位中輸入您要限制排序的值數目。您可以輸入介於 1 到 1,000 之間的數字。

**有關限制的考量事項**

下列限制適用於重複區段中的限制。
+ *執行個體*定義為一個維度的特定值或多個維度值的唯一組合。
+ 如果重複區段中維度的唯一執行個體數量超過 1,000，則不會產生 PDF 報告。如果發生這種情況，請嘗試下列其中一個選項。
  + 定義維度的限制。
  + 建立工作表層級篩選條件來限制維度值數量。
  + 使用資料列層級安全 (RLS) 來限制維度值數量。
  + 套用資料集篩選條件。

# 將系統參數新增至重複區段
<a name="qs-reports-repeat-sections-text-box"></a>

您可以使用文字方塊，將系統參數新增至分頁報告的重複區段。這樣，您就可以存取已用於設定重複區段的維度。需要設定重複區段和維度，才能存取文字方塊中的維度。系統參數只能在重複區段中使用。

**從文字方塊將系統參數新增至重複區段**

1. 選擇所需的文字方塊視覺效果，然後選擇文字方塊工具列最右側的**系統參數**圖示。

1. 從顯示的下拉式清單中，選擇所需的參數。

# 將分頁符號新增至重複區段
<a name="qs-reports-repeat-sections-page-break"></a>

與區段分隔符號類似，您可以將分頁符號新增至重複區段。

**將分頁符號新增至重複區段**

1. 導覽至包含您要變更之重複行為的區段，然後選擇**編輯重複區段 **(三重面板) 圖示。

1. 在顯示的**編輯區段**窗格的**重複**索引標籤中，勾選**每個執行個體之後的分頁符號**方塊。

執行個體定義為一個維度的特定值或多個維度值的唯一組合。如果您取消勾選**每個執行個體之後的分頁符號**核取方塊，則會移除分頁符號。

# 變更紙張尺寸、邊界和方向
<a name="qs-reports-paper-size"></a>

在 Amazon Quick Sight 中建立像素完美報告後，您可以隨時從**分析設定**選單變更報告格式、方向和邊界。

## 變更像素完美報告的紙張大小
<a name="paginated-reports-paper-size"></a>

1. 在快速首頁中，選擇**分析**，然後選擇包含您要變更之像素完美報告的分析。

1. 在檔案選單中選擇**工作表**，然後選取**版面配置設定**。

1. 開啟**紙張大小**下拉式選單，然後選擇所需的紙張大小。您可以從以下選項中選擇：
   + 美國信函用紙 (8.5 x 11 英吋)
   + 美國法律用紙 (8.5 x 14 英吋)
   + A0 (841 x 1189 毫米)
   + A1 (594 x 841 毫米)
   + A2 (420 x 594 毫米)
   + A3 (297 x 420 毫米)
   + A4 (210 x 297 毫米)
   + A5 (148 x 210 毫米)
   + 日本 B4 (257 x 364 毫米)
   + 日本 B5 (182 x 257 毫米)

1. 選擇**套用**。

## 若要變更報告的方向
<a name="paginated-reports-orientation"></a>

1. 在快速首頁中，選擇**分析**，然後選擇包含您要變更之像素完美報告的分析。

1. 選擇左側的**設定**圖示。

1. 選擇報告的方向，然後選擇**套用**。

## 若要變更報告的邊界
<a name="paginated-reprots-margins"></a>

1. 在快速入門頁面中，選擇**分析**，然後選擇包含您要變更之像素完美報告的分析。

1. 選擇**編輯 < 分析設定**。

1. 輸入您要報告具有的邊界，然後選擇**套用**。

邊界值會套用至像素完美報告的每個頁面。您無法為報告表中的特定頁面設定自訂設定，但可以使用區段填補來設定區段的自訂邊界。如需關於區段填補的詳細資訊，請參閱 [區段填補](qs-reports-section-padding.md)。邊界值以英吋表示。所有報告的預設邊界都是 0.5 英吋。

# 在報告中新增和移除分頁符號
<a name="qs-reports-page-breaks"></a>

您可以在像素完美報告的各區段之間新增分頁符號，以組織依頁面發佈報告時的資料轉譯方式。例如，假設您有一份報告，其中包含兩個區段，每個區段為 2.5 頁。依預設，`Section 2` 會從報告的第三頁直接在 `Section 1` 的結尾之後開始。如果您在 `Section 1` 的末尾加入分頁符號，即使 `Section 2` 的最後一頁僅使用半個頁面，`Section 1` 也會從新頁面開始。當您不想要不同的區段共用頁面，但又不知道每個區段需要多少頁面時，此功能非常有用。

**若要新增或刪除分頁符號**

1. 選擇區段，然後選擇右上角的**編輯區段**圖示。

1. 在左側開啟的**編輯區段**窗格中，選取**分頁符號之後**核取方塊。

1. 選擇**套用**。

當您選取**分頁符號之後**核取方塊時，分頁符號將出現在區段的末尾。如果您從**分頁符號之後**核取方塊移除勾選，則會從區段結尾移除分頁符號。此外，前面的區段會直接呈現在區段的最後一頁下方，即使這兩個區段共用一個頁面。

您也可以選擇現有區段底部的加號 (\$1) 圖示，然後選擇**新增分頁符號**或**移除分頁符號**，從報告中新增或移除分頁符號。

# 新增和刪除報告的視覺效果
<a name="qs-reports-add-visuals"></a>

**將視覺效果新增至像素完美報告中的區段**

1. 在像素完美報告中，選取要新增視覺效果的區段。

1. 選擇**視覺效果**窗格中的**新增** (\$1) 圖示。

1. 選擇您想要在報告中使用的視覺效果類型。

在您將視覺效果新增至報告之後，如果視覺效果屬於互動式儀表板，您可以使用與視覺效果相同的方式進行互動。您可以將視覺效果拖放到任何地方，類似於 Quick Sight 互動式儀表板表中的自由格式配置。您也可以重疊視覺效果、調整其大小，或在區段內向前或向後移動。如需在 Amazon Quick Sight 中格式化視覺效果的詳細資訊，請參閱 [在 Amazon Quick 中格式化](formatting-a-visual.md)。

**若要刪除視覺效果**

1. 在您要從中刪除視覺效果的區段中，選取要刪除的視覺效果。

1. 選擇視覺效果右上角的三點圖示，開啟視覺效果上選單。

1. 選擇 **刪除**。

當您從像素完美報告的某個區段刪除視覺效果時，您只會從報告中刪除該特定視覺效果。位於報告不同區段的任何重複視覺效果都會保留在報告中。

# 將文字方塊新增至報告
<a name="qs-reports-add-text-box"></a>

您可以將文字方塊新增至像素完美報告，以將內容新增至報告。文字方塊的視覺效果也可以用方塊來新增超連結到外部網站。若要自訂字體、字型樣式、文字顏色、文字間距、文字對齊方式和文字大小，請使用選取視覺效果時出現的文字方塊工具列。

**若要將文字方塊新增至報告**

1. 在像素完美報告中，選取要新增文字方塊的區段。

1. 選擇任務列中的**文字方塊**圖示。

1. 新的文字方塊會顯示在您選擇的報告區段中。

若要編輯文字方塊，請選取文字方塊，然後開始輸入想要的內容。隨後會出現一個工具列，您可以使用該工具列來變更文字的格式和樣式。

**若要刪除文字方塊**

1. 在您要從中刪除文字方塊的區段中，選取要刪除的文字方塊。

1. 選擇視覺效果右上角的三點圖示，開啟「文字方塊上」選單。

1. 選擇**刪除**。

# 文字方塊系統的參數
<a name="text-box-parameters"></a>

使用文字方塊將系統參數新增至像素完美報告的標頭和頁尾。文字方塊系統參數會顯示在文字方塊工具列的最右側。您可以將下列參數新增至報告的標頭或頁尾：
+ 頁碼：報告的目前頁碼。
+ 報告列印日期：產生報告的日期。

若要將頁碼參數新增至文字方塊，請選擇文字方塊工具列最右側的數字 (\$1) 圖示。若要將 `PrintDate` 參數新增至文字方塊，請選擇文字方塊工具列最右側的日曆圖示。

如需更多進階參數選項，請在分頁報告中新增洞察。

# 設定分頁報告的提示
<a name="paginated-reports-prompts"></a>

Amazon Quick 作者可以在完美像素報告上建立提示，以允許儀表板使用者篩選隨需和排程報告中的資料。*提示*的行為與互動式工作表中的篩選條件或控制項的行為相同。

**在像素完美報告中定義提示**

1. 在像素完美工作表上，定義篩選條件控制項或參數控制項。如需有关工作表篩選條件控制項的詳細資訊，請參閱[將篩選條件控制項新增至分析工作表](filter-controls.md)。如需有關參數控制項的詳細資訊，請參閱[在 Amazon Quick 中使用具有參數的控制項](parameters-controls.md)。

1. 在新的篩選條件或參數中，選擇所需的提示值。新的提示會立即反映在工作表上。

1. 若要使用新提示匯出報告，請選擇**檔案**，然後選擇**匯出至 PDF**。

提示無法移至工作表本身中。它們會顯示在頂部面板上。

為完美像素報告建立提示並發佈為儀表板後，快速作者可以使用新的提示來設定和排程傳送至快速儀表板檢視器的報告。儀表板檢視者也可以使用這些提示來建立自己的排程報告。如需有關讀者產生報告的詳細資訊，請參閱[在 Amazon Quick Sight 中建立讀者產生的報告](reader-scheduling.md)。

# 在 Amazon Quick Sight 中使用像素完美報告
<a name="qs-reports-consume-reports"></a>

當 Amazon Quick 作者發佈並傳送排定的像素完美報告時，Quick 將產生並儲存已傳送的報告快照。每當您前往檢視像素完美報告儀表板時，都會看到最近傳送的報告產生的快照。如果您嘗試檢視報告的儀表板，但尚未傳送電郵報告，系統會提示您排程第一份報告以查看儀表板快照。如需排程電郵報告的詳細資訊，請參閱 [透過電子郵件排程和傳送 Quick Sight 報告](sending-reports.md)。

如果 Quick author 已設定 Quick Sight 像素完美報告的提示報告，Quick Readers 可以使用提示自行排程自己的隨需報告。如需有關讀者產生報告的詳細資訊，請參閱[在 Amazon Quick Sight 中建立讀者產生的報告](reader-scheduling.md)。如需像素完美報告的提示詳細資訊，請參閱 [設定分頁報告的提示](paginated-reports-prompts.md)。

使用者無法與已發佈的像素完美報告互動，就像與已發佈的互動式工作表互動一樣。與互動式工作表不同，像素完美報告會產生靜態資料快照，以視覺效果或文字方塊群組呈現。這些靜態快照會在傳送報告時產生，以便受眾可以在報告中看到最新版本的資料。像素完美報告對於產生發票或每週業務審查特別有用。然後，使用者可以將目前的像素完美報告與過去產生的報告進行比較，以更好地追蹤其業務資料。

## 檢視報告的快照歷史記錄
<a name="qs-reports-snapshot-history"></a>

每次您傳送排定的像素完美報告時，Amazon Quick 都會儲存所產生快照的副本，供您參考。您可以隨時在 Quick 主控台中檢視這些快照。

**若要檢視報告的快照歷史記錄**

1. 在快速首頁中，選擇**儀表板**，然後選擇您要查看其快照歷史記錄的儀表板。

1. 選擇右上方工具列中的**排程**圖示，然後選擇**最新的快照**。

1. 在右側顯示的**最新的快照**窗格中，選擇要檢視的快照，然後選擇要下載的檔案旁邊的下載按鈕。

# 在 Quick Sight 中取消訂閱分頁報告
<a name="qs-reports-getting-started-unsubscribe"></a>

您可以隨時取消訂閱 Quick Sight 像素完美報告。取消訂閱像素完美報告後，您將無法在 Quick Sight 中建立和排程像素完美報告。您仍可以存取現有的分頁報告，但無法進行變更或排程新報告。

**在 Amazon Quick Sight 中取消訂閱像素完美報告**

1. 在快速中的任何頁面中，選擇右上角的使用者名稱，然後選擇**管理快速**。

1. 選擇左側**的管理訂閱**。

1. 在**管理訂閱**頁面上，找到 **Pixel-Perfect 報告**區段，然後選擇**管理**。

1. 向下捲動至您選擇的訂閱計畫，然後選擇 [**取消訂閱**]。

# 在 Amazon Quick Sight 分析中的工作表上使用項目
<a name="authoring-sheets"></a>

使用本節來了解如何在 Quick Sight 中撰寫工作表時，使用視覺效果和其他項目

**Topics**
+ [

# 將視覺效果新增至 Quick Sight 分析
](creating-a-visual.md)
+ [

# 在 Amazon Quick Sight 中的工作表上使用主題
](using-q-topics-on-sheets.md)
+ [

# Amazon Quick Sight 中的視覺化類型
](working-with-visual-types.md)
+ [

# 在 Amazon Quick 中格式化
](formatting-a-visual.md)
+ [

# 自訂資料呈現方式
](analyzing-data-analyses.md)

# 將視覺效果新增至 Quick Sight 分析
<a name="creating-a-visual"></a>

*視覺效果* 是資料的圖形呈現。您可以使用不同的資料集和視覺效果類型，在分析中建立各式各樣的視覺效果。

建立視覺效果之後，您可以用各種方式修改，以自訂成符合您的需求。可能的自訂包括變更哪些欄位映射到視覺化元素、變更視覺效果類型、排序視覺化資料，或套用篩選條件。

Quick Sight 在單一分析中最多支援 50 個資料集，在單一工作表中最多支援 50 個視覺效果，每個分析最多支援 20 個工作表。

有幾種方法可讓您建立視覺效果。您可以選取您想要的欄位，並使用 AutoGraph 讓 Amazon Quick Sight 判斷最適合的視覺效果類型。或者，您可以選擇特定的視覺效果類型，並選擇要填入的欄位。如果您不確定資料可以為您回答哪些問題，您可以選擇工具列上的**建議**，然後選擇 Amazon Quick Sight 建議的視覺效果。建議的視覺效果是我們在初步檢查您的資料後，認為很有趣的視覺效果。如需 AutoGraph 的詳細資訊，請參閱 [使用 AutoGraph](autograph.md)。

您可以選擇 **Add (新增)**，然後選擇 **Add visual (新增視覺效果)**，將更多的視覺效果新增到工作區。在 2018 年 6 月 21 日之後建立的視覺效果比較小，每一列可以放兩個。您可以調整視覺效果的大小，並拖曳來重新排列。

建立有用的視覺效果，有助於您盡可能明確地知道您嘗試回答的問題。也有助於使用可以回答這個問題的最小資料集。這樣做可協助您建立更簡單的視覺效果，以更輕鬆地分析。

## 維度和量值的欄位
<a name="dimensions-and-measures"></a>

在**視覺效果**窗格中，維度欄位為藍色圖示，而量值欄位為橙色圖示。*維度* 是可以為項目的文字或日期欄位，例如產品。或者，它們可以是與度量相關且可用於分割的屬性，例如銷售數字的銷售日期。*Measures (度量)* 是用於測量、比較和彙總的數值。您通常會使用維度和度量欄位的組合來產生視覺效果，例如按銷售日期 (維度) 計算的銷售總額 (度量)。如需不同視覺效果類型應有的欄位類型的詳細資訊，請參閱[Amazon Quick Sight 中的視覺化類型](working-with-visual-types.md)小節中的特定視覺效果類型主題。如需有關變更欄位的度量或維度設定的詳細資訊，請參閱[將欄位設定為維度或量值](setting-dimension-or-measure.md)。

## 欄位限制
<a name="visual-field-limitations"></a>

每個視覺效果只能使用一個日期欄位。此限制適用於所有視覺效果類型。

您不能將相同欄位用於多個維度欄位集，或將目標放在視覺效果上。如需有關如何以欄位集和置放目標來表示預期欄位類型的詳細資訊，請參閱[使用視覺效果欄位控制項](using-visual-field-controls.md)。

## 搜尋欄位
<a name="searching-for-a-field"></a>

如果 **Fields list (欄位清單)** 窗格中的欄位清單很長，您可以搜尋來找出特定欄位。若要這樣做，請選擇**資料**窗格頂部的搜尋圖示，然後在搜尋方塊中輸入搜尋詞彙。這時會顯示任何其名稱包含搜尋詞彙的欄位。搜尋不區分大小寫，而且不支援萬用字元。選擇搜尋方塊右邊的取消圖示 (**X**)，來返回以檢視所有欄位。

## 新增視覺效果
<a name="create-a-visual"></a>

使用下列程序以建立新的視覺效果。

**若要建立新的視覺效果**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 在快速首頁上，選擇要新增視覺效果的分析。

1. 在分析頁面上，從**資料**窗格頂部的資料集清單中選擇您要使用的資料集。如需詳細資訊，請參閱[將資料集新增至分析](adding-a-data-set-to-an-analysis.md)。

1. 開啟**視覺化**窗格，選擇**新增**，然後選擇**新增視覺效果**。

   將會建立新的空白視覺效果並成為焦點。

1. 使用下列其中一個選項：
   + 從左側的**資料**窗格中，選擇要使用的欄位。如果欄位不可見，請選擇**視覺化**以顯示欄位。Amazon Quick Sight 會使用其判斷與您選取的資料最相容的視覺效果類型來建立視覺效果。
   + 選擇**新增**按鈕旁的下拉箭頭，以選擇視覺效果類型。建立視覺效果後，請選擇您要填入的欄位。

     1. 從 **Visual types (視覺效果類型)** 窗格中，選擇視覺效果類型的圖示。  
![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/visual-types.png)

        欄位集會顯示視覺化的欄位。  
![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/field-wells.png)

     1. 從**資料**窗格中，將您想要使用的欄位拖曳到相應的欄位集。一般而言，建議使用目標欄位集的顏色所指出的維度欄位或度量欄位。如果您選擇使用維度欄位來填入 **Value (值)** 欄位，則會自動套用 **Count (計數)** 彙總函數以建立數值。

        Amazon Quick Sight 會使用您選取的視覺效果類型建立視覺效果。
   + 使用建議來建立視覺效果。

     在工具列中，選擇 **Suggested (建議)**，然後選擇建議的視覺效果。

# 將 Amazon Quick Sight 視覺效果匯入分析
<a name="import-visuals"></a>

Quick Sight 作者可以從一個分析或儀表板將 Quick Sight 視覺效果匯入具有存取權限的新分析。當您從 Quick Sight 分析或儀表板將視覺效果匯入至另一個 Quick Sight 分析時，系統會將下列相依性與視覺效果一起匯入。
+ 與視覺效果相關聯的資料集
+ 為視覺效果設定的所有參數
+ 為視覺效果設定的計算欄位
+ 篩選條件定義
+ 視覺效果屬性
+ 條件式格式設定規格

使用下列各節進一步了解如何匯入 Quick Sight 視覺效果。

**Topics**
+ [

## 考量事項
](#import-visuals-considerations)
+ [

## 匯入視覺效果
](#import-visual-procedure)

## 考量事項
<a name="import-visuals-considerations"></a>

匯入視覺效果之前，請檢閱下列限制。
+ 想要匯入視覺效果的 Quick Sight 作者必須擁有要將視覺效果匯入的分析的擁有權
+ 無法匯入篩選條件控制項
+ 不支援一次從多個工作表匯入視覺效果
+ 不支援某些使用者設定，包括根據書籤和提醒進行維護的篩選條件設定

## 匯入視覺效果
<a name="import-visual-procedure"></a>

依照下列程序，將視覺效果從來源儀表板或分析匯入另一個分析。

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟您要匯入視覺效果的分析。

1. 選擇**檔案**，然後選擇**匯入**。您也可以在**新增**工具列中選擇**匯入**圖示。

1. **資產瀏覽器**模態對話方塊隨即開啟。顯示您可以存取的所有合格來源分析和儀表板清單。選擇您要從其中匯入視覺效果的成品，然後選擇**載入**。或者，在**尋找要插入的來源**搜尋列中輸入包含您要匯入之視覺效果的來源成品的名稱。選擇所需的成品，然後選擇**載入**。

1. 在開啟的**選取要匯入的視覺效果**頁面中，選擇包含您要匯入之視覺效果的工作表，然後選擇您要匯入的視覺效果。您一次只能從一個工作表匯入視覺效果。選擇要匯入的所有視覺效果後，請選擇**匯入**。

匯入任務成功後，匯入的視覺效果會新增至目標分析。匯入的視覺效果會保留在來源儀表板或分析中為其設定的原始屬性。匯入的視覺效果會繼承套用至目標分析的佈景主題層級屬性。

# 複製 Quick Sight 視覺效果
<a name="duplicating-a-visual"></a>

您可以複製視覺效果，在相同工作表或不同工作表上建立其新副本。

若要複製視覺效果，在視覺化效果目錄中的 **v**-形狀，選擇 **Duplicate visual to (重複的視覺效果至)**，然後選擇您希望出現視覺效果的工作表。畫面會自動顯示已複製的視覺效果。

複製的視覺效果會保持所有與來源視覺效果相同的篩選條件和設定。不過，如果您將視覺效果複製到不同的工作表，其所有複製的篩選條件只會套用到重複項目。所有複製的篩選條件都會縮小範圍，以僅套用到該視覺效果。如果您想要篩選在新工作表中的套用至更多視覺效果，編輯篩選並變更設定。

參數和控制項會套用到所有工作表。為了讓參數控制項適用於您複製到不同工作表的視覺效果，請在目標工作表上新增篩選條件，再將篩選條件連接到參數。若要這樣做，請選擇 **Custom filter (自訂篩選條件)** 作為篩選條件類型。

# 重新命名 Amazon Quick Sight 視覺效果
<a name="renaming-a-visual"></a>

使用下列程序來重新命名視覺效果。

**若要重新命名視覺效果**

1. 在分析頁面上，選擇您要重新命名的視覺效果。

1. 選取視覺效果左上角的視覺效果名稱，然後輸入新名稱。

1. 按下 **Enter** 鍵，或按一下視覺效果名稱欄位外面，以儲存新名稱。

# 在 Amazon Quick Sight 中檢視視覺化資料
<a name="viewing-visual-data"></a>

Amazon Quick Sight 提供多種方式來查看視覺效果中顯示的資料詳細資訊。視覺效果的軸或列和欄 (取決於視覺效果類型) 具有標籤。將滑鼠游標移到視覺效果中的任何圖形元素上，會顯示與該元素相關聯的資料。有些視覺效果類型使用視覺化提示來強調您暫留的元素，並讓您更輕鬆地區分。例如，視覺效果類型可能會變更元素的顏色或反白它。

使用以下各節，以進一步了解如何檢視視覺效果中的資料。

**Topics**
+ [

# 檢視視覺效果詳細資訊
](viewing-visual-details.md)
+ [

# 捲動視覺化資料
](scrolling-through-visual-data.md)
+ [

# 聚焦於視覺化元素
](focusing-on-visual-elements.md)
+ [

# 排除視覺化元素
](excluding-visual-elements.md)
+ [

# 在 Quick Sight 中搜尋資料中的特定值
](search-filter.md)

# 檢視視覺效果詳細資訊
<a name="viewing-visual-details"></a>

當檢視視覺效果時，您可以將游標暫留在任何圖形元素上，以取得該元素的詳細資訊。例如，當您將游標暫留在長條圖上的單一長條上時，有關該特定長條的資訊會顯示在工具提示中。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/bar-detail.png)


將游標停留在散點圖的單一資料點上，也會顯示有關該特定資料點的資訊。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/scatter-plot-detail.png)


您可以自訂當您將游標停留在圖表中資料上時顯示的資訊。如需詳細資訊，請參閱[工具提示](customizing-visual-tooltips.md)。

# 捲動視覺化資料
<a name="scrolling-through-visual-data"></a>

對於長條圖、折線圖和樞紐分析表格，視覺效果的內容可能大於您想要的視覺效果大小。

在這些情況下會顯示擦除列，以便您可以減少顯示的資料或透過其進行擦除。這個程序與您可以透過視訊清除的方式類似。

若要減少擦除列的長度，請將游標停留在其中一端，直到游標變更形狀為止。然後拖曳 Widget，使擦除列變大或變小。若要捲動資料，請按住擦除列，然後將其滑向您要查看的端點。

# 聚焦於視覺化元素
<a name="focusing-on-visual-elements"></a>

檢視視覺效果時，您可以選擇要關注或排除的資料。若要執行此選擇，請選擇元素 (例如長條或泡泡)，或是列或欄的標題。

專注於或排除資料會導致 Quick Sight 建立篩選條件，並僅顯示您選取的資料。

若要移除篩選條件，請選擇左側的**Filters (篩選條件)**，然後停用或刪除篩選條件。您也可以使用 **Undo (復原)** 來移除篩選條件。

如果視覺效果具有展示類別 (維度) 的圖例，您可以按一下圖例中的值來查看可用動作的功能表。例如，假設您的長條圖在 **Color (顏色)** 或 **Group/Color (群組/顏色)** 欄位中有一個欄位。長條圖功能表會顯示您可選擇的動作，您可透過按一下或在長條上按一下滑鼠右鍵來顯示，如下所示：
+ 聚焦或排除視覺元素
+ 變更視覺元素的顏色
+ 向下鑽研到層次結構
+ 從功能表啟動的自訂動作，包括篩選或 URL 動作

# 排除視覺化元素
<a name="excluding-visual-elements"></a>

當檢視視覺效果時，您可以在視覺效果上選擇元素，然後選擇聚焦於此元素。例如，聚焦的元素可能是泡泡或直條，或是樞紐分析表的列或欄標題。例外的是您無法排除已映射到日期欄位的元素。您可以在單一圖表中排除多個元素。

排除元素會建立篩選條件，從視覺效果中只移除該元素。

若要再次看到已排除的元素，請在應用程式列選擇 **Undo (復原)**，或是停用或刪除篩選條件。

如需篩選條件的詳細資訊，請參閱[在 Amazon Quick Sight 中篩選資料](adding-a-filter.md)。

# 在 Quick Sight 中搜尋資料中的特定值
<a name="search-filter"></a>

篩選視覺化資料、預覽異常，或使用儀表板中的清單或下拉式控制項時，可以快速搜尋您感興趣的值。

您可以搜尋特定值或是包含特定搜尋查詢的所有值。例如，在美國各州清單中搜尋 *al* 會傳回 **Al**abama (阿拉巴馬州)、**Al**aska (阿拉斯加州) 和 C**al**ifornia (加利福尼亞州)。

您也可以使用萬用字元，搜尋符合特定字元模式的所有值。例如，您可以搜尋所有以字母 *ia* 結尾的美國的州，並將結果縮小到加利福尼亞州、喬治亞州、賓夕法尼亞州、維吉尼亞州和西維吉尼亞州。

**若要搜尋篩選器或控制項中的值**，請在搜尋列中輸入搜尋查詢。

## 使用字元搜尋
<a name="search-filter-wildcard"></a>

下列萬用字元可用於尋找 Quick Sight 篩選條件、清單和下拉式清單控制項以及異常預覽中的值。
+ **\$1** - 使用星號符號搜尋符合特定位置中零到多個字元的值。
+ **?** - 使用問號與特定位置中的單一字元相符。
+ **\$1** - 使用反斜線來轉義 **\$1**、**?**，或 **\$1** 萬用字元，並在您的查詢中搜尋。例如，您可搜尋以問號結尾的語句。

以下是如何在 Quick Sight 搜尋查詢中使用支援萬用字元的範例。
+ **al** - 此查詢會搜尋帶 **al** 的所有值，並傳回 Alabama、Alaska，和 California。
+ **al\$1** - 此查詢會搜尋以 **al** 開始，以零到多個字元結尾的所有值。它傳回美國州清單中的 Alabama 和 Alaska。
+ **\$1ia** - 此查詢會搜尋以零到多個字元開始，以 **ia** 結尾的所有值。它傳回加利福尼亞州、喬治亞州、賓夕法尼亞州、維吉尼亞州和西維吉尼亞州。
+ **\$1al\$1** - 此查詢會搜尋在字母 **al** 前後包含零到多個字元的所有值。它傳回阿拉巴馬州、阿拉斯加州和加利福尼亞州。
+ **a?a?a?a** - 此查詢會搜尋 **a** 字母之間的精確位置上帶有單一字元的所有值。它會傳回阿拉巴馬州。
+ **a?a\$1a** - 此查詢會搜尋在前兩個 **a** 字母之間具有單一字元，以及後兩個 **a** 字母之間具有多個字元的所有值。它會傳回阿拉巴馬和阿拉斯加。
+ **How\$1\$1?** - 此查詢會搜尋以 **How** 開始，緊隨零到多個字元，並以問號結尾的值。此查詢中的反斜線 (\$1) 會通知 Quick Sight 在每個值中搜尋問號，而不是使用問號符號做為萬用字元。這項查詢傳回的問題「您好嗎？」和「這怎麼可能？」
+ **\$1\$1\$1** - 此查詢會搜尋以星號開始，緊隨零到多個字元的值。此查詢中的反斜線 (\$1) 會通知 Quick Sight 在值中搜尋實際星號，而不是使用星號符號做為萬用字元。此查詢傳回如 \$1all、\$1above 和 \$1below 之類的值。
+ **\$1\$1\$1** - 此查詢搜尋帶有反斜線、後跟零到多個字元的值。此查詢中的第一個反斜線 (\$1) 會通知 Quick Sight 在每個值中搜尋第二個反斜線 (\$1)，而不是使用反斜線符號做為萬用字元。此查詢會傳回 \$1Home 等結果。
+ **???** - 此查詢會搜尋包含三個字元的值。它會傳回 ant、bug 和 car 等值。

# 從視覺效果匯出資料
<a name="exporting-data"></a>

**注意**  
匯出檔案可以直接傳回資料集匯入的資訊。如果匯入的資料含公式或命令，這會使檔案受到 CSV 注入的攻擊。因此，匯出檔案會提示安全警告。若要避免惡意活動，請在讀取匯出檔案時關閉連結和巨集。

使用 Amazon Quick 主控台，您可以從任何類型的圖表或圖形匯出資料。匯出只會包含選定視覺效果中目前可見欄位中的資料。任何篩選出的資料都會從匯出檔案排除。您可以將資料匯出為以下格式：
+ 包含逗號分隔值 (CSV) 的文字檔案，可用於所有視覺效果類型。
+ Microsoft Excel 工作簿檔案 (.xslx)，僅適用於樞紐分析表和資料表圖表。

適用的規定如下：
+ 匯出的檔案會下載到您目前所使用瀏覽器中設定的預設下載目錄。
+ 所下載檔案會以您從中匯出檔案的視覺效果命名。為了確保檔案名稱的唯一性，檔案名稱有循序時間戳記 (Unix 紀元資料類型)。
+ 匯出為 CSV 格式的預設限制：500 MB 或 100 萬個資料列，以先達到者為準
+ 匯出至 Excel 格式的預設限制：
  + 從樞紐分析表視覺效果：400,000 個儲存格或 50,000 個資料列 
  + 從資料表視覺效果：800,000 個儲存格或 100,000 個資料列 
**注意**  
透過訂閱分頁報告，您可以[排程以 CSV 和 Excel 格式匯出視覺效果](https://docs.aws.amazon.com/quicksight/latest/user/sending-reports.html)並匯出最多 300 萬個資料列 (CSV) 和 1,600 萬個儲存格 (Excel)。
+ 您無法從洞察匯出資料，因為深入解析會使用資料，但不包含資料。
+ Quick Sight 不支援一次從多個視覺化匯出資料。若要從相同分析或儀表板中的其他視覺效果匯出資料，請對每個視覺效果重複這個程序。若要從儀表板或分析匯出所有資料，您需要使用有效的憑證和可用於擷取資料的工具，連線至原始資料來源。

使用下列程序從 Amazon Quick Sight 中的視覺化匯出資料。開始之前，請開啟包含要匯出之資料的分析或儀表板。

**若要從視覺效果匯出到資料**

1. 選擇想要匯出的視覺效果。確保已選取並反白顯示。

1. 在視覺效果的右上方，開啟選單，然後選擇下列中的一項：
   + 若要匯出至 CSV，請選擇**匯出至 CSV**。
   + 若要匯出至 XSLX，請選擇**匯出至 Excel**。此選項僅適用於樞紐分析表和資料表圖表。

1.  根據瀏覽器設定而定，將會發生下列其中一種情況：
   + 檔案會自動移至您的預設**下載**位置。
   + 出現對話方塊，讓您選擇檔案名稱和位置。
   + 出現對話方塊，讓您選擇以預設軟體開啟檔案，或儲存檔案。

# 在 Quick Sight 中重新整理視覺效果
<a name="refreshing-visuals"></a>

當您在 Quick Sight 分析或儀表板中工作時，當您變更會影響它們的內容時，視覺效果會重新整理和重新載入，例如更新參數或篩選條件控制。如果在參數或篩選器變更後切換到新工作表，則只有受變更影響的視覺效果在新工作表上重新整理。否則，切換工作表時，視覺效果將每 30 分鐘更新一次。這是針對所有分析和儀表板的預設行為。

如果您要在切換工作表時重新整理所有視覺效果，無論是什麼變更，都可以針對您建立的每個分析執行此動作。

**若要在分析中切換工作表時重新整理所有視覺效果**

1. 在 Amazon Quick 中開啟分析。

1. 在分析中，選擇**編輯 > 分析設定**。

1. 在開啟的**分析設定**窗格中，在**重新整理選項**欄位，將**每次切換工作表時重新載入視覺效果**切換為開啟。

1. 選擇**套用**。

# 刪除 Amazon Quick Sight 視覺效果
<a name="deleting-a-visual"></a>

使用下列程序來刪除視覺效果。

**若要刪除視覺效果**

1. 在分析頁面上，選擇您要刪除的視覺效果。

1. 選擇視覺效果右上角的視覺化功能表，然後選擇 **Delete (刪除)**。

# 在 Amazon Quick Sight 中的工作表上使用主題
<a name="using-q-topics-on-sheets"></a>

Amazon Quick Sight 提供建立主題的引導式工作流程。您可以隨時退出引導式工作流程和返回，從而不打斷您的工作。

透過在分析工作區中啟用一或多個 Quick Sight 主題，您可以啟用採用 ML 技術的自動化資料準備 ，以加速自然語言 (NL) 主題的建立。自動化資料準備會根據欄位的使用方式和常見問答需求，自動選取高價值欄位。它根據現有分析中的術語和常用字典，自動選擇使用者易於理解的欄位名稱和同義字。它還會自動格式化資料，讓資料在呈現時變得立即有用。

自動化資料準備會將主題繫結至您的分析，並準備索引以自然語言搜尋。會有藍色的點表示這種繫結。儀表板使用者發現自動選取新的 Amazon Quick Sight 主題，讓他們更容易查詢資料集。

下列規則適用於使用 主題：
+ 您必須是某個基礎資料集的擁有者，然後才能使用其建立主題或分析。
+ 您必須是某個現有主題的擁有者才能將其連結到分析。

**啟用主題**

1. 開啟您要與自動化資料準備 搭配使用的分析。

1. 在頂端導覽列上，選擇主題圖示。

1. 選擇下列其中一項：
   + 若要啟用新主題，請選取**建立新主題**，然後輸入主題標題和選用描述。
   + 若要啟動現有主題，請選取**更新現有主題**，然後從清單中選擇主題。

1. 選擇**啟用主題**以確認選擇。

1. 當主題處理完成，從分析中學到知識後，您可以使用自然語言提出問題。

   現在，當使用者導覽至儀表板時，會在搜尋列中自動選取連結的主題。

將某個主題連結到分析後，分析的進一步更新不會自動同步到該主題。作者需要從**主題**頁面手動更新主題。

當您為分析或儀表板啟用主題時，您正在啟動一個程序，其中自動化資料準備會從您分析資料的方式中學習。按照螢幕上的提示提出問題，並提供回饋和更多資訊。您與主題的互動越多，就越能準備好回答問題。

如需進一步了解，請參閱[https://docs.aws.amazon.com/quicksight/latest/user/quicksight-q-starting-from-sheets.html](https://docs.aws.amazon.com/quicksight/latest/user/quicksight-q-starting-from-sheets.html)。

# Amazon Quick Sight 中的視覺化類型
<a name="working-with-visual-types"></a>

Amazon Quick Sight 提供各種視覺效果類型，可讓您用來顯示資料。使用本節的主題，以進一步了解每個視覺效果類型的功能。

**Topics**
+ [

## 量值與維度
](#measures-and-dimensions)
+ [

## 顯示限制
](#display-limits)
+ [

## 隱藏或顯示其他類別
](#other-category)
+ [

## 自訂化資料點數量以進行顯示
](#customizing-number-of-data-points)
+ [

# 使用 AutoGraph
](autograph.md)
+ [

# 使用長條圖
](bar-charts.md)
+ [

# 使用盒狀圖
](box-plots.md)
+ [

# 使用組合圖
](combo-charts.md)
+ [

# 使用自訂視覺內容
](custom-visual-content.md)
+ [

# 使用甜甜圈圖表
](donut-chart.md)
+ [

# 使用漏斗圖
](funnel-charts.md)
+ [

# 使用規格表
](gauge-chart.md)
+ [

# 使用熱圖
](heat-map.md)
+ [

# 使用 Highcharts
](highchart.md)
+ [

# 使用直方圖
](histogram-charts.md)
+ [

# 使用影像元件
](image-component.md)
+ [

# 使用 KPI
](kpi.md)
+ [

# 使用圖層地圖
](layered-maps.md)
+ [

# 使用折線圖
](line-charts.md)
+ [

# 建立地圖和地理空間圖表
](geospatial-charts.md)
+ [

# 使用小倍數
](small-multiples.md)
+ [

# 使用圓餅圖
](pie-chart.md)
+ [

# 使用樞紐分析表
](pivot-table.md)
+ [

# 使用雷達圖
](radar-chart.md)
+ [

# 使用桑基圖
](sankey-diagram.md)
+ [

# 使用散佈圖
](scatter-plot.md)
+ [

# 使用資料表的視覺效果
](tabular.md)
+ [

# 使用文字方塊
](textbox.md)
+ [

# 使用樹狀結構圖
](tree-map.md)
+ [

# 使用瀑布圖
](waterfall-chart.md)
+ [

# 使用字詞雲端
](word-cloud.md)

## 量值與維度
<a name="measures-and-dimensions"></a>

我們在說明如何使用不同的視覺效果類型時，採用*量值*一詞表示在視覺效果中用於測量、比較和彙總的數值。度量可以是數值欄位，例如產品成本，或任何資料類型的欄位上的數值彙總，例如交易 ID 的計數。

使用以*維度*或*類別*一詞表示像產品之類的文字或日期欄位，或是與量值有關且可用於區分的屬性。例如銷售數字的銷售日期或客戶滿意度數字的產品製造商。Amazon Quick Sight 會根據欄位的資料類型，自動將欄位識別為度量或維度。

數值欄位可以當作維度，例如郵遞區號和大多數 ID 號碼。在資料準備期間，最好將這種欄位指定為字串資料類型。如此一來，Amazon Quick Sight 會了解它們會被視為維度，且不適用於執行數學計算。

您可以改成是否讓欄位依各個分析而顯示成維度或度量。如需詳細資訊，請參閱[維度和量值的欄位](creating-a-visual.md#dimensions-and-measures)。

## 顯示限制
<a name="display-limits"></a>

所有視覺效果類型會限制可顯示的資料點數目，以便仍然可以輕鬆檢視和分析視覺化元素 (例如折線、長條或泡泡)。視覺效果會選取前 *n* 列來顯示，最多到該視覺效果類型的限制為止。選取時是根據排序順序 (如果已套用)，否則是根據預設順序。

支援的資料點數目隨視覺效果類型而不同。若要進一步了解特定視覺效果類型的顯示限制，請參閱該類型的主題。

如果已達到該視覺效果類型的顯示限制，視覺效果標題會識別所顯示的資料點數目。如果您有大型資料集，且希望避免達到視覺效果顯示限制，請使用一或多個篩選條件來減少顯示的資料量。如需篩選條件搭配視覺效果一起使用的詳細資訊，請參閱[在 Amazon Quick Sight 中篩選資料](adding-a-filter.md)。

對於儀表板和分析，Amazon Quick Sight 支援下列項目：
+ 每個儀表板 50 個資料集
+ 每個儀表板 20 個工作表
+ 每個工作表 30 個視覺化物件 

**注意**  
Amazon Quick Sight 支援超過 30 種不同的*視覺效果類型* （圖表和視覺效果的類別，例如長條圖、圓餅圖和折線圖）。每個分析表最多可包含 30 個任意類型組合的*視覺化執行個體* （個別圖表物件）。

您也可以選擇在將視覺新增到**其他**類別之前，限制要在視覺中顯示的資料點數量。此類別所包含的所有資料彙總資料，超出了您使用的視覺類型截止限制即您所強加的視覺類型，或是根據顯示限制的視覺類型。您可以使用視覺效果附帶功能表，以選擇是否顯示 **other (其他)** 類別。**其他**類別不會顯示在散佈圖、熱圖、地圖、資料表 (資料表式報告) 或關鍵績效指標 (KPI) 上。當 X 軸是日期時，它也不會顯示在折線圖上。不支援向下切入 **other (其他)** 類別。

## 隱藏或顯示其他類別
<a name="other-category"></a>

使用下列程序來隱藏或顯示「其他」類別。

**若要隱藏或顯示「其他」類別**

1. 在分析頁面上，選擇您要修改的視覺效果。

1. 在視覺效果右上角，選擇視覺效果附帶功能表，然後視需要選擇 **Hide "other" category (隱藏「其他」類別)** 或 **Show "other" category (顯示「其他」類別)**。

## 自訂化資料點數量以進行顯示
<a name="customizing-number-of-data-points"></a>

您可以選擇要在某些視覺的主軸上顯示的資料點數量。在此數量顯示於圖表中後，任何額外的資料點都會包含在「其他」類別中。例如，如果您選擇包含 200 個資料點中的 10 個資料點，則會有 10 個顯示在圖表中，另外 190 將成為「其他」類別。

如要尋找此設定，請選擇 **v** 型的視覺效果選單，然後選擇 **Format visual (格式視覺化)**。您可以使用以下資料表來判斷哪些欄位集包含資料點設定，以及視覺化類型預設顯示的資料點數量。


| 視覺效果類型 | 哪裡可以找到資料點設定 | 預設的資料點數量 | 
| --- | --- | --- | 
|  長條圖、水平  |  **Y 軸** - **顯示的資料點數量**  | 10,000 | 
|  長條圖、垂直  |  **X 軸** - **顯示的資料點數量**  | 10,000 | 
|  組合圖  |  **X 軸** - **顯示的資料點數量**  | 2,500 | 
|  熱度圖  |  **資料列** - **顯示的列數** **資料欄** - **顯示的資料欄數**  | 100 | 
|  折線圖  |  **X 軸** - **顯示的資料點數量**  | 10,000 | 
|  圓餅圖  |  **群組/顏色** - **顯示的切片數量**  | 20 | 
|  樹狀結構圖  |  **分組依據** - **顯示的方形數量**  | 100 | 

# 使用 AutoGraph
<a name="autograph"></a>

AutoGraph 本身不是視覺效果類型，而是讓您指示 Amazon Quick 為您選擇視覺效果類型。當您透過選擇 AutoGraph 然後選擇欄位來建立視覺效果時，Amazon Quick 會針對您選取的欄位數量和資料類型使用最適當的視覺效果類型。

## 使用 AutoGraph 建立視覺效果
<a name="create-autograph"></a>

使用下列程序以使用 AutoGraph 建立視覺效果。

**若要使用 AutoGraph 建立視覺效果**

1. 在分析頁面，選擇工具列上的 **Visualize (視覺化)**。

1. 選擇應用程式列上的 **Add (新增)**，然後選擇 **Add visual (新增視覺效果)**。

1. 在 **Visual types (視覺效果類型)** 窗格中，選擇 AutoGraph 圖示。

1. 在 **Fields list (欄位清單)** 窗格中，選擇您要使用的欄位。

# 使用長條圖
<a name="bar-charts"></a>

Amazon Quick 支援下列類型的長條圖，具有水平或垂直方向：
+ **單一量值** - 使用*單一量值長條圖*以顯示維度的單一量值。
+ **單一量值** - 使用*多重量值長條圖*以顯示維度的多重量值。
+ **叢集** - *叢集長條圖*會顯示維度的單一量值，並依其他維度分組。
+ **堆疊** - *堆疊長條圖*類似於叢集長條圖，同樣都顯示兩個維度的量值。不過，並不是依父維度將每個子維度的長條叢集化，而是每個父維度顯示一個長條。它在長條內使用彩色區塊，以顯示子維度中每個項目的相對值。色塊會反映子維度中每個項目相對於量值總和的值。堆疊長條圖使用的刻度是根據所選度量的最大值。
+ **堆疊 100%** - *堆疊的 100% 長條圖*類似於堆疊長條圖。但是，在堆疊的 100% 長條圖中，色塊會反映子維度中每個項目的百分比，超過 100%。

對於不使用群組或顏色的視覺效果，長條圖會在軸上顯示最多 10，000 個資料點。對於使用群組或顏色的視覺效果，軸上最多顯示 50 個資料點，而群組或顏色最多顯示 50 個資料點。如需 Amazon Quick 如何處理超出顯示限制的資料的詳細資訊，請參閱 [顯示限制](working-with-visual-types.md#display-limits)。

## 建立單一量值長條圖
<a name="create-bar-chart"></a>

使用下列程序建立單一量值長條圖。

**若要建立單一量值長條圖**

1. 在分析頁面，選擇左側工具列上的**視覺化**。

1. 選擇左上角應用程式列上的**新增**，然後選擇**新增視覺效果**。

1. 在**視覺化類型**窗格中，選擇**水平長條圖**或**垂直長條圖**圖示。

1. 從**欄位清單**窗格中，將維度拖曳至 **X 軸**或 **Y 軸**欄位集。

1. 從**欄位清單**窗格中，將量值拖曳到**值**欄位集。

## 建立多重量值長條圖
<a name="create-bar-chart-multi"></a>

使用下列程序建立多重量值長條圖。

**若要建立多重量值長條圖**

1. 在分析頁面，選擇左側工具列上的**視覺化**。

1. 選擇左上角應用程式列上的**新增**，然後選擇**新增視覺效果**。

1. 在**視覺化類型**窗格中，選擇**水平長條圖**或**垂直長條圖**圖示。

1. 從**欄位清單**窗格中，將維度拖曳至 **X 軸**或 **Y 軸**欄位集。

1. 從**欄位清單**窗格中，將兩個或以上量值拖曳到**值**欄位集。

## 建立叢集長條圖
<a name="create-bar-chart-clustered"></a>

使用下列程序以建立叢集長條圖。

**若要建立叢集長條圖**

1. 在分析頁面，選擇左側工具列上的**視覺化**。

1. 選擇左上角應用程式列上的**新增**，然後選擇**新增視覺效果**。

1. 在**視覺化類型**窗格中，選擇**水平長條圖**或**垂直長條圖**圖示。

1. 從**欄位清單**窗格中，將維度拖曳至 **X 軸**或 **Y 軸**欄位集。

1. 從**欄位清單**窗格中，將量值拖曳到**值**欄位集。

1. 從**欄位清單**窗格中，將維度拖曳至**群組/顏色**欄位集。

## 建立堆疊長條圖
<a name="create-bar-chart-stacked"></a>

使用下列程序以建立堆疊長條圖。

**若要建立堆疊長條圖**

1. 在分析頁面，選擇左側工具列上的**視覺化**。

1. 選擇左上角應用程式列上的**新增**，然後選擇**新增視覺效果**。

1. 在**視覺化類型**窗格中，選擇**水平堆疊長條圖**或**垂直堆疊長條圖**圖示。

1. 從**欄位清單**窗格中，將維度拖曳至 **X 軸**或 **Y 軸**欄位集。

1. 從**欄位清單**窗格中，將維度拖曳至**群組/顏色**欄位集。

1. 從**欄位清單**窗格中，將量值拖曳到**值**欄位集。

1. (選用) 新增資料標記並顯示總計：

   1. 在視覺效果右上角的選單中，選取**格式視覺效果**圖示。

   1. 在**視覺效果**窗格中，選擇**資料標籤**。

   1. 切換開關以顯示資料標籤。

      每個量值值的標籤出現在圖表中，顯示總計的選項出現在窗格中。

   1. 檢查**顯示總計**。

      圖表中的每個長條顯示總計。

## 建立堆疊 100% 長條圖
<a name="create-bar-chart-stacked-100"></a>

使用下列程序以建立堆疊 100% 長條圖。

**若要建立堆疊 100% 長條圖**

1. 在分析頁面，選擇左側工具列上的**視覺化**。

1. 選擇左上角應用程式列上的**新增**，然後選擇**新增視覺效果**。

1. 在**視覺化類型**窗格中，選擇**水平堆疊 100% 長條圖**或**垂直堆疊 100% 長條圖**圖示。

1. 從**欄位清單**窗格中，將維度拖曳至 **X 軸**或 **Y 軸**欄位集。

1. 從**欄位清單**窗格中，將兩個或以上量值拖曳到**值**欄位集。

## 長條圖功能
<a name="bar-chart-features"></a>

使用下表以了解長條圖支援的功能。


****  

| 功能 | 支援？ | 說明 | 如需詳細資訊 | 
| --- | --- | --- | --- | 
| 變更圖例顯示 | 是，但有例外 | 多重度量和叢集長條圖會顯示圖例，而單一度量水平長條圖不會顯示圖例。 | [Quick 中視覺效果類型的圖例](customizing-visual-legend.md) | 
| 變更標題顯示 | 是 |  | [Quick 中視覺效果類型的標題和字幕](customizing-a-visual-title.md) | 
| 變更軸範圍 | 是 |  | [在 Quick 中根據視覺效果類型進行範圍和擴展](changing-visual-scale-axis-range.md) | 
| 顯示或隱藏軸線、網格線、軸標籤和軸排序圖示 | 是 |  | [Quick 中視覺效果類型的軸和網格線](showing-hiding-axis-grid-tick.md) | 
| 變更視覺效果顏色 | 是 |  | [Quick 中視覺效果類型的顏色](changing-visual-colors.md) | 
| 聚集於或排除元素 | 是，但有例外 | 您可以聚焦於或排除圖表上的任何長條，但使用日期欄位作為軸的維度時除外。在這種情況下，您只能聚焦於長條，無法排除它。 |  [聚焦於視覺化元素](focusing-on-visual-elements.md) [排除視覺化元素](excluding-visual-elements.md)  | 
| 排序 | 是 | 您可以依據您為軸和值選擇的欄位來排序。 | [在 Amazon Quick 中排序視覺化資料](sorting-visual-data.md) | 
| 執行欄位彙總 | 是 | 您必須將彙總套用到您為值選擇的一或多欄位，而無法將彙總套用到您為軸或群組/顏色選擇的欄位。 | [變更欄位彙總](changing-field-aggregation.md) | 
| 新增向下切入 | 是 | 您可以將向下切入等級新增到軸和 Group/Color (群組/顏色) 欄位集。 | [在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md) | 
| 顯示資料標記 | 是 |  | [Quick 中視覺效果類型的資料標籤](customizing-visual-data-labels.md) | 
| 顯示堆疊長條圖總計 | 是 | 只有當您選擇顯示資料標記時，才能在堆疊長條圖中顯示總計。 | [堆疊長條圖](#create-bar-chart-stacked) | 

# 使用盒狀圖
<a name="box-plots"></a>

*盒狀圖*，也稱為盒鬚圖，可將從多個來源彙集的資料顯示為單一視覺效果，協助您做出資料導向的決策。使用盒狀圖視覺化資料在軸上或一段時間內的分佈方式，例如 7 天期間內延遲的航班。通常情況下，盒狀圖詳細信息以季度為單位：
+ **最小值** - 不包括極端值的最低資料點。
+ **最大值** - 不包括極端值的最高資料點。
+ **中位數** - 資料集的中間值。
+ **第一個四分位數** - 資料集的最小數字和中位數之間的中間值。第一個四分位數不包括最小值或中位數。
+ **第三個四分位數** - 資料集的最大數字和中位數之間的中間值。第三個四分位數不包括最大值或中位數。

*極端值*是不包含在盒狀圖關鍵值計算中的極端資料點。由於極端值是單獨計算的，因此在建立盒狀圖之後，其資料點不會立即出現。盒狀圖可顯示多達 10,000 個資料點。如果資料集包含超過 10,000 個資料點，則視覺效果的右上角會顯示警告。

盒狀圖最多支援五個指標和一個分組依據，但如果提供重複的指標，則不會轉譯。

盒狀圖支援某些計算欄位，但不支援全部。任何使用視窗函數的計算欄位，例如 `avgOver`，都會導致 SQL 錯誤。

盒狀圖視覺效果與 MySQL 5.3 及更早版本不相容。

**若要建立基本盒狀圖視覺效果**

1. 在 登入 Amazon Quick[https://quicksight.aws.amazon.com/](https://quicksight.aws.amazon.com/)。

1. 開啟快速並選擇左側導覽窗格上的**分析**。

1. 選擇下列其中一項：
   + 若要建立新的分析，請選擇右上角的**新增分析**。如需詳細資訊，請參閱[在 Quick Sight 中開始分析](creating-an-analysis.md)。
   + 若要使用現有分析，請選擇要編輯的分析。

1. 選擇**新增**、**新增視覺效果**。

1. 在左下角，從**視覺類型**中選擇盒狀圖圖示。

1. 從**欄位清單**窗格中，選擇您想要用於適當欄位集的欄位。盒狀圖至少需要一個唯一的量值欄位。

1. (選用) 將一或多個額外的欄位拖曳到 **Group/Color (群組/顏色)** 欄位集，以新增向下切入分層。如需有關新增向下切入的詳細資訊，請參閱[在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md)。

   若要了解盒狀圖支援的功能，請參閱 [Quick 中每種類型的分析格式](analytics-format-options.md)。如需自訂選項，請參閱 [在 Amazon Quick 中格式化](formatting-a-visual.md)。

# 使用組合圖
<a name="combo-charts"></a>

您可以使用組合圖建立一個視覺化，以顯示兩種不同類型的資料，例如趨勢和類別。組合圖也稱為折線圖和直條圖 (長條)，因為它們會將折線圖與長條圖結合起來。長條圖對比較類別很有用。儘管長條圖應該顯示變化之間的較大差異，但長條圖和折線圖對於顯示隨時間的變化都很有用。

Amazon Quick 支援下列類型的組合圖表：
+ **叢集長條組合圖** - 會顯示一組單色長條，其中每組長條代表一個父維度，而每個長條代表一個子維度。使用此圖表可讓您輕鬆判斷每個長條的值。
+ **堆疊長條組合圖** - 會顯示多色長條，其中每個長條代表一個父維度，每個顏色代表一個子維度。使用此圖表可讓您輕鬆查看父維度內子維度之間的關係。此圖表顯示父維度的總值，以及每個子項新增至總值的方式。若要決定每個子維度的值，圖表讀取器必須將顏色區段的大小與該軸的資料標籤進行比較。

這兩種組合圖在 **X axis (X 軸)** 上只需要一個維度，但在 **Lines (折線)** 下也顯示至少一個度量時，通常會更實用。

如果您想顯示長條和折線之間的關係，則只使用組合圖。根據經驗，如果您需要解釋兩種圖表類型的相關性，則應該使用兩個不同的圖表。

由於每個圖表的運作方式不同，因此在開始之前先了解下列幾點會很有幫助：
+ 在每個系列中的資料點呈現在不同的刻度上。組合圖使用的刻度是根據所選度量的最大值。
+ 即使您為每種圖表類型選取相同的刻度，軸上數字之間的距離也不會相符。
+ 為了清楚起見，請嘗試在每個資料系列中使用不同的單位進行測量。

組合圖就像同時使用兩種不同的視覺效果。確保長條 (或資料欄) 中的資料直接與一或多條折線中的資料相關。在技術上，工具並不強制這種關係，因此，您必須自行決定這種關係。如果折線和長條之間不存在某些關係，視覺效果就失去意義。

您可以使用組合圖視覺效果類型，以建立單一度量或單一折線圖。單一度量組合圖針對一個維度顯示一個度量。

若要建立多重度量圖，您可以選擇新增多條折線或多個長條。多重度量長條圖針對一個維度顯示兩個或更多度量。您可以將長條組成叢集，或堆疊長條。

對於長條，請使用維度代表軸，使用度量代表值。維度通常是在某方面與度量有關的文字欄位，可用於將度量分段，以查看更多詳細資訊。圖表的每個長條代表您在維度中選擇的項目的度度量。

對於未使用群組或顏色的視覺效果，長條和折線在軸上最多顯示 2,500 個資料點。對於使用群組或顏色的視覺效果，長條在軸上最多顯示 50 個資料點，對群組或顏色最多顯示 50 個資料點，而折線在軸上最多顯示 200 個資料點，對群組或顏色最多顯示 25 個資料點。如需 Amazon Quick 如何處理超出顯示限制的資料的詳細資訊，請參閱 [顯示限制](working-with-visual-types.md#display-limits)。

## 組合圖功能
<a name="combo-chart-features"></a>

使用下表以了解組合圖支援的功能。


****  

| 功能 | 支援？ | 說明 | 如需詳細資訊 | 
| --- | --- | --- | --- | 
| 變更圖例顯示 | 是，但有例外 | 多重度量組合圖會顯示圖例，而單一度量組合圖不會顯示圖例。 | [Quick 中視覺效果類型的圖例](customizing-visual-legend.md) | 
| 變更標題顯示 | 是 |  | [Quick 中視覺效果類型的標題和字幕](customizing-a-visual-title.md) | 
| 變更軸範圍 | 是 | 您可以設定軸的範圍。 | [在 Quick 中根據視覺效果類型進行範圍和擴展](changing-visual-scale-axis-range.md) | 
| 顯示或隱藏軸線、網格線、軸標籤和軸排序圖示 | 是 |  | [Quick 中視覺效果類型的軸和網格線](showing-hiding-axis-grid-tick.md) | 
| 變更視覺效果顏色 | 是 |  | [Quick 中視覺效果類型的顏色](changing-visual-colors.md) | 
| 聚集於或排除元素 | 是，但有例外 | 您可以聚焦於或排除圖表上的任何長條，但使用日期欄位作為軸的維度時除外。在這種情況下，您只能聚焦於長條，無法排除它。 |  [聚焦於視覺化元素](focusing-on-visual-elements.md) [排除視覺化元素](excluding-visual-elements.md) | 
| 排序 | 是 | 您可以依據您為軸和值選擇的欄位來排序。 | [在 Amazon Quick 中排序視覺化資料](sorting-visual-data.md) | 
| 執行欄位彙總 | 是 | 您必須將彙總套用到您為值選擇的一或多個欄位。您無法將彙總套用到您為軸或群組/顏色選擇的欄位。 | [變更欄位彙總](changing-field-aggregation.md) | 
| 新增向下切入 | 是 | 您可以將向下切入等級新增到軸和 Group/Color (群組/顏色) 欄位集。 | [在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md) | 
| 同步 Y 軸 | 是 |  將長條和折線的 Y 軸同步到單一軸。  | [在 Quick 中根據視覺效果類型進行範圍和擴展](changing-visual-scale-axis-range.md) | 

## 建立組合圖
<a name="create-combo-chart"></a>

使用下列程序以建立組合圖。

**若要建立組合圖**

1. 在分析頁面，選擇工具列上的 **Visualize (視覺化)**。

1. 選擇應用程式列上的 **Add (新增)**，然後選擇 **Add visual (新增視覺效果)**。

1. 在 **Visual types (視覺效果類型)** 窗格中，選擇其中一個組合圖圖示。

1. 從 **Fields list (欄位清單)** 窗格中，將您想要使用的欄位拖曳到適當的欄位集。一般而言，建議使用目標欄位集所指出的維度欄位或度量欄位。如果您選擇使用維度欄位作為度量欄位，則會自動套用 **Count (計數)** 彙總函數以建立數值。您可以如下建立組合圖：
   + 為 **X axis (X 軸)** 選擇維度。
   + 若要建立單一度量組合圖，請為 **Bars (長條)** 或 **Lines (折線)** 選擇一個度量。
   + 若要建立多重度量組合圖，請為 **Bars (長條)** 或 **Lines (折線)** 欄位集選擇兩個或更多度量。
   + 您可以選擇將維度新增到 **Group/Color (群組/顏色)** 欄位集。如果您在 **Group/Color (群組/顏色)** 中有欄位，則在 **Bars (長條)** 下方不能有多個欄位。  
![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/combo-chart-example2-clustered.png)

1. (選用) 將一或多個額外的欄位拖曳到 **X axis (X 軸)** 或 **Group/Color (群組/顏色)** 欄位集，以新增向下切入分層。如需有關新增向下切入的詳細資訊，請參閱[在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md)。

# 使用自訂視覺內容
<a name="custom-visual-content"></a>

您可以使用自訂視覺內容圖表類型，在快速儀表板中嵌入網頁和線上影片、表單和影像。

例如，您可以在儀表板中嵌入公司標誌的影像。您也可以嵌入組織最新會議中的線上影片，或嵌入線上表單，詢問儀表板的讀者該儀表板是否有幫助。

建立自訂視覺內容後，您可以使用導覽動作在其中進行導覽。您也可以使用參數控制其中顯示的項目。

下列限制會套用至自訂視覺內容：
+ 僅支援 `https` URL 結構描述。
+ 電子郵件報告不支援自訂視覺內容。
+ 使用熱連結保護的影像和網站不會載入到自訂視覺效果中。

若要在儀表板中嵌入網頁、影片、線上表單或影像，請在視覺**類型**窗格中選擇自訂視覺內容圖示。

如需將視覺效果新增至儀表板的詳細資訊，請參閱 [新增視覺效果](creating-a-visual.md#create-a-visual)。

請使用下列程序，了解如何在儀表板中嵌入自訂視覺效果。

## 使用自訂視覺化內容的最佳實務
<a name="custom-visual-content-best-practices"></a>

使用自訂視覺內容圖表類型嵌入網頁內容時，建議您執行下列動作：
+ 從支援在 iFrame 中檢視或開啟內容的來源中，選擇網頁內容。如果 Web 內容的來源不支援在 IFrame 中檢視或開啟，即使 URL 準確，內容也不會出現在 Quick 中。
+ 如果可能，請使用可嵌入的 URL，尤其是影片、線上表單、試算表和文件。可嵌入的 URL 為儀表板的讀者創造了更好的體驗，並使與內容的交互更加輕鬆。當您選擇分享來源網站的內容時，通常可以找到內容的可嵌入 URL。
+ 若要嵌入您擁有的內部 URL 或 URL，可能需要將它們設定為在 IFrame 中開啟。
+ 在分析或儀表板中檢視自訂視覺內容時，請確保啟用所有 Cookie。如果瀏覽器中封鎖第三方 Cookie，則嵌入在自訂內容視覺效果中屬於網站的影像將不會轉譯。
**注意**  
Chrome 已宣布計劃在 2024 年底之前棄用所有第三方 Cookie。這表示內嵌在快速自訂內容視覺效果中的網站將不再顯示依賴 Chrome 中第三方 Cookie 的任何內容。如需有關 Chrome 棄用第三方 Cookie 計劃的詳細資訊，請參閱 [Chrome is deprecating third-party cookies](https://cloud.google.com/looker/docs/best-practices/chrome-third-party-cookie-deprecation)。

## 在儀表板中嵌入影像
<a name="custom-visual-content-image"></a>

您可以使用影像 URL 將線上影像嵌入儀表板。請使用下列程序來嵌入使用自訂視覺內容圖表類型的影像。

嵌入影像不會在已封鎖第三方 Cookie 的瀏覽器中顯示。若要在儀表板中查看嵌入的影像，請在瀏覽器設定中啟用第三方 Cookie。

**若要在儀表板中嵌入影像**

1. 在**視覺類型**窗格中，選擇自訂視覺內容圖示。

1. 在視覺效果中，選擇**自訂視覺效果**。

1. 在開啟的**屬性**窗格的**自訂內容**下，輸入您要嵌入之影像的影像 URL。

1. 選擇**套用**。

   影像會在視覺效果中顯示為網頁。

1. 選擇**顯示為影像**。

   如果 URL 是影像，則影像會顯示在視覺效果中。

   如果 URL 不是影像 (例如投影片放映、圖庫或網頁的 URL)，則會顯示下列訊息：`This URL doesn't appear to be an image. Update the URL to an image`。若要這麼做，請在單獨的瀏覽器索引標籤中開啟您要嵌入的影像，或為影像選擇可嵌入的 URL (通常會在您選擇共用影像時找到)。

1. (選用) 在**影像調整選項**中，選擇以下選項之一：
   + **符合寬度** - 此選項會使影像符合視覺效果的寬度。
   + **符合高度** - 此選項會使影像符合視覺效果的高度。
   + **縮放至視覺效果** - 此選項會將影像縮放至視覺效果的寬度和高度。此選項可能會扭曲影像。
   + **不縮放** - 此選項會將影像保持在原始比例，且不會使影像符合視覺效果的尺寸。使用此選項時，影像會於視覺效果中置中，並顯示在視覺效果寬度和高度範圍內的影像部分。如果視覺效果小於影像，則影像的某些部分可能不會出現。但是，如果視覺效果大於影像，則影像會於視覺效果中置中，並被空白區域包圍。

## 在儀表板中嵌入線上表單
<a name="custom-visual-content-form"></a>

您可以使用可嵌入 URL 將線上表單嵌入儀表板。請使用下列程序來嵌入使用自訂視覺內容圖表類型的線上表單。

**若要在儀表板中嵌入線上表單**

1. 在**視覺類型**窗格中，選擇自訂視覺內容圖示。

1. 在視覺效果中，選擇**自訂視覺效果**。

1. 在開啟的**屬性**窗格的**自訂內容**下，輸入您要嵌入之線上表單的表單 URL。

   如果可能，請為表單使用可嵌入的 URL。使用可嵌入 URL 為可能想要與表單互動的儀表板讀者提供更好的體驗。當您選擇在建立表單的網站上共用表單時，通常可以找到可嵌入 URL。

1. 選擇**套用**。

   表單會出現在視覺效果中。

## 在儀表板中嵌入網頁
<a name="custom-visual-content-webpage"></a>

您可以使用 URL 將網頁嵌入儀表板。請使用下列程序來嵌入使用自訂視覺內容圖表類型的網頁。

**若要在儀表板中嵌入網頁**

1. 在**視覺類型**窗格中，選擇自訂視覺內容圖示。

1. 在視覺效果中，選擇**自訂視覺效果**。

1. 在開啟的**屬性**窗格的**自訂內容**下，輸入您要嵌入之網頁的 URL。

1. 選擇**套用**。

   網頁會在視覺效果中出現。

## 在儀表板中嵌入在線影片
<a name="custom-visual-content-video"></a>

您可以使用可嵌入的影片 URL，將線上影片嵌入儀表板。使用下列程序，使用自訂視覺內容圖表類型嵌入線上影片。

**若要在儀表板中嵌入線上影片**

1. 在**視覺類型**窗格中，選擇自訂視覺內容圖示。

1. 在視覺效果中，選擇**自訂視覺效果**。

1. 在開啟的**屬性**窗格的**自訂內容**下，輸入您要嵌入之影片的可嵌入 URL。

   若要尋找影片的可嵌入 URL，請共用影片並從 iFrame 程式碼複製內嵌 URL。以下是 YouTube 影片的嵌入式網址範例：`https://www.youtube.com/embed/uniqueid`。對於 Vimeo 影片，以下是嵌入網址的範例：`https://player.vimeo.com/video/uniqueid`。

1. 選擇**套用**。

   影片會出現在視覺效果中。

# 使用甜甜圈圖表
<a name="donut-chart"></a>

使用甜甜圈圖表以比較維度中各項目的值。此類圖表的最佳使用為顯示總金額的百分比。

甜甜圈圖表中每個區段代表維度中的一個值。區段大小表示項目所代表的所選度量的值，在整個維度中所佔的比例。當精確度不重要，且維度中項目不多時，甜甜圈圖表最為適用。

若要了解如何在 Amazon Quick 中使用甜甜圈圖表，您可以觀看此影片：

[![AWS Videos](http://img.youtube.com/vi/vR6H4bXaRBY/0.jpg)](http://www.youtube.com/watch?v=vR6H4bXaRBY)


若要建立甜甜圈圖表，請在 **Group/Color (群組/顏色)** 使用一個欄位集。僅有一個欄位時，表格以行數顯示劃分的值。要顯示部門維度值的指標值，您可以新增指標欄位的 **Value (值)** 欄位集。

環形圖表針對群組或顏色最多顯示 20 個資料點。如需 Amazon Quick 如何處理超出顯示限制的資料的詳細資訊，請參閱 [顯示限制](working-with-visual-types.md#display-limits)。

## 甜甜圈圖表功能
<a name="donut-chart-features"></a>

使用下表以了解環形圖表支援的功能。


****  

| 功能 | 支援？ | 說明 | 如需詳細資訊 | 
| --- | --- | --- | --- | 
| 變更圖例顯示 | 是 |  | [Quick 中視覺效果類型的圖例](customizing-visual-legend.md) | 
| 變更標題顯示 | 是 |  | [Quick 中視覺效果類型的標題和字幕](customizing-a-visual-title.md) | 
| 變更軸範圍 | 不適用 |  | [在 Quick 中根據視覺效果類型進行範圍和擴展](changing-visual-scale-axis-range.md) | 
| 變更視覺效果顏色 | 是 |  | [Quick 中視覺效果類型的顏色](changing-visual-colors.md) | 
| 聚集於或排除元素 | 是，但有例外 | 您可以聚焦於或排除甜甜圈圖表上的區段，但使用日期欄位當作維度時除外。在這種情況下，您只能聚焦於扇形，無法排除它。 |  [聚焦於視覺化元素](focusing-on-visual-elements.md) [排除視覺化元素](excluding-visual-elements.md) | 
| 排序 | 是 | 您可以依據您為值或群組或顏色選擇的欄位來排序。 | [在 Amazon Quick 中排序視覺化資料](sorting-visual-data.md) | 
| 執行欄位彙總 | 是 | 您必須將彙總套用到您為值選擇的欄位，而無法將彙總套用到您為群組/顏色選擇的欄位。 | [變更欄位彙總](changing-field-aggregation.md) | 
| 新增向下切入 | 是 | 您可以將向下切入等級新增到 Group/Color (群組/顏色) 欄位集。 | [在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md) | 
| 選擇大小 | 是 | 您可以選擇的甜甜圈圖表的厚度：小型、中型和大型。 | [在 Amazon Quick 中格式化](formatting-a-visual.md) | 
| 顯示總計 | 是 | 您可以選擇顯示或隱藏 Value (值) 欄位的彙總。在預設情況下，這會顯示總數的 Group/Color (群組/顏色) 欄位，或總數的 Value (值) 欄位。 | [在 Amazon Quick 中格式化](formatting-a-visual.md) | 

## 建立環形圖
<a name="create-donut-chart"></a>

使用下列程序以建立甜甜圈圖表。

**若要建立甜甜圈圖表**

1. 在分析頁面，選擇工具列上的 **Visualize (視覺化)**。

1. 選擇應用程式列上的 **Add (新增)**，然後選擇 **Add visual (新增視覺效果)**。

1. 在 **Visual types (視覺效果類型)** 窗格中，選擇甜甜圈圖表圖示。

1. 從 **Fields list (欄位清單)** 窗格中，將您想要使用的欄位拖曳到適當的欄位集。一般而言，建議使用目標欄位集所指出的維度欄位或度量欄位。如果您選擇使用維度欄位作為度量欄位，則會自動套用 **Count (計數)** 彙總函數以建立數值。

   若要建立甜甜圈圖表，請將維度拖曳到 **Group/Color (群組/顏色)** 欄位集。或者，將度量拖曳到 **Value (值)** 欄位集。

1. (選用) 將一或多個額外的欄位拖曳到 **Group/Color (群組/顏色)** 欄位集，以新增向下切入分層。如需有關新增向下切入的詳細資訊，請參閱[在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md)。

# 使用漏斗圖
<a name="funnel-charts"></a>

使用漏斗圖視覺化線性程序中跨多個階段移動的資料。在漏斗圖中，過程的每個階段都以不同形狀和顏色的區塊表示。第一階段 (稱為*頭部*) 是最大的區塊，其次是較小的階段，稱為*頸部*，呈漏斗形狀。代表漏斗圖中每個階段的區塊大小是總數的百分比，且與其值成正比。區塊的大小越大，值就越大。

漏斗圖在商業環境中通常很有用，因為您可以檢視每個階段中的趨勢或潛在問題區域，例如瓶頸。例如，他們可以協助您視覺化銷售每個階段的潛在收入金額，從第一次接觸到最終銷售，一直到維護。

**若要建立基本漏斗圖視覺效果**

1. 開啟 Amazon Quick 並選擇左側導覽窗格上的**分析**。

1. 選擇下列其中一項：
   + 若要建立新的分析，請選擇右上角的**新增分析**。如需詳細資訊，請參閱[在 Quick Sight 中開始分析](creating-an-analysis.md)。
   + 若要使用現有分析，請選擇您要編輯的分析。

1. 選擇**新增 (\$1)、新增視覺效果**。

1. 在左下角，從**視覺類型**中選擇漏斗圖圖示。

1. 從**欄位清單**窗格中，選擇您想要用於適當欄位集的欄位。漏斗圖需要**群組**中的一個維度。

1. (選用) 將一或多個額外的欄位拖曳到 **Group/Color (群組/顏色)** 欄位集，以新增向下切入分層。如需有關新增向下切入的詳細資訊，請參閱[在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md)。

   若要了解漏斗盒狀圖支援的功能，請參閱 [Quick 中每種類型的分析格式](analytics-format-options.md)。如需自訂選項，請參閱 [在 Amazon Quick 中格式化](formatting-a-visual.md)。

# 使用規格表
<a name="gauge-chart"></a>

使用規格表以比較度量中各項目的值。您可以與另一個度量或自訂的金額做比較。

規格表類似非數位式的量表，例如汽車中的油量表。它會顯示您的度量有多少量。在規格表中，該測量可單獨存在或與其他測量相關。規格表中各個顏色代表一個值。在下列範例中，我們以銷售目標比較實際銷售，規格表顯示我們必須額外銷售 33.27% 以達成目標。

若要了解如何在 Amazon Quick 中使用量測計圖表，您可以觀看此影片：

[![AWS Videos](http://img.youtube.com/vi/03gYx4-iGak/0.jpg)](http://www.youtube.com/watch?v=03gYx4-iGak)


若要建立規格表，您必須至少使用一項度量。將度量放進 **Value (值)** 欄位集。如果您想要比較兩種度量，將額外的度量放進 **Target value (目標值)** 欄位集。如果您想要使用單一度量比較的目標值不存在於資料集中，您可以使用包含固定值的計算欄位。

規格表您可以選擇多樣化格式，包含 **Format visual (格式視覺效果)** 中下列的設定。
+ ****顯示值**** - 隱藏值，顯示實際的值，或顯示兩個值的比較
+ ****比較方法**** - 以%比較實際與值的差異，或差異的百分比
+ ****軸樣式**** - 
  + **顯示軸標籤** - 顯示或隱藏軸標籤
  + **範圍** - 顯示規格表中數值最大與最小的範圍
  + **Reserve padding (%)** - (預留填補 (%)) 新增範圍 (目標，實際值或最大值)
+ ****弧的樣式**** - 圓弧度數顯示 (180 到 360)
+ ****厚度**** - 圓弧的厚度 (小、中或大)

## 規格表功能
<a name="gauge-chart-features"></a>

使用下表以了解測量表支援的功能。


****  

| 功能 | 支援？ | 說明 | 如需詳細資訊 | 
| --- | --- | --- | --- | 
| 變更圖例顯示 | 是 |  | [Quick 中視覺效果類型的圖例](customizing-visual-legend.md) | 
| 變更標題顯示 | 是 |  | [Quick 中視覺效果類型的標題和字幕](customizing-a-visual-title.md) | 
| 規格表格式 | 是 | 您可以自訂顯示的值，比較方法，軸樣式、圓弧樣式和規格厚度。 |  | 
| 變更軸範圍 | 否 |  |  | 
| 變更視覺效果顏色 | 是 | 填充區域的前景顏色；代表 Value (值)。空心區域的背景顏色；代表已選取的 Target value (目標值)。 | [Quick 中視覺效果類型的顏色](changing-visual-colors.md) | 
| 聚集於或排除元素 | 否 |  |  | 
| 排序 | 否 |  | [在 Amazon Quick 中排序視覺化資料](sorting-visual-data.md) | 
| 執行欄位彙總 | 是 |  | [變更欄位彙總](changing-field-aggregation.md) | 
| 新增向下切入 | 否 |  |  | 

## 建立計量圖表
<a name="create-gauge-chart"></a>

使用下列程序以建立規格表。

**若要建立規格表**

1. 在分析頁面，選擇工具列上的 **Visualize (視覺化)**。

1. 選擇應用程式列上的 **Add (新增)**，然後選擇 **Add visual (新增視覺效果)**。

1. 在 **Visual types (視覺效果類型)** 窗格中，選擇規格表圖示。

1. 從 **Fields list (欄位清單)** 窗格中，將您想要使用的欄位拖曳到適當的欄位集。若要建立規格表，請將度量拖曳到 **Value (值)** 欄位集。若要新增比較價值，請將不同度量拖曳到 **Target value (目標值)** 欄位集。

# 使用熱圖
<a name="heat-map"></a>

使用熱圖以針對兩個維度的交集來顯示度量，並以顏色編碼，可輕鬆區分值在範圍內的位置。熱圖還可用於顯示兩個維度交集的值計數。

熱圖的每個矩形代表所選維度交集的指定度量的值。矩形顏色代表值在度量範圍內的位置，深色表示較高值，淺色表示較低值。

熱圖和樞紐分析表以類似的表格形式來顯示資料。如果您想要識別趨勢和極端值，請使用熱圖，因為此圖使用了顏色，讓您更容易找到目標。如果您想要進一步分析視覺效果上的資料，請使用樞紐分析表，例如，變更欄排序順序或將彙總函數套用到列或欄。

若要建立熱圖，請至少選擇兩個任何資料類型的欄位。Amazon Quick 會將相交 y 軸值的 x 軸值計數填入矩形值。通常，您要選擇一個度量和兩個維度。

熱圖的列最多顯示 50 個資料點，欄最多顯示 50 個資料點。如需 Amazon Quick 如何處理超出顯示限制的資料的詳細資訊，請參閱 [顯示限制](working-with-visual-types.md#display-limits)。

## 熱圖功能
<a name="heat-map-features"></a>

使用下表以了解熱圖支援的功能。


| 功能 | 支援？ | 說明 | 如需詳細資訊 | 
| --- | --- | --- | --- | 
| 變更圖例顯示 | 是 |  | [Quick 中視覺效果類型的圖例](customizing-visual-legend.md) | 
| 變更標題顯示 | 是 |  | [Quick 中視覺效果類型的標題和字幕](customizing-a-visual-title.md) | 
| 變更軸範圍 | 不適用 |  | [在 Quick 中根據視覺效果類型進行範圍和擴展](changing-visual-scale-axis-range.md) | 
| 變更視覺效果顏色 | 否 |  | [Quick 中視覺效果類型的顏色](changing-visual-colors.md) | 
| 聚集於或排除元素 | 是，但有例外 | 您可以聚焦於或排除熱圖上的矩形，但使用日期欄位作為列維度時除外。在這種情況下，您只能聚焦於矩形，無法排除它。 |  [聚焦於視覺化元素](focusing-on-visual-elements.md) [排除視覺化元素](excluding-visual-elements.md) | 
| 排序 | 是 | 您可以依據您為欄和值選擇的欄位來排序。 | [在 Amazon Quick 中排序視覺化資料](sorting-visual-data.md) | 
| 執行欄位彙總 | 是 | 您必須將彙總套用到您為值選擇的欄位，而無法將彙總套用到您為列或欄選擇的欄位。 | [變更欄位彙總](changing-field-aggregation.md) | 
| 新增向下切入 | 是 | 您可以將向下切入等級新增到 Row (列) 和 Columns (欄) 欄位集。 | [在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md) | 
| 條件式格式設定 | 否 |  | [Quick 中視覺效果類型的條件式格式化](conditional-formatting-for-visuals.md) | 

## 建立熱圖
<a name="create-heat-map"></a>

使用下列程序以建立熱圖。

**若要建立熱圖**

1. 在分析頁面，選擇工具列上的 **Visualize (視覺化)**。

1. 選擇應用程式列上的 **Add (新增)**，然後選擇 **Add visual (新增視覺效果)**。

1. 在 **Visual types (視覺效果類型)** 窗格中，選擇熱圖圖示。

1. 從 **Fields list (欄位清單)** 窗格中，將您想要使用的欄位拖曳到適當的欄位集。一般而言，建議使用目標欄位集所指出的維度欄位或度量欄位。如果您選擇使用維度欄位作為度量欄位，則會自動套用 **Count (計數)** 彙總函數以建立數值。

   若要建立熱圖，請將維度拖曳到 **Rows (列)** 欄位集，將維度拖曳到 **Columns (欄)** 欄位集，將度量拖曳到 **Values (值)** 欄位集。

1. (選用) 將一或多個額外的欄位拖曳到 **Rows (列)** 或 **Columns (欄)** 欄位集，以新增向下切入分層。如需有關新增向下切入的詳細資訊，請參閱[在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md)。

# 使用 Highcharts
<a name="highchart"></a>

使用 Highcharts 視覺效果來建立使用 [Highcharts Core 程式庫](https://www.highcharts.com/blog/products/highcharts/)的自訂圖表類型和視覺效果。Highcharts 視覺效果可讓快速作者直接存取 [Highcharts API](https://api.highcharts.com/highcharts/)。

若要設定高圖表視覺效果，快速作者需要將高圖表 JSON 結構描述新增至 Quick 中的視覺效果。作者可以使用快速表達式來參考快速欄位，以及在用來產生高圖表視覺效果的 JSON 結構描述中格式化選項。JSON **圖表程式碼**編輯器提供自動完成和即時驗證的關聯式協助，以確保輸入 JSON 結構描述已正確設定。為了維護安全性，Highcharts 視覺效果編輯器不接受 CSS、JavaScript 或 HTML 程式碼輸入。

如需 Amazon Quick 中 Highcharts 視覺效果的詳細資訊，請參閱 [DemoCentral](https://democentral.learnquicksight.online/#) 中的 [Highcharts Visual QuickStart 指南](https://democentral.learnquicksight.online/#Dashboard-FeatureDemo-Highcharts-Visual)。

下圖顯示在 Quick 中 Highcharts 視覺效果的**圖表程式碼** JSON 編輯器中設定的口紅圖表。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/highcharts-example1.png)


如需您可以在 Quick 中使用 Highcharts 視覺效果建立視覺效果的更多範例，請參閱 [Highcharts 示範](https://www.highcharts.com/demo)。

## 考量事項
<a name="highchart-considerations"></a>

在您開始在 Amazon Quick 中建立 Highcharts 視覺效果之前，請檢閱適用於 Highcharts 視覺效果的下列限制。
+ Highcharts **圖表程式碼** JSON 編輯器不支援下列 JSON 值：
  + 函數
  + 日期
  + 未定義的值
+ Highcharts 視覺效果不支援指向 GeoJSON 檔案或其他影像的連結。
+ 欄位顏色不適用於 Highcharts 視覺效果。預設佈景主題顏色會套用至所有 Highcharts 視覺效果。

## 建立 Highcharts 視覺效果
<a name="highchart-create"></a>

使用下列程序在 Amazon Quick 中建立 Highcharts 視覺效果。

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟您要新增 Highcharts 視覺效果的快速分析。

1. 選擇應用程式列上的**新增**，然後選擇**新增視覺效果**。

1. 在**視覺效果類型**窗格中，選擇 Highcharts 視覺效果圖示。分析表上會顯示空白視覺效果，**屬性**窗格會在左側開啟。

1. 在**屬性**窗格中，展開**顯示設定**區段，並執行下列動作：

   1. 在**編輯標題**欄位中，選擇畫筆圖示，輸入您希望視覺效果擁有的標題，然後選擇**儲存**。或者，選擇眼球圖示來隱藏標題。

   1. (選用) 在**編輯副標題**欄位中，選擇畫筆圖示，輸入您希望視覺效果擁有的副標題，然後選擇**儲存**。或者，選擇眼睛圖示來隱藏副標題。

   1. (選用) 在**替代文字**欄位中，新增您希望視覺效果具有的替代文字。

1. 展開**資料點限制**區段。在**要顯示的資料點數**欄位中，輸入您希望視覺效果顯示的資料點數量。Highcharts 視覺效果最多可顯示 10,000 個資料點。

1. 展開**圖表程式碼**區段。

1. 在**圖表程式碼** JSON 編輯器中輸入 JSON 結構描述。該編輯器提供關聯式協助和即時驗證，以確保輸入 JSON 已正確設定。您可以在錯誤下拉式清單中檢視快速識別的任何**錯誤**。以下範例顯示了 JSON 結構描述，該結構描述會建立口紅圖表，顯示按行業來看的當年銷售額。

   ```
   {
     "xAxis": {
       "categories": ["getColumn", 0]
     },
     "yAxis": {
       "min": 0,
       "title": {
         "text": "Amount ($)"
       }
     },
     "tooltip": {
       "headerFormat": "<span style='font-size:10px'>{point.key}</span><table>",
       "pointFormat": "<tr><td style='color:{series.color};padding:0'>{series.name}: </td><td style='padding:0'><b>${point.y:,.0f}</b></td></tr>",
       "footerFormat": "</table>",
       "shared": true,
       "useHTML": true
     },
     "plotOptions": {
       "column": {
         "borderWidth": 0,
         "grouping": false,
         "shadow": false
       }
     },
     "series": [
       {
         "type": "column",
         "name": "Current Year Sales",
         "color": "rgba(124,181,236,1)",
         "data": ["getColumn", 1],
         "pointPadding": 0.3,
         "pointPlacement": 0.0
       }
     ]
   }
   ```

1. 選擇**套用程式碼**。快速將 JSON 結構描述轉換為顯示在分析中的視覺效果。若要變更轉譯的視覺效果，請更新 JSON 結構描述中的相應屬性，然後選擇**套用程式碼**。

1. (選用) 開啟**參考**下拉式清單，存取實用 Highctarts 參考資料的連結。

對轉譯的視覺效果感到滿意後，關閉「屬性」窗格。如需可用於設定 Highcharts 視覺效果之 Quick Sight 特定表達式的詳細資訊，請參閱 [適用於 Highcharts 視覺效果的 Amazon Quick JSON 表達式語言](highchart-expressions.md)。

## 互動式 Highchart 功能
<a name="interactive-features"></a>

Amazon Quick Sight 中的高圖表視覺效果支援自訂動作、反白和自訂欄位顏色一致性，可讓您建立互動式且視覺化的凝聚性圖表，與其他 Quick Sight 視覺效果無縫整合。

### 自訂動作
<a name="custom-actions-feature"></a>

透過自訂動作，您可以為 Highchart 視覺效果中的任何資料點定義特定行為。此功能與 Quick Sight 的現有動作架構無縫整合，可讓您建立互動式圖表以回應使用者點按。系統目前支援單一資料點選擇，可讓您精確控制使用者互動。自訂動作可以跨各種圖表類型實作，包括折線圖、長條圖和堆疊長條圖等。

若要實作自訂動作，您需要修改 Highcharts JSON 組態。將事件區塊新增至序列組態，指定點選事件和對應的動作。例如：

```
{
  "series": [{
    "type": "line",
    "data": ["getColumn", 1],
    "name": "value",
    "events": {
      "click": [
        "triggerClick", { "rowIndex": "point.index" }
      ]
    }
}]
```

此組態會在圖表的資料點上啟用點選事件，讓 Quick Sight 能夠根據選取的資料處理自訂動作。

### 跨視覺效果醒目顯示
<a name="visual-highlighting-feature"></a>

跨視覺效果醒目顯示透過在不同圖表之間建立視覺連線，來增強儀表板的互動性。當使用者在一個圖表中選取元素時，其他視覺效果中的相關元素會自動醒目顯示，而不相關的元素則會變暗。此功能可協助使用者快速識別多個視覺效果之間的關係和模式，改善資料理解和分析。

若要啟用跨視覺效果醒目顯示並維持欄位顏色一致性，請使用 Highcharts JSON 組態中的 `quicksight` 子句。此子句可做為 Highcharts 轉譯和 Quick 視覺化互動系統之間的橋樑。以下是設定方法範例：

```
{
  "quicksight": {
    "pointRender": ["updatePointAttributes", {
      "opacity": ["case", 
        ["dataMarkMatch", ["getColumnName", 0], "series.name"],
        1,  // Full opacity for matching elements
        0.1 // Dim non-matching elements
      ],
      "color": ["getColumnColorOverrides", ["getColumnName", 0], "series.name"]
    }]
  }
}
```

此組態使用 Quick Sight 的 JSON 表達式語言，根據使用者互動和預先定義的顏色方案，動態修改不透明度和顏色等視覺屬性。

對於更複雜的案例，您可以根據多個條件設定醒目顯示。這可讓您在視覺效果中實現更細微的互動。下列範例會根據季度或星期幾來醒目顯示元素：

```
{
  "quicksight": {
    "pointRender": ["updatePointAttributes", {
      "opacity": ["case",
        ["||",
          ["dataMarkMatch", "quarter", "series.name"],
          ["dataMarkMatch", "day_of_week", "point.name"]
        ],
        1,  // Full opacity for matching elements
        0.1 // Dim non-matching elements
      ],
    }]
  }
}
```

### 欄位層級顏色一致性
<a name="field-color-feature"></a>

在整個儀表板中維持視覺效果一致性對於有效的資料解釋至關重要。欄位層級顏色一致性功能可確保指派給特定維度的顏色在儀表板中的所有視覺效果中保持不變。此一致性可協助使用者快速辨識和追蹤不同圖表類型和檢視中的特定資料類別，進而提升整體使用者體驗和資料理解。

# 適用於 Highcharts 視覺效果的 Amazon Quick JSON 表達式語言
<a name="highchart-expressions"></a>

Highcharts 視覺效果可接受最[有效的 JSON 值](https://www.w3schools.com/js/js_json_datatypes.asp)、標準算術運算子、字串運算子和條件運算子。Highcharts 視覺效果不支援下列 JSON 值：
+ 函數
+ 日期
+ 未定義的值

快速作者可以使用 JSON 表達式語言為高圖表視覺效果建立 JSON 結構描述。JSON 表達式語言用於將 JSON 繫結至 API 或資料集，以允許動態填入和修改 JSON 結構。開發人員也可以使用 JSON 表達式語言，透過簡潔直觀的表達式來擴充和轉換 JSON 資料。

使用 JSON 表達式語言時，表達式會以陣列表示，其中第一個元素指定操作，後續元素則是引數。例如，`["unique", [1, 2, 2]]` 會將 `unique` 操作套用至陣列 `[1, 2, 2]`，得到的結果為 `[1, 2]`。此陣列型語法允許彈性表達式，從而能夠對 JSON 資料進行複雜轉換。

JSON 表達式語言支援*巢狀表達式*。巢狀表達式是包含其他表達式做為引數的表達式。例如，`["split", ["toUpper", "hello world"], " "]` 先將字串 `hello world` 轉換為大寫，然後將其分割為單字陣列，得到的結果為 `["HELLO", "WORLD"]`。

使用下列各節，進一步了解 Amazon Quick 中 Highcharts 視覺效果的 JSON 表達式語言。

**Topics**
+ [

# 算術
](jle-arithmetics.md)
+ [

# 陣列運算子
](jle-arrays.md)
+ [

# Amazon Quick 表達式
](jle-qs-expressions.md)

# 算術
<a name="jle-arithmetics"></a>

下表顯示了可與 JSON 表達式語言搭配使用的算術表達式。


| 作業 | 表達式 | 輸入 | Output | 
| --- | --- | --- | --- | 
| 加法 | ["\$1", operand1, operand2] | \$1 sum: ["\$1", 2, 4] \$1 | \$1 sum: 6 \$1 | 
| 減法 | ["-", operand1, operand2] | \$1 difference: ["-", 10, 3] \$1 | \$1 difference: 7 \$1 | 
| 乘法 | ["\$1", operand1, operand2] | \$1 product: ["\$1", 5, 6] \$1 | \$1 product: 30 \$1 | 
| 除法 | ["/", operand1, operand2] | \$1 quotient: ["/", 20, 4] \$1 | \$1 quotient: 5 \$1 | 
| 模數 | ["%", operand1, operand2] | \$1 remainder: ["%", 15, 4] \$1 | \$1 remainder: 3 \$1 | 
| 指數 | ["\$1\$1", base, exponent] | \$1 power: ["\$1\$1", 2, 3] \$1 | \$1 power: 8 \$1 | 
| 絕對值 | ["abs", operand] | \$1 absolute: ["abs", -5] \$1 | \$1 absolute: 5 \$1 | 
| Square Root (平方根) | ["sqrt", operand] | \$1 sqroot: ["sqrt", 16] \$1 | \$1 sqroot: 4 \$1 | 
| 對數 (以 10 為底) | ["log10", operand] | \$1 log: ["log10", 100] \$1 | \$1 log: 2 \$1 | 
| 自然對數 | ["ln", operand] | \$1 ln: ["ln", Math.E] \$1 | \$1 ln: 1 \$1 | 
| 四捨五入 | ["round", operand] | \$1 rounded: ["round", 3.7] \$1 | \$1 rounded: 4 \$1 | 
| 向下取整 | ["floor", operand] | \$1 floor: ["floor", 3.7] \$1 | \$1 floor: 3 \$1 | 
| 向上取整 | ["ceil", operand] | \$1 ceiling: ["ceil", 3.2] \$1 | \$1 ceiling: 4 \$1 | 
| 正弦波 | ["sin", operand] | \$1 sine: ["sin", 0] \$1 | \$1 sine: 0 \$1 | 
| 餘弦 | ["cos", operand] | \$1 cosine: ["cos", 0] \$1 | \$1 cosine: 1 \$1 | 
| 切線 | ["tan", operand] | \$1 tangent: ["tan", Math.PI] \$1 | \$1 tangent: 0 \$1 | 

# 陣列運算子
<a name="jle-arrays"></a>

JSON 表達式語言允許下列函數的一般陣列操作：
+ `map`：將映射函數套用至陣列的每個元素，並傳回具有轉換值的新陣列。

  例如，`["map", [1, 2, 3], ["*", ["item"], 2]]` 透過將陣列 `[1, 2, 3]` 的每個元素乘以 2 來映射陣列的每個元素。
+ `filter`：根據指定條件篩選陣列，並傳回僅包含滿足條件之元素的新陣列

  例如，`["filter", [1, 2, 3, 4, 5], ["==", ["%", ["item"], 2], 0]]` 會篩選陣列 `[1, 2, 3, 4, 5]`，使其僅包含偶數。
+ `reduce`：透過對每個元素套用減少程式函數並累積結果，將陣列減少為單一值。

  例如，`["reduce", [1, 2, 3, 4, 5], ["+", ["acc"], ["item"]], 0]` 會將陣列 `[1, 2, 3, 4, 5]` 減少為其元素的總和。
+ `get`：透過指定索引鍵或索引從物件或陣列中檢索值。

  例如，`["get", ["item"], "name"]` 會從目前項目中檢索 `"name"` 屬性的值。
+ `unique`：指定陣列只會傳回此陣列內的唯一項目。

  例如，`["unique", [1, 2, 2]]` 傳回 `[1, 2]`。

# Amazon Quick 表達式
<a name="jle-qs-expressions"></a>

Amazon Quick 提供額外的表達式來增強 Highcharts 視覺效果的功能。使用下列各節進一步了解高圖表視覺效果的常見快速表達式。如需 Amazon Quick 中 JSON 表達式語言的詳細資訊，請參閱 [DemoCentral](https://democentral.learnquicksight.online/#) 中的 [Highcharts Visual QuickStart 指南](https://democentral.learnquicksight.online/#Dashboard-FeatureDemo-Highcharts-Visual)。

**Topics**
+ [

## `getColumn`
](#highcharts-expressions-getcolumn)
+ [

## `formatValue`
](#highcharts-expressions-formatvalue)

## `getColumn`
<a name="highcharts-expressions-getcolumn"></a>

使用 `getColumn` 表達式從指定的資料欄索引傳回值。例如，下表顯示了產品及其類別和價格的清單。


| 產品名稱 | Category | Price | 
| --- | --- | --- | 
|  產品 A  |  技術  |  100  | 
|  產品 B  |  零售  |  50  | 
|  產品 C  |  零售  |  75  | 

下列 `getColumn` 查詢會產生陣列，顯示所有產品名稱及價格。

```
{
	product name: ["getColumn", 0], 
	price: ["getColumn", 2]
}
```

傳回下列 JSON：

```
{
	product name: ["Product A", "Product B", "Product C"],
	price: [100, 50, 75]
}
```

您也可以一次傳遞多個資料欄來產生陣列，如下列範例所示。

**輸入**

```
{
	values: ["getColumn", 0, 2]
}
```

**輸出**

```
{
	values: [["Product A", 100], ["Product B", 50], ["Product C", 75]]
}
```

與 `getColumn` 類似，下列表達式可用來傳回欄位集或佈景主題的資料欄值：
+ `getColumnFromGroupBy` 會按欄位傳回群組中的資料欄。第二個引數是要傳回的資料欄的索引。例如，`["getColumnFromGroupBy", 0]` 會將第一個欄位的值傳回為陣列。您可以傳遞多個索引以取得一組陣列，其中每個元素對應於按欄位集分組中的欄位。
+ `getColumnFromValue` 會傳回值欄位集的資料欄。您可以傳遞多個索引以取得一組陣列，其中每個元素對應於值欄位集中的欄位。
+ `getColorTheme` 會傳回快速佈景主題的目前顏色面板，如下列範例所示。

  ```
  {
  "color": ["getColorTheme"]
  }
  ```

  ```
  {
  "color": ["getPaletteColor", "secondaryBackground"]
  }
  ```

**範例**

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/get-column-example.png)


`getColumn` 可以從資料表存取任意資料欄：
+ `["getColumn", 0]`：傳回陣列 `[1, 2, 3, 4, 5, ...]`
+ `["getColumn", 1]`：傳回陣列 `[1, 1, 1, 1, 1, ...]`
+ `["getColumn", 2]`：傳回陣列 `[1674, 7425, 4371, ...]`

`getColumnFromGroupBy` 的運作方式類似，但其索引僅限於按欄位集分組的群組中的資料欄：
+ `["getColumnFromGroupBy", 0]`：傳回陣列 `[1, 2, 3, 4, 5, ...]`
+ `["getColumnFromGroupBy", 1]`：傳回陣列 `[1, 1, 1, 1, 1, ...]`
+ `["getColumnFromGroupBy", 2]`：無法運作，原因是按欄位集分組的群組中只有兩個資料欄

`getColumnFromValue` 的運作方式類似，但其索引僅限於值欄位集內的資料欄：
+ `["getColumnFromValue", 0]`：傳回陣列 `[1, 2, 3, 4, 5, ...]`
+ `["getColumnFromValue", 1]`：無法運作，原因是值欄位集內只有一個資料欄
+ `["getColumnFromValue", 2]`：無法運作，原因是值欄位集內只有一個資料欄

## `formatValue`
<a name="highcharts-expressions-formatvalue"></a>

使用 `formatValue`運算式將快速格式化套用至您的值。例如，下列表達式會使用 Quick 欄位集第一個欄位中指定的格式值來格式化 x 軸標籤。

```
 "xAxis": {
		"categories": ["getColumn", 0],
		"labels": {
		"formatter": ["formatValue", "value", 0]
		}
	}
```

# 使用直方圖
<a name="histogram-charts"></a>

使用 Amazon Quick 中的長條圖圖表來顯示資料中連續數值的分佈。Amazon Quick 使用非標準化長條圖，其使用每個儲存貯體中資料點或事件的絕對計數。

若要建立直方圖，請使用一項度量。新的直方圖最初會在 X 軸中顯示十個 *bin* (也稱為*儲存貯體*)。這些會在圖表上顯示為長條。您可以自訂適用於您資料集的長條。Y 軸會顯示每個 bin 中的值的絕對計數。

請務必調整格式設定，以便獲得可清晰辨識的形狀。如果資料包含極端值，這在您發現一或多個值落在 X 軸端之外時會變得顯而易見。如需 Amazon Quick 如何處理超出顯示限制的資料的詳細資訊，請參閱 [顯示限制](working-with-visual-types.md#display-limits)。

## 直方圖功能
<a name="histogram-chart-features"></a>

使用下表以了解直方圖支援的功能。


****  

| 功能 | 支援？ | 說明 | 如需詳細資訊 | 
| --- | --- | --- | --- | 
| 變更圖例顯示 | 否 |  | [Quick 中視覺效果類型的圖例](customizing-visual-legend.md) | 
| 變更標題顯示 | 是 |  | [Quick 中視覺效果類型的標題和字幕](customizing-a-visual-title.md) | 
| 變更軸範圍 | 否 | 不過，您可以變更 bin 計數或 bin 間隔寬度 (分佈範圍)。 |  | 
| 顯示或隱藏軸線、網格線、軸標籤和軸排序圖示 | 是 |  | [Quick 中視覺效果類型的軸和網格線](showing-hiding-axis-grid-tick.md) | 
| 變更視覺效果顏色 | 是 |  | [Quick 中視覺效果類型的顏色](changing-visual-colors.md) | 
| 聚集於或排除元素 | 否 |  |  | 
| 排序 | 否 |  |  | 
| 執行欄位彙總 | 否 | 直方圖僅使用計數彙總。 |  | 
| 新增向下切入 | 否 |  |  | 

## 建立直方圖
<a name="create-histogram-chart"></a>

使用下列程序建立直方圖。

**如何建立直方圖**

1. 在分析頁面，選擇工具列上的 **Visualize (視覺化)**。

1. 選擇應用程式列上的 **Add (新增)**，然後選擇 **Add visual (新增視覺效果)**。

1. 在**視覺化類型**窗格中，選擇長條圖圖示。

1. 在 **Fields list (欄位清單)** 窗格上，選擇您要適當地在 **Value (值)** 欄位中使用的欄位。**Count (計數)** 彙總會自動套用至該值。

   產生的直方圖會顯示下列內容：
   + X 軸會依預設顯示 10 個 bin，代表您選擇之量度中的間隔。您可以在下一個步驟中自訂 bin。
   + Y 軸會顯示每個 bin 中的個別值的絕對計數。

1. (選用) 在視覺化效果控件上選擇 **Format (格式)**，以變更直方圖格式。您可以依據計數或寬度 (但不能同時依據兩者) 來格式化 bin。計數設定會變更 bin 的顯示數量。寬度設定會變更每個 bin 包含之間隔的寬度或長度。

## 格式化直方圖
<a name="format-histogram-chart"></a>

使用下列程序格式化直方圖。

**如何格式化直方圖**

1. 選擇您要使用的直方圖。它應該會顯示為反白的選取項目。視覺化效果控件會顯示在直方圖右上角。

1. 選擇視覺化效果控件功能表上的齒輪圖示，以檢視 **Format visual (格式化視覺化效果)** 選項。

1. 在**屬性**窗格中，設定下列選項以控制直方圖顯示：
   + **Histogram (直方圖)** 設定。選擇下列其中*一個*設定：
     + Bin 計數 (選項 1)：X 軸上顯示的 Bin 數量。
     + Bin 寬度 (選項 1)：每個間隔的寬度 (或長度)。此設定會控制每個 Bin 中要包含的項目或事件數量。例如，如果資料是以分鐘為單位，您可以將此設定為 10 以顯示 10 分鐘的間隔。
   + 透過下列設定，您可以探索格式化資料集直方圖的最佳方式。例如，在某些情況下，您可能有在某個 bin 中有一個高峰，而大多數其他 bin 看起來是疏鬆的狀態。這並不是實用的視圖。您可以個別或一起使用下列設定：
     + 變更 **X 軸**設定中**顯示的資料點數目**。

       根據預設，Amazon Quick 最多可顯示 100 個儲存貯體 （儲存貯體）。若要顯示更多 (最多 1,000 個)，請變更 **Number of data points displayed (顯示的資料點數)** 的 X 軸設定。
     + 在 **Y** 軸設定中啟用**對數刻度**。

       資料有時無法符合您想要的形狀，而這可能會提供誤導的結果。例如，如果右側遠端處形狀扭曲而使您無法正確讀取，您可以對它套用日誌刻度。不過，這麼做不會使資料標準化，而是減少扭曲的情況。
     + 顯示 **Data labels (資料標籤)**。

       您可以啟用資料標籤顯示，以查看圖表中的絕對計數。即使您在大多數情況下不想顯示這些內容，但您仍可在進行分析時啟用它們。這些標籤可協助您決定格式化和篩選選項，因為它們會反映那些太小而無法突出之 bin 中的計數。

       若要查看所有資料標籤，即使它們彼此重疊，仍請啟用 **Allow labels to overlap (允許標籤重疊)**。

1. (選用) 變更其他視覺化效果設定。如需詳細資訊，請參閱[在 Amazon Quick 中格式化](formatting-a-visual.md)。

## 了解直方圖
<a name="histogram-understanding"></a>

雖然直方圖看起來和長條圖很相似，但它們是不同的。事實上，唯一的相似性在於其外觀，因為它們都使用長條。在直方圖上，我們將每個長條稱為 *bin* 或*儲存貯體*。

每個 bin 都包含某個範圍的值 (稱為*間隔*。當您暫時停留在其中一個 bin 時，該間隔的相關詳細資料會顯示在工具提示中，顯示以字元括住的兩個數字。以字元括住的這種類型代表其中的數字是否屬於位於所選 bin 內的間隔，如下所示：
+ 如果數字旁邊是方括號，則表示包含該數字。
+ 如果數字旁邊是括號，則表示不包含該數字。

例如，假設直方圖中的第一個長條顯示下列表示法。

```
[1, 10)
```

方括號表示數字 1 已包含在第一個間隔中。括號表示不包含數字 10。

在同一個直方圖中，第二個長條會顯示下列表示法。

```
[10, 20)
```

在此情況下，10 已包含在第二個間隔中，而且不包含 20。數字 10 無法同時存在於兩個間隔，因此此表示法會顯示哪一個間隔包含該數字。

**注意**  
在直方圖中用來標示間隔的模式來自於標準數學表示法。下列範例使用一組包含 10、20 和介於這之間所有數字的數字，顯示可能的模式。  
[10, 20] - 這組為封閉式。它在兩端都有硬性界限。
[10, 21) - 這組為半開放式。它在左側有一個硬性界限，在右側有一個軟性界限。
(9, 20] - 這組為半開放式。它在左側有一個軟性界限，在右側有一個硬性界限。
(9, 21) - 這組為開放式。它在兩端都有軟性界限。

因為此直方圖使用量性資料 (數字)，而不是質性資料，因此資料分佈會有邏輯順序。這就是所謂的*形狀*。形狀通常會根據每個 bin 的計數用來描述形狀擁有的品質。包含數量較多的值的 bin 會形成*尖峰*。包含數量較少的值的 bin 會在圖表邊緣形成*結尾*，並在尖峰之間形成*低谷*。大多數直方圖屬於下列其中一種形狀：
+ 非對稱或*扭曲*分佈具有聚集在左側或右側附近的值 - 亦即 X 軸的低端或高端。扭曲的方向會根據資料較長結尾的所在位置定義，而不是根據尖峰的所在位置定義。以這種方式定義的原因是，此方向也描述了平均數 (平均值)。在扭曲的分佈中，此平均數和中位數是兩個不同的數字。不同類型的扭曲分佈如下所示：
  + *負向*扭曲 (或*左側*扭曲) - 這種圖表在尖峰左側有平均數。它在左側有一個較長的結尾，且在右側有一個尖峰，後面有時候會接著一個較短的結尾。
  + *正向*扭曲 (或*右側*扭曲) - 這種圖表在尖峰右側有平均數。它在右側有一個較長的結尾，且在左側有一個尖峰，前面有時候會接著一個較短的結尾。
+ 對稱或*常態*分佈具有一個在中心點每一側上映射的形狀 (例如鐘形曲線)。在常態分佈中，平均數和中位數是相同的值。不同類型的常態分佈如下所示：
  + 常態分佈或*單峰* - 這種圖表具有一個代表最常見的值的中心尖峰。這通常稱為鐘形曲線或 Gaussian 分佈。
  + 雙峰 - 這種圖表具有兩個代表最常見的值的尖峰。
  + 多峰 - 這種圖表具有三個以上代表最常見的值的尖峰。
  + 均勻 - 這種圖表沒有任何尖峰或低谷，具有相當相等的資料分佈。

下表顯示直方圖與長條圖有何不同。


| 直方圖 | 長條圖 | 
| --- | --- | 
| 直方圖會顯示一個欄位中的值的分佈。 | 長條圖會比較一個欄位中的值，並依據維度分組。 | 
| 直方圖會將值排序為代表某個範圍的值的 bin，例如 1-10、10-20 等。 | 長條圖會繪製分組為多個類別的值。 | 
| 所有 bin 的總和完全等於篩選資料中 100% 的值。 | 長條圖不需要顯示所有可用資料。您可以在視覺效果層級上變更顯示設定。例如，長條圖可能只會顯示資料的前 10 大類別。 | 
| 重新排列長條會減損整體圖表的意義。 | 長條可為任何順序，而不會變更整體圖表的意義。 | 
| 如果長條之間沒有空間，則表示這是連續的資料。 | 如果長條之間有空間，則表示這是類別資料。 | 
| 如果直方圖中包含線條，則代表資料的一般形狀。 | 如果長條圖中包含線條，這稱為組合圖，而線條代表與長條不同的量度。 | 

# 使用影像元件
<a name="image-component"></a>

使用映像元件將靜態映像從桌面上傳至快速分析。每個快速分析表最多支援 10 個影像元件。影像元件不包含在每個工作表的 50 個視覺效果限制中。影像元件的檔案大小不能超過 1 MB。

影像元件支援下列檔案格式：
+ `.bmp`
+ `.jpg/.jpeg`
+ `.png`
+ `.tiff`
+ `.webp`

使用下列程序將映像元件新增至快速分析：

**將映像元件新增至快速分析**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟您要新增映像的快速分析。

1. 選擇分析頂端工具列中的**新增影像**按鈕。

1. 桌面的檔案選擇隨即開啟。選擇要上傳的存檔，然後選擇**開啟**。該影像元件的檔案大小不能超過 1 MB。

1. 映像會上傳至 Quick，並顯示在分析中。

1. (選用) 若要新增替代文字或更新影像縮放選項，請選擇影像右上角的**屬性**圖示以開啟**屬性**窗格。

1. (選用) 若要將[自訂工具提示](https://docs.aws.amazon.com/quicksuite/latest/userguide/customizing-visual-tooltips)新增至影像，請開啟**屬性**窗格，選擇**互動**，然後選擇**新增動作**。影像元件不支援篩選動作。您也可以使用**互動**區段，將自訂導覽和 URL 動作新增至影像元件。

1. (選用) 若要複製或取代影像，請選擇影像右上角的**更多選項**省略符號 (三個點) 圖示，然後選擇您要執行的動作。

# 使用 KPI
<a name="kpi"></a>

使用關鍵績效指標 (KPI)，以視覺化關鍵值與其目標值之間的比較。

KPI 顯示值比較、要比較的兩個值，以及提供顯示資料內容的視覺效果。您可以從一組預先設計的版面配置中選擇，以符合您的業務需求。下圖顯示使用迷你圖的 KPI 視覺效果範例。

1. 在**視覺效果窗格**中選擇**新增 (\$1)** 下拉式清單。

1. 從「視覺效果類型」選單中選擇 KPI 圖示。

## KPI 功能
<a name="kpi-features"></a>

若要了解 Amazon Quick 中 KPI 視覺化類型支援的功能，請使用下表。


| 功能 | 支援？ | 說明 | 如需詳細資訊 | 
| --- | --- | --- | --- | 
| 變更標題顯示 | 是 |  | [Quick 中視覺效果類型的標題和字幕](customizing-a-visual-title.md) | 
| 移除標題 | 是 | 您可以選擇不顯示標題。 |  | 
| 變更比較方法 | 是 | 根據預設，Amazon Quick 會自動選擇方法。設定包括自動、差異、百分比和差異百分比。 |  | 
| 變更顯示的主要值 | 是 | 您可以選擇比較 (預設) 或實際。 |  | 
| 顯示或移除進度列 | 是 | 您可以將視覺效果格式化，以顯示 (預設) 或不顯示進度列。 |  | 

如需有關 KPI 格式選項的詳細資訊，請參閱 [KPI 選項](KPI-options.md)。

## 建立 KPI
<a name="create-KPI"></a>

使用下列程序以建立 KPI。

**若要建立 KPI**

1. 為您的資料集建立新分析。

1. 在 **Visual types (視覺效果類型)** 窗格中，選擇 KPI 圖示。

1. 從 **Fields list (欄位清單)** 窗格中，將您想要使用的欄位拖曳到適當的欄位集。您必須使用目標欄位集所指出的度量欄位。如果您選擇使用維度欄位作為度量欄位，則會自動套用 **Count (計數)** 彙總函數以建立數值。

   若要建立 KPI，請將度量拖曳到 **Value (值)** 欄位集。若要比較該值與目標值，請將不同的度量拖曳到 **Target value (目標值)** 欄位集。

1. (選用) 選擇視覺效果右上角的視覺效果附帶功能表，然後選擇 **Format visual (格式化視覺效果)**，以選擇格式化選項。

## 變更 KPI 的版面配置
<a name="KPI-layout"></a>

使用下列程序來變更 KPI 的版面配置。

**若要變更 KPI 的版面配置**

1. 導覽至要變更的 KPI 視覺效果，並選擇 **KPI 版面配置**。

1. 在 **KPI 版面配置**窗格中，選擇要使用的 KPI 版面配置。

# 使用圖層地圖
<a name="layered-maps"></a>

使用圖層地圖來視覺化具有自訂地理邊界的資料，例如國會選區、銷售區域或使用者定義的區域。透過圖層貼圖，Quick 作者會將 GeoJSON 檔案上傳至 Amazon Quick，以在基礎貼圖上塑造圖層，並加入 Quick 資料以視覺化相關聯的指標和維度。形狀圖層可以設定顏色、邊界和不透明度。快速作者也可以透過工具提示和自訂動作，將互動性新增至圖層。

**注意**  
Amazon Quick layer 地圖視覺效果僅支援多邊形形狀。不支援折線和點幾何圖形。

下圖顯示 Amazon Quick 中的圖層貼圖視覺效果。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/layer-map.png)


## 使用圖層地圖建立形狀圖層
<a name="layered-maps-create"></a>

使用以下程序，在 Amazon Quick 中建立具有圖層貼圖視覺效果的形狀圖層。

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟您要新增圖層映射的快速分析。

1. 選擇應用程式列上的 **Add (新增)**，然後選擇 **Add visual (新增視覺效果)**。

1. 在**視覺效果類型**窗格中，選擇其中一個圖層地圖圖示。

1. 分析中會顯示空的地圖視覺效果，並提示您繼續設定圖層。選擇**設定圖層**以繼續設定圖層地圖。

1. **圖層屬性**窗格在右側開啟。導覽至**形狀檔**區段，然後選擇**上傳形狀檔**。

1. 選擇要視覺化的 GeoJSON 檔案。檔案必須為 `.geojson` 格式，且不得超過 100 MB。

1. 導覽至**資料**區段。

1. 對於**形狀檔索引鍵欄位**，選擇您希望視覺化該形狀的欄位。

1. (選用) 對於**資料集索引鍵欄位**，選擇您希望視覺化該形狀的資料集欄位。若要將顏色指派給形狀，請新增顏色欄位。如果顏色欄位為量值，則形狀會使用漸層著色。如果顏色欄位為維度，則形狀會使用分類著色。如果未向形狀指派顏色欄位，請使用**圖層屬性**窗格**樣式**區段中的填充顏色選項，為所有形狀設定通用顏色。

1. (選用) 若要變更圖層名稱，請導覽至**圖層選項**區段，然後在**圖層名稱**輸入中輸入名稱。

1. (選用) 若要變更填充或邊界顏色，請導覽至**樣式**區段，然後選擇您要變更之物件旁的顏色開關。若要調整顏色的不透明度，請在眼睛圖示旁的輸入中輸入百分比。如果您未將顏色欄位指派給**資料集索引鍵欄位**，則可使用填充顏色選項為所有形狀設定通用顏色。

# 使用折線圖
<a name="line-charts"></a>

針對以下案例，使用折線圖來比較度度量在一段時間內的變化：
+ 一段時間內的一個度量，例如依月份的銷售毛額。
+ 一段時間內的多個度量，例如依月份的銷售毛額和銷售淨額。
+ 一段時間內一個維度的一個度量，例如依航空公司的每天班機延誤次數。

折線圖依據 Y 軸所顯示的範圍，顯示一組度量或維度的個別值。區域折線圖不同於一般折線圖，每個值由圖表的彩色區域表示，而不只是折線而已，讓您更輕鬆評估項目值彼此之間的關係。

因為堆疊區域折線圖的運作方式與其他折線圖不同，所以如果可以，請將其簡化。那麼檢閱者就不用試圖解釋這些數字了。相反地，他們可以專注於每組值與整體之間的關係。簡化的一種方法是透過減少軸的步進大小來刪除螢幕左側的數字。若要這樣做，請從視覺效果選單中選擇 **Options (選項)** 圖示。在 **Y 軸**下的**格式選項**中，輸入 **2** 作為**步長大小**。

圖表的每條折線代表一段時間內的量值。您可以互動方式檢視圖表上的值。將滑鼠暫留在任何一行上，以查看顯示 **X 軸**上每行值的彈出式圖例。如果您將滑鼠游標暫留在資料點上，您可以在 **X 軸**上看到該特定點**的值**。

使用折線圖來比較一或多個度量或維度的值在一段時間內的變化。

在一般折線圖中，每個值由一條折線表示，在區域折線圖中，每個值由圖表的上色區域表示。

使用折線圖比較一或多個度量或維度的值在一段時間內的變化。堆疊面積線圖顯示 X 軸上每個群組的總值。它們使用顏色區段來顯示群組中每個量值或維度值。

折線圖在 X 軸上最多顯示 10,000 個資料點 (未選取顏色欄位時)。上色時，折線圖在 X 軸上最多顯示 400 個資料點，可上色最多 25 個資料點。如需有關資料超出此視覺效果的顯示限制時的詳細資訊，請參閱[顯示限制](working-with-visual-types.md#display-limits)。

## 折線圖功能
<a name="line-chart-features"></a>

使用下表以了解折線圖支援的功能。


| 功能 | 支援？ | 說明 | 如需詳細資訊 | 
| --- | --- | --- | --- | 
| 變更圖例顯示 | 是 |  | [Quick 中視覺效果類型的圖例](customizing-visual-legend.md) | 
| 變更標題顯示 | 是 |  | [Quick 中視覺效果類型的標題和字幕](customizing-a-visual-title.md) | 
| 變更軸範圍 | 是 | 您可以設定 Y 軸的範圍。 | [在 Quick 中根據視覺效果類型進行範圍和擴展](changing-visual-scale-axis-range.md) | 
| 顯示或隱藏軸線、網格線、軸標籤和軸排序圖示 | 是 |  | [Quick 中視覺效果類型的軸和網格線](showing-hiding-axis-grid-tick.md) | 
| 新增第二個 Y 軸 | 是 |  | [建立雙軸折線圖](#dual-axis-chart) | 
| 變更視覺效果顏色 | 是 |  | [Quick 中視覺效果類型的顏色](changing-visual-colors.md) | 
| 聚集於或排除元素 | 是，但有例外 | 您可以聚焦於或排除圖表上的任何折線，但下列情況例外： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/line-charts.html) 在這些情況下，您只能聚焦於折線，無法排除它。 |  [聚焦於視覺化元素](focusing-on-visual-elements.md) [排除視覺化元素](excluding-visual-elements.md) | 
| 排序 | 是，但有例外 | 您可以排序 X axix (X 軸) 和 Value (值) 欄位集的數值度量的資料。其他資料會自動遞增排序。 | [在 Amazon Quick 中排序視覺化資料](sorting-visual-data.md) | 
| 執行欄位彙總 | 是 | 您必須將彙總套用到您為值選擇的欄位，而無法將彙總套用到您為 X 軸或顏色選擇的欄位。 | [變更欄位彙總](changing-field-aggregation.md) | 
| 新增向下切入 | 是 | 您可以將向下切入等級新增到 X axis (X 軸) 和 Color (顏色) 欄位集。 | [在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md) | 

## 建立折線圖
<a name="create-measure-line-chart"></a>

使用下列程序以建立折線圖。

**若要建立拆線圖**

1. 在分析頁面，選擇工具列上的 **Visualize (視覺化)**。

1. 選擇應用程式列上的 **Add (新增)**，然後選擇 **Add visual (新增視覺效果)**。

1. 在 **Visual types (視覺效果類型)** 窗格中，選擇其中一個折線圖圖示。

1. 從 **Fields list (欄位清單)** 窗格中，將您想要使用的欄位拖曳到適當的欄位集。一般而言，建議使用目標欄位集所指出的維度欄位或度量欄位。如果您選擇使用維度欄位作為度量欄位，則會自動套用 **Count (計數)** 彙總函數以建立數值。
   + 若要建立單一度量折線圖，請將維度拖曳到 **X axis (X 軸)** 欄位集，將一個度量拖曳到 **Value (值)** 欄位集。
   + 若要建立多重度量折線圖，請將維度拖曳到 **X axis (X 軸)** 欄位集，將兩個或更多度量拖曳到 **Value (值)** 欄位集。保持 **Color (顏色)** 欄位集空白。
   + 若要建立多重維度折線圖，請將維度拖曳到 **X axis (X 軸)** 欄位集，將一個度量拖曳到 **Value (值)** 欄位集，將一個維度拖曳到 **Color (顏色)** 欄位集。

1. (選用) 將一或多個額外的欄位拖曳到 **X axis (X 軸)** 或 **Color (顏色)** 欄位集，以新增向下切入分層。如需有關新增向下切入的詳細資訊，請參閱[在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md)。

## 建立雙軸折線圖
<a name="dual-axis-chart"></a>

如果要在同一條折線圖中顯示兩個或多個指標，則可以建立雙軸折線圖。

*雙軸圖表*是具有兩個 Y 軸的圖表 (一個軸在圖表的左側，一個軸在圖表的右側)。例如，假設要建立折線圖。它顯示了在一段時間內註冊郵件清單和免費服務的訪客數量。如果這兩個量值之間的比例隨著時間的推移而變化很大，您的圖表可能看起來像下面的折線圖。由於量值之間的比例差異很大，因此比例較小的量值幾乎平放在零處。

![\[帶有兩條線和一個軸的折線圖的影像。一條線在零處是平坦的。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/dual-axis-chart1.png)


 如果要在同一圖表中顯示這些量值，則可以建立雙軸折線圖。以下是具有兩個 Y 軸的相同折線圖範例：

![\[帶有雙軸的上一個折線圖的影像。兩條折線現在可見。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/dual-axis-chart2.png)


**若要建立雙軸折線圖**

1. 在分析中，建立一個折線圖。如需建立折線圖的詳細資訊，請參閱 [建立折線圖](#create-measure-line-chart)。

1. 在**值欄位集**中，選擇欄位下拉式選單，選擇**顯示於：左 Y 軸**，然後選擇**右 Y** 軸。

   或者，您可以使用**屬性**窗格建立雙軸折線圖：

   1. 在拆線圖右上角的選單中，選取**格式視覺效果**圖示。

   1. 在開啟的**屬性**窗格中，選擇**資料序列**。

   1. 在**資料系列**區段中，為要放置在單獨軸上的值選擇**在右軸上顯示**圖示。如有需要，請使用搜尋列快速尋找值。  
![\[「格式視覺效果」窗格的「資料影像」系列區段，其中「在右軸上顯示」圖示以紅色圈起來。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/dual-axis-chart3.png)

   圖示會更新，以指示該值顯示在右軸上。圖表會以兩個軸更新。

   **屬性**窗格會更新下列選項：
   + 若要將兩行的 Y 軸同步回單一軸，請選擇**屬性**窗格頂部的**單一 Y 軸**。
   + 若要格式化圖表左側的軸，請選擇「**左 Y 軸**」。
   + 若要格式化圖表右側的軸，請選擇「**右 Y 軸**」。

   如需資料化軸的詳細資訊，請參閱 [軸和網格線](showing-hiding-axis-grid-tick.md)。若要取得有關調整軸的範圍和比例的更多資訊，請參閱 [範圍和刻度](changing-visual-scale-axis-range.md)。

# 建立地圖和地理空間圖表
<a name="geospatial-charts"></a>

您可以在 Quick 中建立兩種類型的映射：點映射和填充映射。*點地圖*依大小展示每個位置的資料值之間的差異。*填色地圖*透過不同顏色深淺顯示每個位置的資料值之間的差異。

**重要**  
部分 目前不支援 Quick 中的地理空間圖表 AWS 區域，包括中國。  
如需地理空間問題的協助，請參閱[地理空間疑難排解](geospatial-troubleshooting.md)。

開始建立地圖之前，請執行以下動作：
+ 請確保您的資料集包含位置資料。*位置資料*是對應於緯度值和經度值的資料。位置資料可以在資料集中包含緯度資料欄和經度資料欄。它還可以包括帶有城市名稱的資料欄。快速可以繪製經緯度座標的圖表。它還可辨識地理元件，例如國家、州或地區、郡、城市和郵遞區號。
+ 確保您的位置資料欄位已標記為空間資料類型。
+ 考慮建立地理階層。

若要取得有關使用空間資料 (包括變更欄位資料類型和建立空間階層) 的詳細資訊，請參閱 [新增地理空間資料](geospatial-data-prep.md)。

若要進一步了解如何在 Quick 中建立映射，請參閱以下內容。

**Topics**
+ [

# 建立點地圖
](point-maps.md)
+ [

# 建立填充地圖
](filled-maps.md)
+ [

# 與地圖互動
](maps-interacting.md)

# 建立點地圖
<a name="point-maps"></a>

您可以在 Quick 中建立點貼圖，依大小顯示每個位置的資料值之間的差異。此類型地圖上的每個點都對應於資料中的地理位置，例如國家/地區、州/省或城市。地圖上的點大小代表**大小**欄位集中欄位的大小 (相對於相同欄位中的其他值)。點顏色代表**顏色**欄位集中的值。如果您選擇顏色欄位，則**顏色**欄位集中的欄位值會顯示在圖例中。

使用下列程序在 Quick 中建立點映射。

若要在 Quick 中建立點貼圖，請確定您有下列項目：
+ 一個地理空間欄位 (例如國家、州或地區、縣或區、城市、郵遞區號)。或者，您可以使用一個緯度欄位和一個經度欄位。
+ 一個用於大小的數值欄位 (量值)。
+ (選用) 顏色的分類欄位 (維度)。

若要取得有關格式化空間地圖的資訊，請參閱[地圖和空間圖資料表式化](https://docs.aws.amazon.com/quicksight/latest/user/geospatial-formatting)。

## 建立點地圖
<a name="point-maps-create"></a>

**若要建立點地圖**

1. 為您的分析新增視覺效果。如需有關啟動分析的詳細資訊，請參閱 [在 Quick Sight 中開始分析](creating-an-analysis.md)。如需將視覺效果新增至分析的詳細資訊，請參閱 [新增視覺效果](creating-a-visual.md#create-a-visual)。

1. 針對**視覺效果類型**，選擇**地圖上的點**圖示。它看起來像有點佈於其上的地球儀。

1. 將地理欄位從**欄位清單**窗格拖曳至**地理空間**欄位集，例如 `Country`。您也可以選擇緯度或經度欄位。

   將顯示一個點地圖，其中包含資料中每個位置的點。

   如果欄位是地理階層的一部分，則階層會顯示在欄位集。

1. 將量值從**欄位清單**窗格拖到**大小**欄位。

   地圖上的點會更新以展示每個位置的值大小。

1. (選用) 將維度從**欄位清單**窗格拖曳至**顏色**欄位集。

   每個點都會更新，以展示標註中每個分類值的點。

# 建立填充地圖
<a name="filled-maps"></a>

您可以在 Quick 中建立填滿的貼圖，透過不同的顏色色調來顯示每個位置的資料值之間的差異。

使用下列程序在 Quick 中建立填入的映射。

若要在快速中建立已填入的映射，請確定您有下列項目：
+ 一個地理空間欄位 (例如國家、州或地區、縣或區、郵遞區號)。
+ (選用) 顏色的數值欄位 (量值)。

## 建立填充地圖
<a name="filled-maps-create"></a>

**若要建立填充地圖**

1. 為您的分析新增視覺效果。如需有關啟動分析的詳細資訊，請參閱 [在 Quick Sight 中開始分析](creating-an-analysis.md)。如需將視覺效果新增至分析的詳細資訊，請參閱 [新增視覺效果](creating-a-visual.md#create-a-visual)。

1. 針對**視覺效果類型**，選擇**填充地圖**圖示。

1. 將地理欄位從**欄位清單**窗格拖曳至**地點**欄位集，例如 `Country`。

   填充地圖隨即顯示，其中資料中的每個位置都按照資料集中的出現次數 (計數) 填入。

   如果欄位是地理階層的一部分，則階層會顯示在欄位集。

1. (選用) 將量值從**欄位清單**窗格拖曳至**顏色**欄位集，例如 `Sales`。

   每個位置都會更新以顯示銷售總額。

# 與地圖互動
<a name="maps-interacting"></a>

當您在快速分析或發佈的儀表板中檢視地圖視覺效果時，您可以與其互動以探索您的資料。您可以平移、放大和縮小，以及自動縮放至所有資料。

依預設，地圖視覺效果永遠會根據基礎資料縮放。當您在地圖中四處平移或縮放至不同層級時，「縮放至資料」圖示會顯示在地圖右下角的放大和縮小圖示上方。使用此選項，您可以快速縮放至基礎資料。

**若要在地圖視覺效果中平移**
+ 按一下地圖視覺效果上的任意位置，然後向您要平移地圖的方向拖曳游標。

**若要放大或縮小地圖視覺效果**
+ 在地圖視覺效果上，選擇右下角的加號或減號圖示。或者，您可以按兩下地圖來放大，按住 Shift 鍵並按兩下以縮小顯示。

**若要縮放至所有資料**
+ 在地圖視覺效果上，選擇「縮放至資料」圖示。當您在地圖上平移或放大時，會出現此圖示。

# 使用小倍數
<a name="small-multiples"></a>

當您需要連續設定多個比較視覺效果時，請使用此功能。當您啟用*小型倍數*功能時，Amazon Quick 會建立小型視覺效果的容器或架子，side-by-side顯示。視覺效果的每個副本都包含一個資料檢視。使用小倍數是一種以高效和互動的方式全面了解業務的方法。

小倍數未列於調色盤視覺化圖示。相反，建立小倍數的選項在支援它的視覺效果中，顯示為一個欄位集。

**若要在分析中新增小型視覺效果**

1. 在折線圖、長條圖或圓餅圖上，將欄位新增至**小倍數**欄位集。

1. 若要查看您的小倍數，您需要放大容納它們的容器，以便一目瞭然地查看。

1. 若要格式化小倍數集，請從視覺效果的選單中選擇設定視覺格式 (鉛筆圖示)。您可以調整下列設定：
   + **版面配置**
     + **可見資料列**
     + **可見資料欄**
     + **面板數**
   + 面板標題選項 (切換)
     + 字型大小和顏色
     + 字型粗細
     + 文字對齊
   + **面板順序選項 (切換)**

     線條粗細、樣式和顏色
   + **面板裝訂邊 **(切換) 

     **Spacing**
   + **面板背景** (切換) 

     **Background color (背景顏色)**

# 使用圓餅圖
<a name="pie-chart"></a>

使用圓餅圖以比較維度中各項目的值。此類圖表的最佳使用為顯示總金額的百分比。

圓餅圖中每個扇形代表維度中的一個項目。扇形大小表示項目所代表的所選度量的值，在整個維度中所佔的比例。當精確度最不重要，且維度中的項目很少時，圓餅圖最有用。

若要建立甜甜圈圖表，請在 **Group/Color (群組/顏色)** 使用一個欄位集。僅有一個欄位時，表格以行數顯示劃分的值。要顯示部門維度值的指標值，您可以新增指標欄位的 **Value (值)** 欄位集。

圓餅圖針對群組或顏色最多顯示 20 個資料點。如需 Amazon Quick 如何處理超出顯示限制的資料的詳細資訊，請參閱 [顯示限制](working-with-visual-types.md#display-limits)。

## 圓餅圖功能
<a name="pie-chart-features"></a>

使用下表以了解圓餅圖支援的功能。


| 功能 | 支援？ | 說明 | 如需詳細資訊 | 
| --- | --- | --- | --- | 
| 變更圖例顯示 | 是 |  | [Quick 中視覺效果類型的圖例](customizing-visual-legend.md) | 
| 變更標題顯示 | 是 |  | [Quick 中視覺效果類型的標題和字幕](customizing-a-visual-title.md) | 
| 變更軸範圍 | 不適用 |  | [在 Quick 中根據視覺效果類型進行範圍和擴展](changing-visual-scale-axis-range.md) | 
| 顯示或隱藏軸標籤。 | 是 |  | [Quick 中視覺效果類型的軸和網格線](showing-hiding-axis-grid-tick.md) | 
| 變更視覺效果顏色 | 是 |  | [Quick 中視覺效果類型的顏色](changing-visual-colors.md) | 
| 聚集於或排除元素 | 是，但有例外 | 您可以聚焦於或排除圓餅圖上的扇形，但使用日期欄位當作維度時除外。在這種情況下，您只能聚焦於扇形，無法排除它。 |  [聚焦於視覺化元素](focusing-on-visual-elements.md) [排除視覺化元素](excluding-visual-elements.md) | 
| 排序 | 是 | 您可以依據您為值或群組或顏色選擇的欄位來排序。 | [在 Amazon Quick 中排序視覺化資料](sorting-visual-data.md) | 
| 執行欄位彙總 | 是 | 您必須將彙總套用到您為值選擇的欄位，而無法將彙總套用到您為群組/顏色選擇的欄位。 | [變更欄位彙總](changing-field-aggregation.md) | 
| 新增向下切入 | 是 | 您可以將向下切入等級新增到 Group/Color (群組/顏色) 欄位集。 | [在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md) | 

## 建立圓餅圖
<a name="create-pie-chart"></a>

使用下列程序以建立圓餅圖。

**若要建立圓餅圖**

1. 在分析頁面，選擇工具列上的 **Visualize (視覺化)**。

1. 選擇應用程式列上的 **Add (新增)**，然後選擇 **Add visual (新增視覺效果)**。

1. 在 **Visual types (視覺效果類型)** 窗格中，選擇圓餅圖圖示。

1. 從 **Fields list (欄位清單)** 窗格中，將您想要使用的欄位拖曳到適當的欄位集。一般而言，建議使用目標欄位集所指出的維度欄位或度量欄位。如果您選擇使用維度欄位作為度量欄位，則會自動套用 **Count (計數)** 彙總函數以建立數值。

   若要建立圓餅圖，請將維度拖曳到到 **Group/Color (群組/顏色)** 欄位集。或者，將度量拖曳到 **Value (值)** 欄位集。

1. (選用) 將一或多個額外的欄位拖曳到 **Group/Color (群組/顏色)** 欄位集，以新增向下切入分層。如需有關新增向下切入的詳細資訊，請參閱[在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md)。

# 使用樞紐分析表
<a name="pivot-table"></a>

使用樞紐分析表以顯示兩個維度交集的度度量。

熱圖和樞紐分析表以類似的表格形式來顯示資料。如果您想要識別趨勢和極端值，請使用熱圖，因為此圖使用了顏色，讓您更容易找到目標。如果您想要分析視覺效果上的資料，請使用樞紐分析表。

若要建立樞紐分析表，請至少選擇任何資料類型的一個欄位，然後選擇樞紐分析表圖示。Amazon Quick 會建立資料表，並將相交資料列值的資料欄值計數填入儲存格值。通常，您要選擇一個度量和該度量可測量的兩個維度。

樞紐分析表支援向下及向右捲動。您可以新增多達 20 個欄位做為列，新增 20 個欄位做為欄。最多可支援 50 萬筆記錄。

使用樞紐分析表可以執行下列作業：
+ 指定多個度量以填入表格的儲存格值，讓您能夠看到一連串的資料
+ 將樞紐分析表欄和列叢集化，以顯示依相關維度分組的子類別的值。
+ 對樞紐分析表資料列或資料欄中的值進行排序
+ 套用統計函數
+ 為列和欄添加總計與小計
+ 使用無限捲動
+ 調換列和欄所使用的欄位
+ 建立自訂總彙總

若要輕鬆調換樞紐分析表的列和欄所使用的欄位，請選擇視覺效果右上角附近的方向圖示 (![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/pivot-orientation.png))。若要查看可顯示及隱藏總計和小計、將視覺效果格式化或匯出資料到 CSV 檔案的選項，請選擇右上角的「選單項目」圖示。

如同所有視覺效果類型，您可以新增和移除欄位。您還能變更與視覺化元素相關聯的欄位、變更欄位彙總，以及變更日期欄位精細程度。此外，您可以聚焦於或排除列或欄。如需有關如何對樞紐分析表進行上述變更的詳細資訊，請參閱[變更視覺效果在 Amazon Quick 中使用的欄位](changing-visual-fields.md)。

如需設定樞紐分析表格式的相關資訊，請參閱[在 Amazon Quick 中格式化](formatting-a-visual.md)。

如需樞紐分析表的自訂總計彙總的相關資訊，請參閱 [自訂總計值](tables-pivot-tables-custom-totals.md)。

**Topics**
+ [

## 樞紐分析表功能
](#pivot-table-features)
+ [

# 建立樞紐分析表
](create-pivot-table.md)
+ [

# 樞紐分析表值定向
](pivot-table-value-orientation.md)
+ [

# 展開和摺疊樞紐分析表叢集
](expanding-and-collapsing-clusters.md)
+ [

# 在快速中顯示和隱藏樞紐分析表資料欄
](hiding-pivot-table-columns.md)
+ [

# 在快速中排序樞紐分析表
](sorting-pivot-tables.md)
+ [

# 在樞紐分析表中使用資料表計算
](working-with-calculations.md)
+ [

# 樞紐分析表限制
](pivot-table-limitations.md)
+ [

# 樞紐分析表最佳實務
](pivot-table-best-practices.md)

## 樞紐分析表功能
<a name="pivot-table-features"></a>

樞紐分析表不會顯示圖例。

使用下表以了解樞紐分析表支援的功能。


| 功能 | 支援？ | 說明 | 如需詳細資訊 | 
| --- | --- | --- | --- | 
| 變更圖例顯示 | 否 |  | [Quick 中視覺效果類型的圖例](customizing-visual-legend.md) | 
| 變更標題顯示 | 是 |  | [Quick 中視覺效果類型的標題和字幕](customizing-a-visual-title.md) | 
| 變更軸範圍 | 不適用 |  | [在 Quick 中根據視覺效果類型進行範圍和擴展](changing-visual-scale-axis-range.md) | 
| 變更視覺效果顏色 | 否 |  | [Quick 中視覺效果類型的顏色](changing-visual-colors.md) | 
| 聚集於或排除元素 | 是，但有例外 | 您可以聚焦於或排除任何欄或列，但使用日期欄位作為其中一個維度時除外。在這種情況下，您只能聚焦於有使用日期維度的欄或列，無法排除它。 |  [聚焦於視覺化元素](focusing-on-visual-elements.md) [排除視覺化元素](excluding-visual-elements.md) | 
| 排序 | 是 | 您可以按字母順序或按指標，以遞增或遞減順序對資料列或資料欄欄位集中的欄位進行排序。 | [在 Amazon Quick 中排序視覺化資料](sorting-visual-data.md) [在快速中排序樞紐分析表](sorting-pivot-tables.md)  | 
| 執行欄位彙總 | 是 | 您必須將彙總套用到您為值選擇的一或多個欄位。您無法將彙總套用到您為列或欄所選的欄位。 如果您選擇建立多重度量樞紐分析表，您可以將不同類型的彙總套用到不同的度量。例如，您可以顯示銷售額總和及最高折扣金額。 | [變更欄位彙總](changing-field-aggregation.md) | 
| 新增向下切入 | 否 |  | [在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md) | 
| 顯示及隱藏總計和小計 | 是 | 您可以顯示或隱藏各列與各欄的總計和小計。 當您摺疊列或欄時，指標會自動累算以顯示小計。若您使用資料表計算，請使用彙總以顯示累算。  |  | 
| 匯出或複製資料 | 是 |  您可以將所有資料匯出到 CSV 檔案。 您可以選取儲存格的內容進行複製。  | [從視覺效果匯出資料](exporting-data.md) | 
| 條件式格式設定 | 是 | 您可以為值、小計和總計新增條件式格式設定。 | [Quick 中視覺效果類型的條件式格式化](conditional-formatting-for-visuals.md) | 

**Topics**

# 建立樞紐分析表
<a name="create-pivot-table"></a>

使用下列程序以建立樞紐分析表。

**若要建立樞紐分析表**

1. 在分析頁面，選擇工具列上的**視覺化**圖示。

1. 在**視覺效果**窗格中，選擇 **\$1 新增**，然後選擇樞紐分析表圖示。

1. 從**欄位清單**窗格中，選擇您要包含的欄位。Amazon Quick 會自動將這些項目放入欄位集。

   若要變更欄位的擺放位置，請將其拖曳到適當的欄位集。通常，您將使用目標欄位集所指示的維度欄位或度量欄位。如果您選擇使用維度欄位作為度量欄位，則會自動套用 **Count (計數)** 彙總函數以建立數值。
   + 若要建立單一度量樞紐分析表，請將維度拖曳到 **Rows (列)** 欄位集，將維度拖曳到 **Columns (欄)** 欄位集，將度量拖曳到 **Values (值)** 欄位集。
   + 若要建立多重度量樞紐分析表，請將維度拖曳到 **Rows (列)** 欄位集，將維度拖曳到 **Columns (欄)** 欄位集，將兩個或更多度量拖曳到 **Values (值)** 欄位集。
   + 若要建立叢集樞紐分析表，請將一或多個維度拖曳到 **Rows (列)** 欄位集，將一或多個維度拖曳到 **Columns (欄)** 欄位集，將度量拖曳到 **Values (值)** 欄位集。

   如有需要，您也可為所有樞紐分析表欄位集選取多個欄位。這樣將會結合多重度量和叢集樞紐分析表方法。

**注意**  
若要查看計算欄位的累算結果，則務必使用彙總。例如，計算欄位 `field-1 / field-2 `進行累算時不會顯示摘要。不過，`sum(field-1) / sum(field-2) ` 將顯示累算摘要。

## 選擇版面配置
<a name="pivot-table-layout"></a>

當您在 Amazon Quick 中建立樞紐分析表時，您可以進一步自訂資料以表格式和階層配置選項呈現的方式。對於使用資料表式版面配置的樞紐分析表，每個資料列欄位都會顯示在其自己的資料欄中。對於使用階層版面配置的樞紐分析表，所有資料列欄位都會顯示在單一資料欄中。縮排用於區分不同欄位的資料列標頭。若要變更樞紐分析表的版面配置，請開啟要變更的資料的**格式視覺效果**選單，然後從**樞紐分析表選項**區段選擇所需的版面配置。

根據您為樞紐分析表視覺效果選擇的版面配置，可以使用不同的格式化選項。如需資料表式化與階層樞紐分析表之間格式化差異的詳細資訊，請參閱 [Quick 中的資料表和樞紐分析表格式選項](format-tables-pivot-tables.md)。

# 樞紐分析表值定向
<a name="pivot-table-value-orientation"></a>

您可以選擇以單欄式或基於資料列的格式來顯示樞紐分析表。單欄是預設值。當您變更成基於資料列的格式時，具有值名稱的欄會新增到資料列標頭欄的右側。

**若要變更樞紐分析資料表式**

1. 在分析頁面，選擇您要編輯的樞紐分析表視覺效果。

1. 選擇位於視覺效果頂端的欄位集，展開 **Field wells (欄位集)** 窗格。

1. 在 **Values (值)** 欄位集上，選擇以下其中一個選項：
   + 選擇 **Column (欄)** 表示單欄式格式。
   + 選擇 **Row (列)** 表示列格式。
**注意**  
如果您只使用一個指標，則可選擇 **Hide single metric (隱藏單一指標)** 選項，透過格式化視覺效果及設定其樣式以消除重複的標頭。

# 展開和摺疊樞紐分析表叢集
<a name="expanding-and-collapsing-clusters"></a>

如果您在樞紐分析表中使用分組的欄或列，即可展開或摺疊群組，以使視覺效果顯示或隱藏分組的資料。

**若要展開或摺疊樞紐分析表群組**

1. 在分析頁面，選擇您要編輯的樞紐分析表視覺效果。

1. 選擇下列其中一項：
   + 若要摺疊群組，請選擇欄位名稱旁的摺疊圖示。
   + 若要展開群組，請選擇欄位名稱旁的展開圖示。摺疊圖示顯示減號。展開圖示顯示加號。

   在以下螢幕擷取畫面中，`Customer Region` 和 `Enterprise` 區段為展開狀態，而 `SMB` 和 `Startup` 為摺疊狀態。群組為摺疊狀態時，其資料將於列或欄內彙總。  
![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/pivot-table-collapse.png)

# 在快速中顯示和隱藏樞紐分析表資料欄
<a name="hiding-pivot-table-columns"></a>

預設情況下，建立樞紐分析表時會顯示所有資料欄、資料列及其欄位值。您可以隱藏不希望在樞紐分析表中顯示的資料欄和資料列，而無需變更樞紐分析表值。當樞紐分析表中有多個量值時，還可以隱藏值。

您可以隨時選擇在樞紐分析表中顯示任何隱藏的欄位。當您將視覺效果發布為儀表板的一部分時，訂閱儀表板的任何人都可以將樞紐分析表匯出為逗號分隔值 (CSV) 或 Microsoft Excel 檔案。他們可以選擇只導出可見欄位或所有欄位。如需詳細資訊，請參閱[從儀表板上的資料匯出到 CSV](export-or-print-dashboard.md#export-dashboard-to-csv)。

**若要隱藏樞紐分析表中的資料欄或資料列**

1. 在您的分析中，選擇您要使用的樞紐分析表視覺效果。

1. 在資料**列**、**資料欄**或**值**欄位集中選擇三點選單，然後選擇**隱藏**。

**若要在樞紐分析表中顯示所有隱藏欄位**

1. 在您的分析中，選擇您要使用的樞紐分析表視覺效果。

1. 選擇**欄位集**中的任何欄位，然後選擇**顯示所有隱藏欄位**。

# 在快速中排序樞紐分析表
<a name="sorting-pivot-tables"></a>

在 Amazon Quick 中，您可以依資料**列**和**資料欄**欄位集中的欄位，或快速依樞紐分析表中的資料欄標頭，來排序樞紐分析表中的值。在樞紐分析表中，您可以依字母順序或量值來獨立對資料列和資料欄排序。

**注意**  
當依量值對樞紐分析表排序時，您無法執行「總計」、「差異」和「百分比差異」表計算。如需使用樞紐分析表中表計算的詳細資訊，請參閱 [在樞紐分析表中使用資料表計算](working-with-calculations.md)。

## 了解樞紐分析表中的排序
<a name="sorting-pivot-tables-understanding"></a>

當樞紐分析表中有多個窗格時，排序將單獨套用於每個窗格。例如，左側樞紐分析表中的 `Segment` 資料欄按 `Cost` 以遞增排序。假設有多個窗格，每個窗格的排序會從每個窗格開始，而每個窗格 (適用於 `Segment`) 內的資料列會以從最低到最高的成本排序。右側的資料表套用了相同的排序方式，但排序會套用到整個資料表中，如下所示。

![\[樞紐分析表的影像，其排序以紅色突出顯示。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/sorting-pivot-tables2.png)


當您將多個排序套用至樞紐分析表時，排序會從外部維度套用至內部維度。考慮一個樞紐分析表的下面的範例影像。`Customer Region` 資料欄會按 `Cost` 以遞減排序 (如橘色所示)。`Channel` 資料欄會按「收入目標」以增序排序 (如藍色所示)。

![\[樞紐分析表的影像，其中顯示兩個已排序的量值資料欄。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/sorting-pivot-tables3.png)


## 使用資料列或資料欄標頭排序樞紐分析表
<a name="sorting-pivot-tables-columns"></a>

請使用下列程序，用「資料列」或「資料欄」標頭對樞紐分析表進行排序。

**若要使用表標頭對資料表樞紐分析表中的值進行排序**

1. 在資料表樞紐分析表圖中，選擇要排序的標頭。

1. 對於**排序依據**，請選擇要依據的欄位和排序順序。

   您可以將維度欄位按 a-z 或 z-a 的字母順序排序，也可以按量值以遞增或遞減對其進行排序。  
![\[使用資料欄標頭對樞紐分析表中的值進行排序的動畫 .gif 檔案。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/sorting-pivot-table7.gif)

## 使用值標頭對樞紐分析表進行排序
<a name="sorting-pivot-tables-values"></a>

請使用下列程序，用「值」標頭對樞紐分析表進行排序。

**若要使用值標頭對樞紐分析表進行排序**

1. 在樞紐分析表圖中，選擇要排序的值標頭。

1. 選擇**遞增**或**遞減**。  
![\[使用值標頭對樞紐分析表中的值進行排序的動畫 .gif 檔案。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/sorting-pivot-tables-value.gif)

   按樞紐分析表中的值標頭排序也適用於小計。

## 使用欄位集對資料表式樞紐分析表進行排序
<a name="sorting-pivot-tables-field-wells"></a>

使用下列程序，使用欄位集對資料表式樞紐分析表中的值進行排序。

**若要使用欄位集對資料表式樞紐分析表中的值進行排序**

1. 在分析頁面，選擇您要排序的資料表式樞紐分析表。

1. 展開**欄位集**。

1. 在**資料列**或**資料欄**欄位集中，選擇要排序的欄位，然後選擇對欄位排序的**排序方式**。

   您可以將**資料列**或**資料欄**欄位集中的維度欄位按從 a-z 或 z-a 的字母順序排序，也可以按量值以遞增或遞減對其進行排序。您還可以選擇折疊所有或展開您在欄位集中選擇的欄位的所有資料列或資料欄。您也可以移除欄位，或用其他欄位將其取代。
   + 若要依字母順序排序維度欄位，請將游標暫留在**資料列**或**資料欄**欄位集中的欄位上，然後選擇 a-z 或 z 排序圖示。  
![\[「資料列」欄位中欄位的影像以及以紅色方塊表示的「排序依據」欄位和字母排序圖示。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/sorting-pivot-tables1.png)
   + 若要依量值對維度欄位進行排序，請將游標暫留在**資料列**或**資料欄**欄位集中的欄位上。然後從清單中選擇量值，再選擇遞增或遞減排序圖示。  
![\[「資料列」欄位中欄位的影像以及以紅色方塊表示的「排序依據」欄位和排序圖示。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/sorting-pivot-tables4.png)

或者，如果您想要對排序套用至樞紐分析表的方式進行更多控制，請自訂排序選項。

**若要使用**排序選項**建立排序**

1. 在分析頁面，選擇您要排序的樞紐分析表。

1. 展開**欄位集**。

1. 在**資料列**或**資料欄**欄位集中選擇您要排序的欄位，然後選擇**排序選項**。

1. 在左側開啟的**排序選項**窗格中，指定以下選項：

   1. 對於**排序依據**，從下拉式清單中選擇某個欄位。

   1. 對於**彙整工具**，從清單中選擇彙整工具。

   1. 對於**排序順序**，請選取**遞增**或**遞減**。

   1. 選擇**套用**。

## 使用欄位集對階層樞紐分析表進行排序
<a name="pivot-table-sorting-hierarchy"></a>

對於資料表式樞紐分析表，**資料列**欄位集中的每個欄位都有一個單獨的標題儲存格。對於階層樞紐分析表，所有資料列欄位都會顯示在單一欄中。若要排序、摺疊和展開這些列欄位，請選取**資料列**標籤以開啟**合併資料列欄位**選單，然後選擇想要的選項。階層樞紐分析表中的每個欄位都可以從**合併資料列欄位**選單單獨排序。

![\[合併資料列欄位選單的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/pivot-table-combined-row-fields-menu.png)


可從欄位集選單使用更進階的格式化選項，例如**隱藏**和**刪除**。

# 在樞紐分析表中使用資料表計算
<a name="working-with-calculations"></a>

您可以使用資料表計算，將統計函數套用到包含度量 (數值) 的樞紐分析表儲存格。使用以下各節，以了解您可以用於計算的函數，以及如何套用或移除函數。

儲存格值的資料類型會配合您的計算而自動變更。例如，假設您對貨幣資料類型套用 **Rank (排名)** 函數。值會顯示為整數，而不是貨幣，因為排名不是以貨幣來測量。同樣地，如果您改為套用 **Percent difference (百分比差異)** 函數，儲存格值會顯示為百分比。

**Topics**
+ [

# 新增和刪除樞紐分析表計算
](adding-a-calculation.md)
+ [

# 樞紐分析表計算函數
](supported-functions.md)
+ [

# 樞紐分析表計算的套用方式
](supported-applications.md)

# 新增和刪除樞紐分析表計算
<a name="adding-a-calculation"></a>

使用以下程序，在樞紐分析表上新增、修改和刪除資料表計算。

**Topics**
+ [

# 新增樞紐分析表計算
](add-a-calculation.md)
+ [

# 變更套用計算的方式
](change-how-a-calculation-is-applied.md)
+ [

# 移除計算
](remove-a-calculation.md)

# 新增樞紐分析表計算
<a name="add-a-calculation"></a>

使用以下程序，將資料表計算新增到樞紐分析表。

**若要將表計算新增至樞紐分析表**

1. 選擇視覺效果底部附近的欄位集，展開**欄位集**窗格。

1. 在 **Values (值)** 欄位集選擇您想要套用資料表計算的欄位，選擇 **Add table calculation (新增資料表計算)**，然後選擇要套用的函數。

**注意**  
當依量值對樞紐分析表排序時，您無法執行「總計」、「差異」和「百分比差異」表計算。若要使用這些表計算，請從樞紐分析表中移除排序。

# 變更套用計算的方式
<a name="change-how-a-calculation-is-applied"></a>

使用以下程序，以變更資料表計算套用到樞紐分析表的方式。

**若要變更資料表計算套用到樞紐分析表的方式**

1. 選擇位於視覺效果頂端的欄位集，展開 **Field wells (欄位集)** 窗格。

1. 在 **Values (值)** 集選擇欄位，其中包含您要變更的資料表計算，選擇 **Calculate as (計算為)**，然後選擇您想要的計算套用方式。

# 移除計算
<a name="remove-a-calculation"></a>

使用以下程序，從樞紐分析表移除資料表計算。

**若要將表計算從樞紐分析表移除**

1. 選擇視覺效果底部附近的欄位集，展開**欄位集**窗格。

1. 在**值**欄位集選擇您想要移除資料表計算的欄位，然後選擇**移除**。

# 樞紐分析表計算函數
<a name="supported-functions"></a>

您可以在樞紐分析表計算中使用下列函數。

**Topics**
+ [

## 累計加總
](#running-total)
+ [

## 差異
](#difference)
+ [

## 百分比差異
](#percent-difference)
+ [

## 總計百分比
](#percent-of-total)
+ [

## Rank
](#rank)
+ [

## 百分位數
](#percentile)

您可以將列出的函數套用至下列資料：

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/running-total1.png)


![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/running-total1.png)


## 累計加總
<a name="running-total"></a>

**Running total (累計加總)** 函數計算特定儲存格值及其之前所有儲存格的值的總和。此總和的計算方式為 `Cell1=Cell1, Cell2=Cell1+Cell2, Cell3=Cell1+Cell2+Cell3`，依此類推。

對表格列套用 **Running total (累計加總)** 函數，使用 **Table across (表格橫越)** 當成 **Calculate as (計算為)** 會得到以下結果。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/running-total2.png)


## 差異
<a name="difference"></a>

**Difference (差異)** 函數計算儲存格值及其前一儲存格的值之間的差異。此差異的計算方式為 `Cell1=Cell1-null, Cell2=Cell2-Cell1, Cell3=Cell3-Cell2,`，依此類推。由於 `Cell1-null = null`，Cell1 值一律是空的。

對表格列套用 **Difference (差異)** 函數，使用 **Table across (表格橫越)** 當成 **Calculate as (計算為)** 會得到以下結果。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/difference.png)


## 百分比差異
<a name="percent-difference"></a>

**Percentage Difference (百分比差異)** 函數計算儲存格值及其前一儲存格的值之間的差異，再除以其前一儲存格的值而得出百分比。此值的計算方式為 `Cell1=(Cell1-null)/null, Cell2=(Cell2-Cell1)/Cell1, Cell3=(Cell3-Cell2)/Cell2,`，依此類推。由於 `(Cell1-null)/null = null`，Cell1 值一律是空的。

對表格列套用 **Percentage Difference (百分比差異)** 函數，使用 **Table across (表格橫越)** 當成 **Calculate as (計算為)** 會得到以下結果。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/percentage-difference.png)


## 總計百分比
<a name="percent-of-total"></a>

**Percent of Total (總計百分比)** 函數計算特定儲存格在計算中所包含所有儲存格的總和中所佔的百分比。此百分比的計算方式為 `Cell1=Cell1/(sum of all cells), Cell2=Cell2/(sum of all cells),`，依此類推。

對表格列套用 **Percent of Total (總計百分比)** 函數，使用 **Table across (表格橫越)** 當成 **Calculate as (計算為)** 會得到以下結果。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/percent-of-total.png)


## Rank
<a name="rank"></a>

**Rank (排名)** 函數計算儲存格值相較於計算中所包含的其他儲存格值的排名。排名一律顯示最高值等於 1，最低值等於計算中包含的儲存格計數。如果有兩個或更多儲存格是相等值，它們會獲得相同的排名，但在排名中各佔有一席之地。因此，下一個最高值的排名會下降，幅度為排名以上的儲存格數目，再減去 1。例如，若您將 5,3,3,4,3,2 這些值排名，則其排名會是 1,3,3,2,3,6。

例如，假設您有以下資料。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/rank.png)


對表格列套用 **Rank (排名)** 函數，使用 **Table across (表格橫越)** 當成 **Calculate as (計算為)** 會得到以下結果。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/rank2.png)


## 百分位數
<a name="percentile"></a>

**Percentile (百分位數)** 函數計算包含於計算中的儲存格的值，其等於或低於特定儲存格的值的百分比。

此百分比的計算方式如下。

```
percentile rank(x) = 100 * B / N

Where:
   B = number of scores below x
   N = number of scores
```

對表格列套用 **Percentile (百分位數)** 函數，使用 **Table across (表格橫越)** 當成 **Calculate as (計算為)** 會得到以下結果。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/percentile.png)


# 樞紐分析表計算的套用方式
<a name="supported-applications"></a>

您可以如下所述套用資料表計算。資料表計算一次只會套用到一個欄位。因此，如果您的樞紐分析表有多個值，則套用計算的儲存格只限於代表您已套用計算的欄位。

**Topics**
+ [

## 資料表橫越
](#table-across)
+ [

## 資料表向下
](#table-down)
+ [

## 資料表橫越向下
](#table-across-down)
+ [

## 資料表向下橫越
](#table-down-across)
+ [

## 群組橫越
](#group-across)
+ [

## 群組向下
](#group-down)
+ [

## 群組橫越向下
](#group-across-down)
+ [

## 群組向下橫越
](#group-down-across)

## 資料表橫越
<a name="table-across"></a>

使用 **Table across (表格橫越)** 會沿著樞紐分析表的各列套用計算，而不考慮任何分組。此為預設的套用方式。例如，以下列樞紐分析表為例。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/sample-pivot.png)


使用**資料表橫越**來套用**累計加總**函數會得到以下結果，資料列總計位於最後一欄。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/table-across.png)


## 資料表向下
<a name="table-down"></a>

使用 **Table down (表格向下)** 會沿著樞紐分析表的各欄向下套用計算，而不考慮任何分組。

使用**資料表向下**來套用**累計加總**函數會得到以下結果，資料欄總計位於最後一列。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/table-down.png)


## 資料表橫越向下
<a name="table-across-down"></a>

使用 **Table across down (表格橫越向下)** 會沿著樞紐分析表的各列套用計算，得到結果後再沿著樞紐分析表的各欄向下重新套用計算。

使用**資料表橫越向下**對資料表列套用**累計加總**函數會得到以下結果。在此情況下，總計將以橫向及縱向求出總和，最後總計顯示於右下儲存格。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/running-total-across-down.png)


在這種情況下，假設您使用**資料表橫越向下**套用**排名**函數。則其將先沿著表格列決定初始排名，再沿著各欄向下排名。最後得到的結果如下。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/rank-table-across-down.png)


## 資料表向下橫越
<a name="table-down-across"></a>

使用 **Table down across (表格向下橫越)** 會沿著樞紐分析表的各欄向下套用計算，得到結果後再沿著樞紐分析表的各列重新套用計算。

您可以使用**資料表向下橫越**對資料表列套用**累計加總**函數，以得到以下結果。在此情況下，總計將以橫向及縱向求出總和，最後總計顯示於右下儲存格。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/running-total-down-across.png)


您可以使用**資料表向下橫越**對資料表列套用**排名**函數，以得到以下結果。在此情況下，其將先沿著表格欄向下決定初始排名，再沿著各列進行排名。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/rank-table-down-across.png)


## 群組橫越
<a name="group-across"></a>

使用 **Group across (群組橫越)** 會在群組邊界內 (取決於套用到欄的第二層分組) 沿著樞紐分析表的各列套用計算。例如，若您先依欄位 2 分組再依欄位 1 分組，其將在欄位 2 層級套用分組。如果是依欄位 3、欄位 2 和欄位 1 的順序分組，則同樣會在欄位 2 層級套用分組。若未進行任何分組，**Group across (群組橫越)** 傳回的結果將與 **Table across (表格橫越)** 相同。

例如，以下的樞紐分析表是將各欄先依 `Service Line` 分組，再依 `Consumption Channel` 分組。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/sample-pivot.png)


您可以使用**群組橫越**對資料表列套用**累計加總**函數，以得到以下結果。在此情況下，其將沿著由每個服務類別群組的欄劃定邊界的各列逐次套用函數。`Mobile` 欄針對特定列所代表的 `Customer Region` 和 `Date` (年份)，顯示特定 `Service Line` 的兩個 `Consumption Channel` 值的總計。例如，圖中標明的儲存格代表 `Service Line` 為 `Billing` 的所有 `Consumption Channel` 值，其 `APAC` 區域於 `2012` 年的總計。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/group-across.png)


## 群組向下
<a name="group-down"></a>

使用 **Group down (群組向下)** 會在群組邊界內 (取決於套用到列的第二層分組) 沿著樞紐分析表的各欄向下套用計算。例如，若您先依欄位 2 分組再依欄位 1 分組，其將在欄位 2 層級套用分組。如果是依欄位 3、欄位 2 和欄位 1 的順序分組，則同樣會在欄位 2 層級套用分組。若未進行任何分組，**Group down (群組向下)** 傳回的結果將與 **Table down (表格向下)** 相同。

例如，以下的樞紐分析表是將各列先依 `Customer Region` 分組，再依 `Date` (年份) 分組。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/sample-pivot.png)


您可以使用**群組向下**對資料表列套用**累計加總**函數，以得到以下結果。在此情況下，其將沿著由每個 `Customer Region` 群組的列劃定邊界的各欄向下套用函數。`2014` 列針對特定欄所代表的 `Service Line` 和 `Consumption Channel`，顯示特定 `Customer Region` 在所有年份的總計。例如，圖中標明的儲存格代表報告中顯示的所有 `Date` (年份) 值，其 `Mobile` 管道的 `Billing` 服務於 `APAC` 區域的總計。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/group-down.png)


## 群組橫越向下
<a name="group-across-down"></a>

使用 **Group across down (群組橫越向下)** 會在群組邊界內 (取決於套用到欄的第二層分組) 沿著各列套用計算。函數得到結果後再沿著樞紐分析表的各欄向下重新套用計算。群組邊界同樣取決於套用到列的第二層分組。

例如，若您先依欄位 2 再依欄位 1 將列或欄分組，其將在欄位 2 層級套用分組。如果是依欄位 3、欄位 2 和欄位 1 的順序分組，則同樣會在欄位 2 層級套用分組。若未進行任何分組，**Group across down (群組橫越向下)** 傳回的結果將與 **Table across down (表格橫越向下)** 相同。

例如，以下的樞紐分析表是將各欄先依 `Service Line` 分組，再依 `Consumption Channel` 分組。各列將先依 `Customer Region` 分組，再依 `Date` (年份) 分組。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/sample-pivot.png)


您可以使用**群組橫越向下**對資料表列套用**累計加總**函數，以得到以下結果。在此情況下，總計將於群組邊界內以橫向及縱向求出總和。本例中，欄的邊界是 `Service Line`，而列的邊界是 `Customer Region`。最後總計顯示於群組的右下儲存格。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/running-total-group-across-down.png)


您可以使用**群組橫越向下**對資料表列套用**排名**函數，以得到以下結果。在此情況下，其將先沿著由每個 `Service Line` 群組劃定邊界的各列逐次套用函數。隨後還會再次對第一次計算的結果套用函數，而這次是沿著由每個 `Customer Region` 群組劃定邊界的各欄向下套用。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/rank-group-across-down.png)


## 群組向下橫越
<a name="group-down-across"></a>

使用 **Group down across (群組向下橫越)** 會在群組邊界內 (取決於套用到列的第二層分組) 沿著各欄向下套用計算。然後，Amazon Quick 會取得結果，並在樞紐分析表的資料列中重新套用計算。同樣地，在群組邊界內 (取決於套用到欄的第二層分組) 會重新套用計算。

例如，若您先依欄位 2 再依欄位 1 將列或欄分組，其將在欄位 2 層級套用分組。如果是依欄位 3、欄位 2 和欄位 1 的順序分組，則同樣會在欄位 2 層級套用分組。若未進行任何分組，**Group down across (群組向下橫越)** 傳回的結果將與 **Table down across (表格向下橫越)** 相同。

例如，以下列樞紐分析表為例。各欄將先依 `Service Line` 分組，再依 `Consumption Channel` 分組。各列將先依 `Customer Region` 分組，再依 `Date` (年份) 分組。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/sample-pivot.png)


您可以使用**群組向下橫越**對資料表列套用**累計加總**函數，以得到以下結果。在此情況下，總計將於群組邊界內以橫向及縱向求出總和。本例中，欄的邊界是 `Service Category`，而列的邊界是 `Customer Region`。最後總計顯示於群組的右下儲存格。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/running-total-group-across-down.png)


您可以使用**群組橫越向下**對資料表列套用**排名**函數，以得到以下結果。在此情況下，其將先沿著由每個 `Customer Region` 群組劃定邊界的各欄向下套用函數。隨後還會再次對第一次計算的結果套用函數，而這次是沿著由每個 `Service Line` 群組劃定邊界的各列逐次套用。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/rank-group-down-across.png)


# 樞紐分析表限制
<a name="pivot-table-limitations"></a>

以下限制適用於樞紐分析表：
+ 您可以建立包含多達 500,000 個記錄的樞紐分析表。
+ 您可以新增資料列與資料欄之欄位值的任意組合 (總數最多為 40)。例如，如果您有 10 個資料列的欄位值，則最多可以加入 30 個資料欄的欄位值。
+ 您只能針對非彙總值建立樞紐分析表計算。例如，若您所建立的計算欄位是度量的總和，也就無法對其新增樞紐分析表計算。
+ 若您依據自訂指標進行排序，便無法新增資料表計算，除非您移除自訂指標排序。
+ 若您使用資料表計算，而後又添加了自訂指標，便無法依據自訂指標進行排序。
+ 資料表計算若依差異計數彙總指標，總計和小計將呈空白。

# 樞紐分析表最佳實務
<a name="pivot-table-best-practices"></a>

強烈建議您部署一組最少的列、欄、指標和資料表計算，而非在一張樞紐分析表中提供所有可能的組合。如果您包含太多項目，則會有讓瀏覽者負擔過大的風險，而且您也會遇到基礎資料庫運算受限的情況。

若要減少複雜性和出錯的可能性，您可以採取下列動作：
+ 套用篩選條件，以減少包含在視覺效果的資料。
+ 在**Row (列)** 和 **Column (欄)** 欄位集中使用較少的欄位。
+ 盡可能在 **Values (值)** 欄位集中使用較少的欄位。
+ 建立其他樞紐分析表，讓每張樞紐分析表顯示較少的指標。

在某些案例中，有的業務需要檢視許多相互有關的指標。在這些案例中，最好在同一儀表板上使用多種視覺效果，每種視覺效果顯示單一指標。您可以減少儀表板上視覺效果的大小，並讓這些視覺效果共存，以形成分組。如果瀏覽者根據一種視覺效果制定的決策，會產生不同檢視的需求，您可以部署自訂 URL 動作，來根據使用者所做的選擇啟動另一個儀表板。

最好將視覺效果視為建置模塊。使用各視覺效果來促進更重大商業決策的一項層面，而不要將一種視覺效果做為多種用途。瀏覽者應有足夠的資料制定明智的決策，而不會因包含所有可能性而覺得負擔過大。

# 使用雷達圖
<a name="radar-chart"></a>

您可以使用也稱為蜘蛛圖的雷達圖，在 Amazon Quick 中視覺化多變量資料。在雷達圖中，一個或多個群組的值被繪製在多個常見變數上。每個變數都有自己的軸，且每個軸圍繞中心點呈放射狀排列。來自單一觀察的資料點會繪製在每個軸上，並相互連接形成多邊形。可以在單個雷達圖中繪製多個觀察以顯示多個多邊形，從而更輕鬆地快速找出多個觀察的外圍值。

在快速中，您可以將欄位拖放到類別、值和顏色欄位集，沿著其**類別**、**值**或**顏色**軸組織雷達圖。您選擇在欄位集之間分配欄位的方式決定繪製資料的軸。

下圖顯示雷達圖範例。

![\[依部門來繪製員工滿意度變數的雷達圖。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/radar-chart-example.png)


## 長條圖功能
<a name="radar-chart-features"></a>

使用下表以了解雷達圖支援的功能。


****  

| 功能 | 支援？ | 說明 | 如需詳細資訊 | 
| --- | --- | --- | --- | 
| 變更圖例顯示 | 是 |  | [Quick 中視覺效果類型的圖例](customizing-visual-legend.md) | 
| 變更標題顯示 | 是 |  | [Quick 中視覺效果類型的標題和字幕](customizing-a-visual-title.md) | 
| 變更軸範圍 | 是 |  | [在 Quick 中根據視覺效果類型進行範圍和擴展](changing-visual-scale-axis-range.md) | 
| 變更視覺效果顏色 | 是 |  | [Quick 中視覺效果類型的顏色](changing-visual-colors.md) | 
| 聚集於或排除元素 | 是 |  |  [聚焦於視覺化元素](focusing-on-visual-elements.md) [排除視覺化元素](excluding-visual-elements.md) | 
| 排序 | 有限 | 您只能對類別和顏色欄位集中的資料欄位進行排序。 | [在 Amazon Quick 中排序視覺化資料](sorting-visual-data.md) | 
| 執行欄位彙總 | 是 |  | [變更欄位彙總](changing-field-aggregation.md) | 
| 新增向下切入 | 不支援 |  | [在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md) | 
| 選擇大小 | 是 |  | [在 Amazon Quick 中格式化](formatting-a-visual.md) | 
| 顯示總計 | 不支援 |  | [在 Amazon Quick 中格式化](formatting-a-visual.md) | 

## 建立雷達圖
<a name="create-radar-chart"></a>

使用下列程序以建立雷達圖。

**若要建立雷達圖**

1. 在分析頁面，選擇工具列上的 **Visualize (視覺化)**。

1. 選擇應用程式列上的 **Add (新增)**，然後選擇 **Add visual (新增視覺效果)**。

1. 在**視覺效果類型**窗格中，選擇雷達圖圖示。

1. 從 **Fields list (欄位清單)** 窗格中，將您想要使用的欄位拖曳到適當的欄位集。大多數情況下，建議使用目標欄位集所指出的維度欄位或量值欄位。

   若要建立雷達圖，請將欄位拖曳至**類別**、**值**和**群組/顏色**欄位集。組織雷達圖的軸取決於您將欄位組織到各自欄位集的方式：
   + 在使用**值軸**的雷達圖中，維度值會顯示為線條，軸代表值欄位。若要建立使用值軸的雷達圖，請將一個類別欄位新增到**顏色**欄位，並在**值**欄位集中新增一個或多個值。
   + 在使用**維度軸**的雷達圖中，群組維度值會顯示為軸，值欄位顯示為線條。所有軸共用一個範圍和比例。若要建立使用維度軸的雷達圖，請將一個維度新增至**群組**欄位集，並在**值**欄位集中新增一個或多個值。
   + 在使用**維度-顏色軸**的雷達圖中，群組維度值會顯示為軸，而顏色維度值則顯示為線條。所有的軸共用一個範圍和刻度。若要建立維度-顏色軸的雷達圖，請將一個維度拖曳到**類別**欄位集，將一個值拖曳到**值**欄位集，將一個維度拖曳到**顏色**欄位集。

# 使用桑基圖
<a name="sankey-diagram"></a>

使用桑基圖顯示從一個類別到另一個類別的流程，或從一個階段到下一階段的路徑。

例如，桑基圖可以顯示從一個國家/地區遷移到另一個國家/地區的人數。桑基圖還可以顯示網路訪客從公司網站上的一個頁面到下一個頁面所採取的路徑，以及沿途可能停留的路徑。

## 桑基圖的資料
<a name="sankey-diagram-data"></a>

若要在快速中建立桑基圖，您的資料集應包含量值和兩個維度 （一個維度包含來源類別，另一個維度包含目的地類別）。

下表是桑基圖資料的簡單範例。


| 維度 (來源) | 維度 (目的地) | 量值 (重量) | 
| --- | --- | --- | 
|  A  |  W  |  500  | 
|  A  |  X  |  23  | 
|  A  |  Y  |  147  | 

將維度和量值新增至欄位集時，將建立以下桑基圖，左側的 A 節點連結到右側的 W、Y 和 X 節點。節點之間每個連結的寬度由「量值 (權重)」資料欄中的值決定。節點將會自動排序。

若要在 Amazon Quick 中建立多層桑基圖，您的資料集仍應包含度量和兩個維度 （一個用於來源，另一個用於目的地），但在這種情況下，您的資料值會不同。

下表是具有兩個階段的多層桑基圖的資料的簡單範例。


| 維度 (來源) | 維度 (目的地) | 量值 (重量) | 
| --- | --- | --- | 
|  A  |  W  |  500  | 
|  A  |  X  |  23  | 
|  A  |  Y  |  147  | 
|  W  |  Z  |  300  | 
|  X  |  Z  |  5  | 
|  Y  |  Z  |  50  | 

將維度和量值新增至欄位集時，將建立以下桑基圖。在這裡，左側的 A 節點會連結至中間的 W、Y 和 X 節點，然後連結至右側的 Z 節點。節點之間每個連結的寬度由「量值 (權重)」資料欄中的值決定。

### 處理週期性資料
<a name="sankey-diagram-cycle"></a>

有時，您用於桑基圖的資料包含週期。例如，假設您正在視覺化網站上的頁面之間的使用者流量。您可能會發現造訪頁面 A 的使用者移至頁面 E，然後返回頁面 A。整個流程看起來可能類似 A-E-A-B-A-E-A。

當您的資料包含週期時，每個週期中的節點都會在 Quick 中重複。例如，如果您的資料包含流程 A-E-A-B-A-E-A，則會建立下列桑基圖。

## 準備桑基圖資料
<a name="sankey-diagram-prepare"></a>

如果您的資料集不包含「來源」或「目的地」資料欄，請準備好資料以加入。您可以在建立新資料集或編輯現有資料集時準備資料。如需建立及準備新資料集的詳細資訊，請參閱 [建立資料集](creating-data-sets.md)。如需開啟現有資料集進行資料準備的詳細資訊，請參閱 [編輯資料集](edit-a-data-set.md)。

下列程序使用範例資料表 （如下圖所示），示範如何在 Quick 中準備 Sankey 圖表的資料。此資料表包含三個資料欄：客戶 ID、時間和動作。


| 客戶 ID | 時間 | Action | 
| --- | --- | --- | 
|  1  |  上午 9:05  |  步驟 1  | 
|  1  |  上午 9:06  |  步驟 2  | 
|  1  |  上午 9:08  |  步驟 3  | 
|  2  |  上午 11:44  |  步驟 1  | 
|  2  |  上午 11:47  |  步驟 2  | 
|  2  |  上午 11:48  |  步驟 3  | 

若要使用此資料在快速中建立桑基圖，請先將來源和目的地資料欄新增至資料表。使用下列程序來了解方法。

**若要將「來源」和「目的地」資料欄新增至資料表**

1. 將「步驟編號」資料欄新增至資料表，以便對每一列進行編號或排名。

   有多種方式運算「步驟編號」資料欄。如果您的資料來源與 SQL 相容，且資料庫支援 `ROW_NUMBER`或 `RANK`函數，您可以使用 Quick 中的自訂 SQL 來排序步驟編號欄中的資料列。如需在 Quick 中使用自訂 SQL 的詳細資訊，請參閱 [使用 SQL 自訂資料](adding-a-SQL-query.md)。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/sankey-diagram.html)

1. 將「下一列編號」資料欄新增至表中，其值等於「步驟編號」加上 1。

   例如，在資料表的第一個資料列，「步驟編號」的值為 1。若要運算該資料列的「下一步驟編號」值，請在該值中加 1。

   1 \$1 1 = 2

   資料表中第二個資料列中的「步驟編號」值為 2；因此，「下一步驟編號」的值為 3。

   2 \$1 1 = 3    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/sankey-diagram.html)

1. 將表與其自身連接起來：

   1. 對於**聯結類型**，選擇**內部**。

   1. 對於**聯結子句**，請執行下列操作：

      1. 選擇**客戶 ID** = **客戶 ID**

      1. 選擇**下一步驟編號** = **步驟編號**

   聯結這兩個資料表會為客戶 ID、時間、動作、步驟編號和下一步驟編號建立兩欄。聯結左側資料表中的資料欄為「來源」資料欄。聯結右側資料表中的資料欄為「目的地」資料欄。

   如需在 Quick 中加入資料的詳細資訊，請參閱 [聯結資料](joining-data.md)。

1. (選用) 重新命名資料欄以指出來源和目的地。

   以下是範例：

   1. 將左側的**動作**資料欄重新命名為**來源**。

   1. 將右側的**動作 [複製]**資料欄重新命名為**目的地**。

   1. 將左側的**時間**資料欄重新命名為**開始時間**。

   1. 將右側的**時間 [複製]**資料欄重新命名為**結束時間**。

   您的資料現在已可視覺化。

## 建立桑基圖
<a name="sankey-diagram-create"></a>

使用下列程序以建立新的桑基圖。

**若要建立桑基圖**

1. 在分析畫面，選擇左側工具列上的**視覺化**。

1. 選擇應用程式列上的**新增**，然後選擇**新增視覺效果**。

1. 在**視覺效果類型**窗格中，選擇桑基圖圖示。

1. 在視覺效果右上角的選單中，選取**屬性**圖示。

1. 在**屬性窗格**中，選擇**來源**或**目的地**區段。

### 自訂節點數目
<a name="sankey-diagram-number-nodes"></a>

使用下列程序來自訂桑基圖中顯示的節點數目。快速支援最多 100 個來源/目的地節點。

**若要自訂桑基圖中顯示的節點數**

1. 在分析頁面，選擇您要格式化的桑基圖視覺效果。

1. 在視覺效果右上角的選單中，選取**格式視覺效果**圖示。

1. 在左側開啟的**屬性**窗格中，選擇**來源**或**目的地**索引標籤。

1. 在**顯示的節點數目**中，輸入一個數字。

   圖中的節點會更新為您指定的編號。頂端節點會自動顯示。所有其他節點均放置於**其他**類別中。
**注意**  
指定「來源」節點的數目可控制整體在圖表中顯示的「來源」節點數目。指定「目的地」節點的數目可控制每個「來源」節點可顯示多少個目的地節點。這意味著，如果圖表中有多個「來源」節點，「目的地」節點的整體數目將會高於指定的數目。  
快速支援最多 100 個來源/目的地節點。

   例如，下面的桑基圖有三個來源節點 (共五個) 的限制，所以前三個顯示在圖中。其他兩個來源節點會放置於「其他」類別中。

   若要從圖表中移除**其他**類別，請在檢視中選取該類別，然後選擇**隱藏「其他」類別**。

## 桑基圖的功能
<a name="sankey-diagram-features"></a>

使用下表以了解桑基圖支援的功能。


| 功能 | 支援？ | 如需詳細資訊 | 
| --- | --- | --- | 
| 變更圖例顯示 | 否 |  | 
| 變更標題顯示 | 是 | [Quick 中視覺效果類型的標題和字幕](customizing-a-visual-title.md) | 
| 變更軸範圍 | 否 |  | 
| 變更視覺效果顏色 | 否 |  | 
| 聚集於或排除元素 | 是 |  [聚焦於視覺化元素](focusing-on-visual-elements.md) [排除視覺化元素](excluding-visual-elements.md)  | 
| 排序 | 否 |  | 
| 執行欄位彙總 | 是 | [變更欄位彙總](changing-field-aggregation.md) | 
| 新增向下切入 | 否 |  | 
| 條件式格式設定 | 否 |  | 

# 使用散佈圖
<a name="scatter-plot"></a>

使用散佈圖，以視覺化跨兩個維度的兩個或三個量值。

散佈圖的每個泡泡代表一個或兩個維度值。X 和 Y 軸代表適用於維度的兩種不同方法。在圖表上，維度中某個項目的兩個度量的值交集之處會出現泡泡。您也可以選擇使用泡泡大小來代表額外的度量。

無論視覺效果中是否使用顏色或標籤維度，散佈圖會在彙總和未彙總的情境中顯示多達 2500 個資料點。由於限制操作的順序，在某些情況下，資料集的資料點可能顯示的較少。如需 Amazon Quick 如何處理超出顯示限制的資料的詳細資訊，請參閱 [顯示限制](working-with-visual-types.md#display-limits)。

## 散佈圖功能
<a name="scatter-plot-features"></a>

使用下表以了解散佈圖支援的功能。


| 功能 | 支援？ | 說明 | 如需詳細資訊 | 
| --- | --- | --- | --- | 
| 變更圖例顯示 | 是，但有例外 | 如果您已填入 Group/Color (群組/顏色) 欄位集，散佈圖會顯示圖例。 | [Quick 中視覺效果類型的圖例](customizing-visual-legend.md) | 
| 變更標題顯示 | 是 |  | [Quick 中視覺效果類型的標題和字幕](customizing-a-visual-title.md) | 
| 變更軸範圍 | 是 | 您可以設定 X 和 Y 軸兩者的範圍。 | [在 Quick 中根據視覺效果類型進行範圍和擴展](changing-visual-scale-axis-range.md) | 
| 顯示或隱藏軸線、網格線、軸標籤和軸排序圖示 | 是 |  | [Quick 中視覺效果類型的軸和網格線](showing-hiding-axis-grid-tick.md) | 
| 變更視覺效果顏色 | 是 |  | [Quick 中視覺效果類型的顏色](changing-visual-colors.md) | 
| 聚集於或排除元素 | 是，但有例外 | 您可以聚焦於或排除散佈圖上的泡泡，但使用日期欄位當作維度時除外。在這種情況下，您只能聚焦於泡泡，無法排除它。 |  [聚焦於視覺化元素](focusing-on-visual-elements.md) [排除視覺化元素](excluding-visual-elements.md) | 
| 排序 | 否 |  | [在 Amazon Quick 中排序視覺化資料](sorting-visual-data.md) | 
| 執行欄位彙總 | 是 | 您必須將彙總套用到您為 X 軸、Y 軸和大小選擇的欄位，而無法將彙總套用到您為群組/顏色選擇的欄位。 | [變更欄位彙總](changing-field-aggregation.md) | 
| 顯示未彙總的欄位 | 是 | 在欄位內容選單上，選擇無以顯示未彙總的 X 軸和 Y 軸值。如果散佈圖顯示未彙總欄位，則無法將彙總套用至顏色或標籤欄位集中的欄位。散佈圖並不支援混合彙總。 |  | 
| 新增向下切入 | 是 | 您可以將向下切入等級新增到 Group/Color (群組/顏色) 欄位集。 | [在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md) | 

## 建立散佈圖
<a name="create-scatter-plot"></a>

使用下列程序以建立散佈圖。

**若要建立散佈圖**

1. 在分析頁面，選擇工具列上的 **Visualize (視覺化)**。

1. 選擇應用程式列上的 **Add (新增)**，然後選擇 **Add visual (新增視覺效果)**。

1. 在 **Visual types (視覺效果類型)** 窗格中，選擇散佈圖圖示。

1. 從 **Fields list (欄位清單)** 窗格中，將您想要使用的欄位拖曳到適當的欄位集。一般而言，建議使用目標欄位集所指出的維度欄位或度量欄位。如果您選擇使用維度欄位作為度量欄位，則會自動套用 **Count (計數)** 彙總函數以建立數值。

   若要建立散佈圖，請將量值拖曳到 **X 軸**欄位集，將量值拖曳到 **Y 軸**欄位集，將維度拖曳到**顏色**或**標籤**欄位集。若要以泡泡大小代表另一個度量，請將該度量拖曳到**Size (大小)** 欄位集。

1. (選用) 將一或多個額外的欄位拖曳到**顏色**欄位集，以新增向下切入分層。如需有關新增向下切入的詳細資訊，請參閱[在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md)。

## 散佈圖的使用案例
<a name="scatter-use-cases"></a>

即使您正在使用「顏色」上的欄位，也可以選擇繪製未彙總值，方法是使用欄位選單上的彙總選項**無**，該選項還包含彙總選項，例如**總和**、**最小值**和**最大值**。如果將一個值設定為彙總，則另一個值將自動設定為彙總。這同樣適用於未彙總的案例。不支援混合彙總案例，表示其中一個值無法設定為彙總，而另一個值則為未彙總。請注意，未彙總案例 (即**無**選項) 僅支援數值，而分類值 (例如日期或維度) 只會顯示彙總值，例如**計數**和**非重複計數**。

使用**無**選項，您可以從 **X 軸**和 **Y 軸**欄位選單中選擇將 X 和 Y 值設定為彙總或未彙總。這將定義是否要依**顏色**和**標籤**欄位集中的維度彙總值。若要開始使用，請新增必要欄位，並根據使用案例選擇適當的彙總，如下列各章節所示。

### 未彙總的使用案例
<a name="advanced-scatter-plot-options-unaggregated"></a>
+ 帶顏色的未彙總 X 和 Y 值  
![\[未彙總的顏色\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/unaggregated-color.png)
+ 帶標籤的未彙總 X 和 Y 值  
![\[未彙總的標籤\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/unaggregated-label.png)
+ 帶顏色和標籤的未彙總 X 和 Y 值  
![\[未彙總的顏色和標籤\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/unaggregated-color-label.png)

### 彙總的使用案例
<a name="advanced-scatter-plot-options-aggregated"></a>
+ 帶顏色的彙總 X 和 Y 值  
![\[彙總的顏色\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/aggregated-color.png)
+ 帶標籤的彙總 X 和 Y 值  
![\[彙總的標籤\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/aggregated-label.png)
+ 帶顏色和標籤的彙總 X 和 Y 值  
![\[彙總的顏色和標籤\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/aggregated-color-label.png)

# 使用資料表的視覺效果
<a name="tabular"></a>

使用視覺效果表格觀看自訂表格檢視您的資料。若要建立表格視覺效果，請選擇至少一個任何資料類型的欄位。您可以視需要新增任意數量的資料欄，最多 200 個。您還可以新增計算資料欄。

表格視覺效果不會顯示圖例。您可以在表格上隱藏或顯示標題。您也可以隱藏或顯示總計，並選擇在表格頂端或底部顯示總計。如需詳細資訊，請參閱[Quick 中每種類型的分析格式](analytics-format-options.md)。

**若要建立資料表視覺效果**

1. 開啟 Amazon Quick 並選擇左側導覽窗格上的**分析**。

1. 選擇下列其中一項：
   + 若要建立新的分析，請選擇右上角的**新增分析**。如需詳細資訊，請參閱[在 Quick Sight 中開始分析](creating-an-analysis.md)。
   + 若要使用現有分析，請選擇您要編輯的分析。

1. 在檔案選單中選擇**插入**，然後選擇**新增視覺效果**。

1. 在右下角，從**視覺效果類型**中選擇資料表圖示。

1. 在 **Fields list (欄位清單)** 窗格中，選擇您要使用的欄位。如果要新增計算欄位，請選擇檔案選單上的**新增**，然後選擇**新增計算欄位**。

   若要建立資料的非彙總檢視，請將欄位只新增到 **Value (值)** 欄位集。這樣只會顯示資料，而無任何彙總。

   若要建立資料的彙總檢視，請選擇您要據以彙總的欄位，然後將這些欄位新增到 **Group by (分組依據)** 欄位集。

**若要顯示或隱藏資料表上的資料欄**

1. 在您的視覺效果上，請選擇您要隱藏的欄位，然後選擇**隱藏資料欄**。

1. 若要顯示任何隱藏資料欄，請選擇任意欄位，然後選擇**顯示所有隱藏資料欄**。

**若要將資料欄轉置為資料列，將資料列轉置為資料欄**
+ 選擇視覺效果右上角附近的轉置圖示 (![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/transpose-icon.png))。它有兩個角度為 90 度的箭頭。

**若要垂直對齊資料欄**

1. 在您的視覺效果上，選擇視覺效果右上角附近的**格式視覺效果**圖示 (![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/format-visual-icon.png))。

1. 在**屬性**窗格中，選擇**資料表選項**，然後選擇資料表的垂直對齊方式。

**若要自動換行標頭的文字**

1. 在您的視覺效果上，選擇視覺效果右上角附近的**格式視覺效果**圖示 (![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/format-visual-icon.png))。

1. 在**屬性**空格中，選擇**資料表選項**，然後選取**自動換行標頭的文字**。

**若要重新安排資料圖表中的資料欄**

1. 開啟含有要排序的視覺效果的分析。視覺效果窗格預設為開啟狀態。

1. 執行以下任意一項：
   + 在**欄位集**中拖放一個或多個欄位以重新排序。
   + 直接在資料表中選取欄位，然後在**移動資料欄**上選擇向左或向右鍵。

# 使用欄位樣式
<a name="field-styling"></a>

您可以使用格式視覺效果選單**欄位樣式**窗格，將資料表中的 URL 轉譯為連結。您可以為資料表中的每個頁面最多新增 500 列連結。僅支援 https 和郵件超鏈接。

**若要將連結新增至資料表**

1. 在快速首頁中，選擇**分析**，然後選擇您要自訂的分析。

1. 選擇您要變更的資料表。

1. 在資料表右上角的選單上選擇**格式視覺效果**。

1. 在**格式視覺效果**中，選擇**欄位樣式**。

1. 在**欄位樣式**窗格上，從選單中選擇要設定樣式的欄位。

1. 在**欄位樣式**選單的 **URL 選項**區段中，選擇**製作 URL 超連結**。

將連結新增至資料表後，您可以在**欄位樣式**窗格的**開啟位置**區段選取連結時，選擇要開啟連結的位置。您可以選擇在新的索引標籤、新視窗或相同索引標籤中開啟連結。

您也可以在**欄位樣式**窗格的**樣式**區段中選擇連結樣式的方式。您的連結可以顯示為超連結、圖示或純文字，您也可以設定自訂連結。

若要調整連結圖示或 URL 的字型大小，請在**格式視覺效果**選單**資料表選項**窗格的**儲存格**區段，變更**字型大小**。

您可以在資料表中設定任何指向影像的 URL，以在資料表中以影像的形式呈現。當您要在資料表中包含產品影像時，這樣做會很有用。

**若要將 URL 顯示為影像**

1. 在快速首頁中，選擇**分析**，然後選擇您要自訂的分析。

1. 選擇您要變更的資料表。

1. 在資料表右上角的選單上選擇**格式視覺效果**。

1. 在**格式視覺效果**選單中，選擇**欄位樣式**。

1. 在**欄位樣式**窗格中，從選單中選擇要設定樣式的欄位。

1. 在**欄位樣式**選單的 **URL 選項**區段中，選擇**將 URL 顯示為影像**。

在資料表中渲染影像之後，您可以在**欄位樣式**窗格的**影像大小**區段中選擇如何調整影像大小。您可以使影像適應儲存格的高度或寬度，也可以選擇不縮放影像。依預設，影像適應儲存格的高度。

# 將資料欄凍結為資料表視覺效果
<a name="tables-freeze-columns"></a>

您可以將資料欄凍結至資料表視覺效果，以便將特定資料欄鎖定在螢幕上。這讓讀者在資料表上滾動時仍然可以看到重要資訊。您可以一次凍結一個資料欄，也可以透過一個動作凍結資料欄群組。所有固定的資料欄都固定在資料表的最左側，並始終在螢幕上保持可見。這可讓快速讀取器在與資料表的其他部分互動時，擁有金鑰資料或資訊的常數參考點。

**若要將資料欄凍結至資料表**

1. 在要凍結資料欄的資料表上，選擇要固定的資料欄。

1. 選擇下列其中一個選項。
   + 若要凍結單一資料欄，請選擇**凍結資料欄**。
   + 若要將所有資料欄凍結至您選擇的資料欄，請選擇**凍結至此資料欄**。

如果您的資料表有多個固定資料欄，可以依照想要的順序對資料欄重新排序。若要調整資料表上固定資料欄的順序，請選擇您要移動的資料欄標頭，然後選擇往想要的方向**移動**。

**若要從資料表中解凍資料欄**

1. 在您要變更的資料表上，選擇要取消固定的固定資料欄。

1. 選擇下列其中一個選項。
   + 若要凍結單一資料欄，請選擇**解凍資料欄**。
   + 若要解凍所有已凍結的資料欄，請選擇**解凍所有資料欄**。

# 自訂總計值
<a name="tables-pivot-tables-custom-totals"></a>

快速作者可以從欄位集定義其資料表或樞紐分析表視覺效果的總和小計彙總。對於資料表，只有在開啟視覺效果總計時，才能使用自訂總計選單。

**若要變更總計或小計的彙總**

1. 導航到要變更的分析，然後選擇要定義其總計的資料表或樞紐分析表視覺效果。

1. 從欄位集中選擇要變更的欄位。

1. 選擇**總計**，然後選擇需要的彙總。以下是可用的選項。
   + **預設** - 總計算使用與指標欄位相同的彙總。
   + **總和** - 計算視覺效果中資料的總和。
   + **平均** - 計算視覺效果中資料的平均值。
   + **最小值** - 計算視覺效果中資料的最小值。
   + **最大值** - 計算視覺效果中資料的最大值。
   + **無 (隱藏)** - 不計算總計。當您選擇此選項時，視覺效果中的總計和小計儲存格會留空。如果外部維度使用計算總計或小計的指標欄位進行排序，則維度會按字母順序排序。當您將值從**無 (隱藏)**變更為另一個值時，外部維度會使用指定彙總類型計算的小計進行排序。

下列限制會套用至自訂總計。
+ 自訂總計不支援條件式格式設定。
+ 字串資料欄不支援彙整總和。總計彙總包括**最小值**、**最大值**、**總和**和**平均**。
+ 日期資料欄與**平均值**和**總和**總計彙總函數不相容。

# 對資料表進行排序
<a name="table-sort"></a>

在 Amazon Quick 中，您可以依資料表資料欄標頭中的欄位或使用**排序視覺化**工具來排序資料表中的值。您可以在單一資料表中對最多 10 個資料欄進行排序。Quick 也可以使用視覺外排序 您可以**遞增**或**遞減**順序排序資料欄。下圖顯示了**排序視覺效果**圖示和快顯視窗。

![\[排序視覺效果圖示和開啟的排序視覺效果快顯視窗。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/table-sort-icon.png)


## 單一資料欄排序選項
<a name="table-sort-single-column"></a>

Quick Authors 可以從欄位集、資料欄標頭或**排序視覺**效果選單存取單一資料欄排序選項。使用以下程序，在 Quick 中的資料表上設定單一資料欄排序。

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟您要使用的分析，並導覽至您要排序的資料表。

1. 選擇您要排序的資料欄標頭。

1. 對於**排序方式**，請選擇箭頭圖示，然後選擇您排序的欄位。

您也可以在**排序視覺效果**選單中設定單一資料欄排序。若要存取排序視覺效果選單，請選擇視覺化效果選單中的**排序視覺效果**圖示。在**排序視覺效果**選單中，選擇您要排序的欄位，然後選擇您要以遞增還是遞減順序排序。依預設，新排序會以遞增順序排序。完成後，請選擇**套用**。

使用單一資料欄排序的資料表一次只排序一個資料欄。使用者選擇新的要排序的資料欄後，先前的排序順序會被覆寫。

若要變更單一資料欄排序，請開啟**排序視覺效果**選單，然後使用下拉式選單選擇新的欄位或排序順序。完成變更後，請選擇**套用**。

若要將資料表重設為其原始狀態，請開啟**排序視覺效果**選單，然後選擇**重設**。

## 多欄排序選項
<a name="table-sort-multi-column"></a>

快速作者可以從**排序視覺**效果選單存取多欄排序選項。依照以下程序來設定資料表的多欄排序。

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟您要使用的分析，並導覽至您要排序的資料表。

1. 選擇**排序視覺效果**圖示以開啟**排序視覺效果**選單。

   1. 或者，選擇您要排序的標頭。

   1. 對於**排序方式**，請選擇箭頭圖示，然後選擇**多個欄位**。

1. 在開啟的**排序視覺效果**選單中，從**排序方式**下拉式清單中選擇欄位，然後選擇是要以遞增還是遞減順序對欄位排序。

1. 若要新增其他排序，請選擇**新增排序**，然後重複步驟 4 的工作流程。每個資料表最多可以新增 10 個排序。

1. 完成後，請選擇**套用**。

資料欄會依新增至**排序視覺效果**選單的順序進行排序。若要變更資料欄排序的順序，請開啟**排序視覺效果**選單，然後使用**排序方式**下拉式清單來重新排序。完成後，請選擇**套用**，將新的排序順序套用至資料表。

若要將資料表重設為其原始狀態，請開啟**排序視覺效果**選單，然後選擇**重設**。

## 非視覺效果排序選項
<a name="table-sort-off-visual"></a>

快速作者可以設定視覺外排序，依欄位和彙總排序資料表中的值，這是資料表使用但不是資料表其中一個欄位集資料集的一部分。一次可以將一個非欄位排序設定至單一資料表。

依照以下程序來設定非視覺效果排序。

**將非視覺效果排序新增至資料表**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟您要使用的分析，並導覽至您要排序的資料表。

1. 選擇資料表中任意資料欄的標頭。

1. 對於**排序方式**，請選擇箭頭圖示，然後選擇**非視覺效果欄位**。

1. 在顯示的**非視覺效果欄位**窗格中，開啟**排序方式**下拉式選單，然後選擇您要排序的欄位。

1. 對於**彙總**，開啟下拉式選單，然後選擇您要使用的彙總。

1. 對於**排序順序**，選擇您是要以遞增還是遞減順序排序。

1. 完成時，請選擇 **Apply** (套用)。

將非視覺效果排序套用至資料表後，排序會顯示在**排序視覺效果**選單中。包含非視覺效果排序的資料表排序順序取決於新增非視覺效果排序時資料表的排序設定。如果將非視覺效果排序新增至已設定單一或多欄排序的資料表，則非視覺效果排序會覆寫所有其他排序。如果在單欄或多欄排序之前套用非視覺效果排序，您可以將更多排序新增至資料表並重新排序。

# 使用文字方塊
<a name="textbox"></a>

使用文字方塊新增文字，以為分析中的工作表新增上下文。文字可以包含說明、描述，甚至外部網站的超連結。文字方塊上的工具列提供字型設定，讓您可以自訂字型類型、樣式、顏色、大小、間距、像素大小、文字反白顯示和對齊方式。文字方塊的本身沒有格式設定。

若要將文字新增至新的文字方塊，只要選取文字並開始輸入即可。

# 使用樹狀結構圖
<a name="tree-map"></a>

若要視覺化維度的一個或兩個度量，請使用樹狀結構圖。

樹狀結構圖的每個矩形代表維度中的一個項目。矩形大小表示項目所代表的所選度量的值，在整個維度中所佔的比例。您可以選擇使用矩形顏色來代表項目的另一個度量。矩形顏色代表項目的值在度量範圍內的位置，深色表示較高值，淺色表示較低值。

樹狀圖針對 **Group by (分組依據)** 欄位最多顯示 100 個資料點。如需 Amazon Quick 如何處理超出顯示限制的資料的詳細資訊，請參閱 [顯示限制](working-with-visual-types.md#display-limits)。

## 樹狀結構圖功能
<a name="tree-map-features"></a>

使用下表以了解樹狀結構圖支援的功能。


****  

| 功能 | 支援？ | 說明 | 如需詳細資訊 | 
| --- | --- | --- | --- | 
| 變更圖例顯示 | 是 |  | [Quick 中視覺效果類型的圖例](customizing-visual-legend.md) | 
| 變更標題顯示 | 是 |  | [Quick 中視覺效果類型的標題和字幕](customizing-a-visual-title.md) | 
| 變更軸範圍 | 不適用 |  | [在 Quick 中根據視覺效果類型進行範圍和擴展](changing-visual-scale-axis-range.md) | 
| 變更視覺效果顏色 | 否 |  | [Quick 中視覺效果類型的顏色](changing-visual-colors.md) | 
| 聚集於或排除元素 | 是，但有例外 | 您可以聚焦於或排除樹狀結構圖上的矩形，但使用日期欄位當作維度時除外。在這種情況下，您只能聚焦於矩形，無法排除它。 |  [聚焦於視覺化元素](focusing-on-visual-elements.md) [排除視覺化元素](excluding-visual-elements.md) | 
| 排序 | 否 | 預設排序會依大小資料欄中的量值遞減排列。 | [在 Amazon Quick 中排序視覺化資料](sorting-visual-data.md) | 
| 執行欄位彙總 | 是 | 您必須將彙總套用到您為大小和顏色選擇的欄位，而無法將彙總套用到您為分組依據選擇的欄位。 | [變更欄位彙總](changing-field-aggregation.md) | 
| 新增向下切入 | 是 | 您可以將向下切入等級新增到 Group by (分組依據) 欄位集。 | [在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md) | 

## 建立樹狀結構圖
<a name="create-tree-map"></a>

使用下列程序以建立樹狀結構圖。

**若要建立樹狀結構圖**

1. 在分析頁面，選擇工具列上的 **Visualize (視覺化)**。

1. 選擇應用程式列上的 **Add (新增)**，然後選擇 **Add visual (新增視覺效果)**。

1. 在 **Visual types (視覺效果類型)** 窗格中，選擇樹狀結構圖圖示。

1. 從 **Fields list (欄位清單)** 窗格中，將您想要使用的欄位拖曳到適當的欄位集。一般而言，建議使用目標欄位集所指出的維度欄位或度量欄位。如果您選擇使用維度欄位作為度量欄位，則會自動套用 **Count (計數)** 彙總函數以建立數值。

   若要建立樹狀結構圖，請將度量拖曳到 **Size (大小)** 欄位集，將維度拖曳到 **Group by (分組依據)** 欄位集。您可以選擇將另一個度量拖曳到 **Color (顏色)** 欄位集。

1. (選用) 將一或多個額外的欄位拖曳到 **Group by (分組依據)** 欄位集，以新增向下切入分層。如需有關新增向下切入的詳細資訊，請參閱[在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md)。

# 使用瀑布圖
<a name="waterfall-chart"></a>

使用瀑布圖視覺化順序求和作為加減的值。在瀑布圖中，初始值會經過 (正或負) 變化，每個變化都表示為一個條形圖。最終總計由最後一個長條表示。瀑布圖也稱為*橋樑*，因為長條之間的連接器將長條連接到一起，在視覺上顯示它們屬於同一個故事。

瀑布圖最常用來呈現財務資料，因為可以顯示一個時段內或從一個時間週期到另一個的變更。這樣您就可以視覺化影響專案成本的不同因素。例如，您可以使用瀑布圖來顯示同一個月內總銷售額與淨收入的比值，或去年與今年淨收入的差異，以及導致此變更的因素。

您也可以使用瀑布圖來呈現統計資料，例如您雇用了多少新員工，以及一年內有多少員工從公司離職。

下面的螢幕擷取畫面顯示的為瀑布圖。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/waterfall-chart.png)


**若要建立基本瀑布圖視覺效果**

1. 開啟 Amazon Quick 並選擇左側導覽窗格上的**分析**。

1. 選擇下列其中一項：
   + 若要建立新的分析，請選擇右上角的**新增分析**。如需詳細資訊，請參閱[在 Quick Sight 中開始分析](creating-an-analysis.md)。
   + 若要使用現有分析，請選擇您要編輯的分析。

1. 選擇**新增 (\$1)、新增視覺效果**。

1. 在左下角，從**視覺效果類型**中選擇瀑布圖圖示。

1. 從**欄位清單**窗格中，選擇您想要用於適當欄位集的欄位。瀑布圖需要**值**中的一個類別或量值。

1. (選用) 將一或多個額外的欄位拖曳到 **Group/Color (群組/顏色)** 欄位集，以新增向下切入分層。如需有關新增向下切入的詳細資訊，請參閱[在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md)。

   若要了解瀑布圖支援的功能，請參閱 [Quick 中每種類型的分析格式](analytics-format-options.md)。如需自訂選項，請參閱 [在 Amazon Quick 中格式化](formatting-a-visual.md)。

# 使用字詞雲端
<a name="word-cloud"></a>

使用字詞雲端做為參與方式，可顯示某字詞相對於資料集中其他字詞的使用頻率。此視覺效果類型的最佳用途是顯示字詞或語句的頻率。它也可以在顯示趨勢項目或動作時添加一點趣味。您可以使用固定的資料集做為創意用途。例如，您可以製作一個資料集，內含團隊目標、激勵口號、特定字詞的各種翻譯，或想要引人注意的任何其他內容。

字詞雲端中的每個字詞都代表維度中的一或多個值。字詞大小代表某值按同維度其他值的出現比例，在所選維度中的出現頻率。當精確度不重要且沒有大量相異值時，最適合字詞雲端。

以下螢幕擷取畫面顯示字詞雲端的範例。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/word-cloud.png)


若要建立字詞雲端，請在 **Group by (分組依據)** 欄位集中使用一個維度。或者，您也可以在 **Size (大小)** 欄位集中新增指標。

通常 20-100 個字詞或語句的字詞雲端最恰當，但格式設定會提供更寬鬆的彈性。如果字詞太多，它們會變得太小而看不清楚，視您的顯示器大小而定。根據預設，字詞雲端會顯示 100 個不同的字詞。若要顯示更多，請更改 **Number of words (字詞數)** 的格式設定。

字詞雲端的 **Group by (分組依據)** 限制為 500 個唯一值。若要避免顯示文字 **Other**，請格式化視覺效果以隱藏 **Other (其他)** 類別。如需 Amazon Quick 如何處理超出顯示限制的資料的詳細資訊，請參閱 [顯示限制](working-with-visual-types.md#display-limits)。

## 字詞雲端功能
<a name="word-cloud-features"></a>

若要了解文字雲支援的功能，請參閱下表。


| 功能 | 支援？ | 說明 | 如需詳細資訊 | 
| --- | --- | --- | --- | 
| 變更圖例顯示 | 否 |  | [Quick 中視覺效果類型的圖例](customizing-visual-legend.md) | 
| 變更標題顯示 | 是 |  | [Quick 中視覺效果類型的標題和字幕](customizing-a-visual-title.md) | 
| 變更軸範圍 | 不適用 |  | [在 Quick 中根據視覺效果類型進行範圍和擴展](changing-visual-scale-axis-range.md) | 
| 變更視覺效果顏色 | 是 | 若要變更顏色，請選擇文字再選擇顏色。 | [Quick 中視覺效果類型的顏色](changing-visual-colors.md) | 
| 聚集於或排除元素 | 是 |  |  [聚焦於視覺化元素](focusing-on-visual-elements.md) [排除視覺化元素](excluding-visual-elements.md) | 
| 排序 | 是 |  | [在 Amazon Quick 中排序視覺化資料](sorting-visual-data.md) | 
| 執行欄位彙總 | 是 | 您無法在您為 Group by (分組依據) 選擇的欄位套用彙總。您無法在您為 Size (大小) 選擇的欄位套用彙總。 | [變更欄位彙總](changing-field-aggregation.md) | 
| 新增向下切入 | 是 | 您可以將向下切入等級新增到 Group by (分組依據) 欄位集。 | [在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md) | 
| 使用格式選項 | 是 | 您可以選擇允許垂直字詞、強調比例、使用流動配置、使用小寫，以及設定字詞間的填補量。您可以設定字詞雲端的最大字串長度 (預設為 40)。您也可以選擇 Group by (分組依據) 欄位的字詞數 (預設值為 100；上限為 500)。 | [在 Amazon Quick 中格式化](formatting-a-visual.md) | 
| 顯示總計 | 否 |  | [在 Amazon Quick 中格式化](formatting-a-visual.md) | 

## 建立字詞雲端
<a name="create-word-cloud"></a>

使用下列程序建立字詞雲端。

**若要建立字詞雲端**

1. 在分析頁面，選擇工具列上的 **Visualize (視覺化)**。

1. 選擇應用程式列上的 **Add (新增)**，然後選擇 **Add visual (新增視覺效果)**。

1. 在 **Visual types (視覺效果類型)** 窗格中，選擇字詞雲端圖示。

1. 從 **Fields list (欄位清單)** 窗格中，將您想要使用的欄位拖曳到適當的欄位集。一般而言，建議使用目標欄位集所指出的維度欄位或度量欄位。根據預設，如果您選擇使用維度欄位做為度量，則會套用 **Count (計數)** 彙總函數。

   若要建立字詞雲端，請將維度新增至 **Group by (分組依據)** 欄位集。或者，將度量新增到 **Size (大小)** 欄位集。

1. (選用) 將一或多個額外的欄位拖曳到 **Group by (分組依據)** 欄位集，以新增向下切入分層。如需有關新增向下切入的詳細資訊，請參閱[在 Quick Sight 中將向下切入至視覺化資料](adding-drill-downs.md)。

# 在 Amazon Quick 中格式化
<a name="formatting-a-visual"></a>

您可以從各種選項中進行選擇，以格式化資料視覺效果和設定其樣式。若要格式化視覺效果，請選取您要格式化的視覺效果，然後選擇視覺效果右上角的**格式化視覺化效果**圖示。開啟格式視覺窗格後，您可以點選不同的視覺效果和控制項，以檢視特定視覺效果或控制項的格式化資料。如需格式化視覺化效果控件的詳細資訊，請參閱 [在 Amazon Quick 中使用具有參數的控制項](parameters-controls.md)。

請使用下列各章節來格式化內容和設定內容樣式：

**注意**  
從欄位集套用的任何格式變更只會套用至選取的視覺效果。

**Topics**
+ [

# Quick 中每種類型的分析格式
](analytics-format-options.md)
+ [

# Quick 中的資料表和樞紐分析表格式選項
](format-tables-pivot-tables.md)
+ [

# 在 Quick 中將資料列新增至資料表
](format-data-bars.md)
+ [

# 將火花新增至 Quick 中的資料表
](format-sparklines.md)
+ [

# Quick 中的映射和地理空間圖表格式選項
](geospatial-formatting.md)
+ [

# Quick 中視覺效果類型的軸和網格線
](showing-hiding-axis-grid-tick.md)
+ [

# Quick 中視覺效果類型的顏色
](changing-visual-colors.md)
+ [

# 在 Amazon Quick 中使用欄位層級著色
](format-field-colors.md)
+ [

# Quick 中視覺效果類型的條件式格式化
](conditional-formatting-for-visuals.md)
+ [

# KPI 選項
](KPI-options.md)
+ [

# Quick 中視覺效果類型的標籤
](customizing-visual-labels.md)
+ [

# 根據 Quick 中的語言設定格式化視覺化數值資料
](customizing-visual-language-preferences.md)
+ [

# Quick 中視覺效果類型的圖例
](customizing-visual-legend.md)
+ [

# Quick 中折線圖上的折線和標記樣式
](line-and-marker-styling.md)
+ [

# Quick 中視覺效果類型的遺失資料
](customizing-missing-data-controls.md)
+ [

# Quick 中視覺效果類型的參考線
](reference-lines.md)
+ [

# 在 Quick 中格式化雷達圖
](format-radar-chart.md)
+ [

# 在 Quick 中根據視覺效果類型進行範圍和擴展
](changing-visual-scale-axis-range.md)
+ [

# 小型倍數軸選項
](small-multiples-options.md)
+ [

# Quick 中視覺效果類型的標題和字幕
](customizing-a-visual-title.md)
+ [

# Quick 中視覺效果類型的工具提示
](customizing-visual-tooltips.md)

# Quick 中每種類型的分析格式
<a name="analytics-format-options"></a>

使用下列清單來查看在分析期間在視覺效果中運作的格式類型：
+ 長條圖 (水平和垂直) 支援以下格式：
  + 自訂、顯示或隱藏標題、欄位標籤和資料標籤
  + 自訂、顯示或隱藏圖例 (例外：無叢集或多個度量的簡單圖表不會顯示圖例)
  + 在水平長條圖的 x 軸和垂直長條圖的 y 軸上指定軸的範圍和刻度
  + 選擇在垂直長條圖 x 軸上，和在水平長條圖 y 軸上的資料點數量
  + 顯示或隱藏軸線、軸標籤、軸排序圖示和圖表網格線
  + 自訂、顯示或移除參考線
  + 顯示或隱藏「其他」類別

  水平長條圖支援對 y 軸和**值**進行排序。垂直長條圖支援對 x 軸和**值**進行排序。

  堆疊長條圖支援顯示總計。
+ 盒狀圖支援以下格式：
  + 自訂、顯示或隱藏標題
  + 自訂、顯示或隱藏圖例
  + 在 x 軸和軸範圍上指定軸範圍和標籤刻度，並在 y 軸上指定步驟
  + 顯示或隱藏軸線、軸標籤、軸排序圖示和圖表網格線
  + 選擇顯示在 x 軸上的資料點數量。
  + 顯示或隱藏「其他」類別 
  + 新增參考線

  盒狀圖支援對**分組依據**進行排序。
+ 組合圖支援以下格式：
  + 自訂、顯示或隱藏標題、欄位標籤和資料標籤
  + 自訂、顯示或隱藏圖例 (例外：無叢集、堆疊或多個度量的簡單圖表不會顯示圖例)
  + 指定長條和折線的軸範圍
  + 將長條和折線的 Y 軸同步到單一軸。
  + 選擇顯示在 x 軸上的資料點數量
  + 顯示或隱藏軸線、軸標籤、軸排序圖示和圖表網格線
  + 自訂、顯示或移除參考線
  + 顯示或隱藏「其他」類別

  組合圖支援對 x 軸、**柱狀圖**和**線性圖**進行排序。
+ 甜甜圈圖支援以下格式：
  + 自訂、顯示或隱藏標題、資料標籤和圖例
  + 自訂、顯示或隱藏群組/顏色和值欄位的標籤
  + 選擇**群組/顏色**中要顯示的切片數量
  + 顯示或隱藏「其他」類別

  甜甜圈圖支援對**群組/顏色**和**值**進行排序。
+ 填充圖支援以下格式：
  + 自訂、顯示或隱藏標題。
  + 自訂、顯示或隱藏圖例

  填充圖支援對**位置**和**顏色**進行排序。
+ 漏斗圖支援以下格式：
  + 自訂、顯示或隱藏標題和資料標籤
  + 自訂、顯示或隱藏群組/顏色和值欄位的標籤
  + 從**分組依據**欄位中選擇要顯示的階段數量
  + 顯示或隱藏「其他」類別

  漏斗圖支援對**分組依據**和**值**進行排序。
+ 規格表支援以下格式：
  + 自訂、顯示或隱藏標題。顯示或隱藏軸標籤。
  + 自訂如何顯示一個或多個值：隱藏、實際的值、比較
  + 選擇比較方法 (當您使用兩種度量時可用)
  + 在規格表中選擇軸範圍和填補顯示
  + 選擇圓弧樣式 (從 180 到 360 度) 與圓弧厚度

  量測圖表不支援排序。
+ 地理空間圖 (地圖) 支援以下格式：
  + 自訂、顯示或隱藏標題和圖例
  + 選擇底圖影像。
  + 請選擇顯示具有或不含叢集的地圖點。

  地理空間圖表不支援排序。
+ 熱圖支援以下格式：
  + 自訂、顯示或隱藏標題、圖例和標籤
  + 選擇顯示多少列與欄
  + 選擇顏色或漸層。
  + 顯示或隱藏「其他」類別

  熱度圖支援對**值**和**資料欄**進行排序。
+ 直方圖可支援下列格式設定：
  + 自訂、顯示或隱藏標題、欄位標籤和資料標籤
  + 指定 y 軸上的軸範圍、位數和刻度
  + 選擇顯示在 x 軸上的資料點數量
  + 顯示或隱藏軸線、軸標籤、軸排序圖示和圖表網格線

  直方圖不支援排序。
+ 關鍵績效指標 (KPI) 支援以下格式：
  + 自訂、顯示或隱藏標題
  + 顯示或隱藏趨勢箭頭與進度列
  + 將比較方法自訂為自動、差異、百分比 (%) 或差異百分比 (%)
  + 將顯示的主要值自訂為比較或實際
  + 條件式格式設定

  KPI 不支援排序。
+ 折線圖支援以下格式：
  + 自訂、顯示或隱藏標題、欄位標籤和資料標籤
  + 自訂、顯示或隱藏圖例 (例外：簡單圖表不會顯示圖例)
  + 指定軸範圍和刻度 (在 Y 軸)
  + 選擇顯示在 x 軸上的資料點數量
  + 顯示或隱藏軸線、軸標籤、軸排序圖示和圖表網格線
  + 自訂、顯示或移除參考線
  + 自訂線條的樣式和線上資料點的標記
  + 顯示或隱藏「其他」類別，當 X 軸是日期時除外

  折線圖支援對 x 軸和**值**僅用於數字目的的排序。
+ 圓餅圖支援以下格式：
  + 自訂、顯示或隱藏標題、資料標籤和圖例
  + 自訂、顯示或隱藏群組/顏色和值欄位的標籤
  + 將指標顯示為值、百分比或兩者
  + 選擇**群組/顏色**欄位中要顯示的切片
  + 顯示或隱藏「其他」類別

  圓餅圖支援對**值**和**群組/顏色**進行排序。
+ 樞紐分析表支援以下格式：
  + 自訂、顯示或隱藏標題
  + 自訂、顯示或隱藏資料欄、資料列和值欄位的標籤
  + 自訂資料表標頭和儲存格/內文的字型大小 
  + 由各列或各欄顯示總計和小計
  + 自訂總計或小計的標籤
  + 選擇其他樣式選項：將資料表縮放至符合檢視、隱藏 \$1/- 按鈕、隱藏各欄的欄位名稱、使用單一指標時隱藏重複的標籤
  + 條件式格式設定

  樞紐分析表支援對**資料欄**和**資料列**進行排序。如需排序樞紐分析表資料的詳細資訊，請參閱[在快速中排序樞紐分析表](sorting-pivot-tables.md)。
+ 散佈圖支援以下格式：
  + 自訂、顯示或隱藏標題、圖例、欄位標籤和資料標籤
  + 自訂、顯示或移除參考線
  + 指定軸範圍和刻度 (在 Y 軸和 Y 軸)
  + 顯示或隱藏軸線、軸標籤、軸排序圖示和圖表網格線

  散佈圖不支援排序。
+ 資料表支援以下格式：
  + 自訂、顯示或隱藏標題、圖例和欄位
  + 自訂、顯示或隱藏分組依據和值欄位的欄名稱
  + 自訂資料表標頭和儲存格/內文的字型大小 
  + 在表格頂端或底部顯示或隱藏總計
  + 為總計提供自訂標籤
  + 新增條件式格式設定

  資料表支援對**分組依據**和**值**進行排序。
+ 樹狀結構圖支援以下格式：
  + 自訂、顯示或隱藏標題和圖例
  + 自訂、顯示或隱藏分組依據、大小和顏色欄位的標籤
  + 選擇顏色或漸層。
  + 從**分組依據**欄位中選擇要顯示的方形數量
  + 顯示或隱藏「其他」類別

  折線圖支援對**大小**、**分組依據**和**顏色**進行排序。
+ 瀑布圖支援以下格式：
  + 自訂、顯示或隱藏標題或字幕
  + 自訂總計標籤
  + 指定 x 軸標籤大小和方向，以及 y 軸標籤範圍和方向。
  + 顯示或隱藏軸線、軸標籤、軸排序圖示和圖表網格線
  + 顯示或隱藏「其他」類別
  + 自訂圖例大小和位置。
  + 自訂、顯示或隱藏資料標籤。

  瀑布圖支援對**類別**和**值**排序。
+ 字詞雲端支援以下格式：
  + 自訂、顯示或隱藏標題
  + 自訂在 **Group by (分組依據)** 欄位中顯示的字詞顏色及字詞數
  + 顯示或隱藏「其他」類別
  + 選擇其他樣式選項：允許垂直字詞、強調比例、流動配置、使用小寫、填補級別和最大字串長度

  文字雲支援對**分組依據**進行排序。

# Quick 中的資料表和樞紐分析表格式選項
<a name="format-tables-pivot-tables"></a>

您可以在 Quick 中自訂資料表和樞紐分析表，以滿足業務需求。您可以透過指定每個資料表中文字的顏色、大小、換行和對齊方式來自訂資料表標頭、儲存格和總計。您也可以指定資料表中資料列的高度、新增邊界和網格線，以及新增自訂背景顏色。此外，您可以自訂如何顯示總計和小計。

如果您已將條件格式套用至資料表或樞紐分析表，則其會優先於您設定的任何其他樣式。

當您將資料表或樞紐分析表視覺效果匯出至 Microsoft Excel 時，套用至視覺效果的格式自訂不會反映在下載的 Excel 檔案中。

**若要格式化資料表或樞紐分析表**
+ 在分析中，選擇要自訂的資料表或樞紐分析表，然後選擇**格式化視覺化效果**圖示。  
![\[「格式化視覺化效果」圖示的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/format-tables-icon.png)

  **屬性**窗格會在左側開啟。

接下來，您可以在**屬性**窗格中看到用於自訂表或樞紐分析表每個區域的選項的描述。

**Topics**
+ [

# 標頭
](format-tables-headers.md)
+ [

# 儲存格格式
](format-tables-pivot-tables-cells.md)
+ [

# 總計和小計
](format-tables-pivot-tables-totals.md)
+ [

# Quick 中資料表和樞紐分析表中的資料列和資料欄大小
](format-tables-pivot-tables-resize-rows-columns.md)
+ [

# 自訂樞紐分析表資料
](format-tables-pivot-tables-layout-options.md)

# 標頭
<a name="format-tables-headers"></a>

## 展開所有標頭
<a name="format-tables-headers-expand"></a>

您可以選擇展開樞紐分析表中的所有標頭，以顯示標頭的所有子列和孫列。

**若要展開樞紐分析表的所有標頭**

1. 在您要變更的視覺效果上，選取任何標頭以開啟**視覺化效果**選單。

1. 選擇**展開下方所有項目**。

## 標頭高度
<a name="format-tables-headers-row"></a>

您可以自訂資料表標頭高度。

**若要自訂資料表中標頭的高度**

1. 在**屬性**窗格中選擇**標頭**。

1. 在**資料列高度**中，輸入以像素為單位的數字。您可以輸入 8 到 500 之間的整數。

**若要自訂樞紐分析表中標頭的高度**

1. 在**屬性**窗格中選擇**標頭**。

1. 在**資料欄**區段的**資料列高度**中，輸入以像素為單位的數字。您可以輸入 8 到 500 之間的整數。

## 標頭文字
<a name="format-tables-headers-text"></a>

您可以自訂資料表標頭文字。

**若要自訂資料表中標頭的文字**

1. 在**屬性**窗格中選擇**標頭**。

1. 導覽至**文字**區段並執行下列一或多個動作：
   + 若要變更標頭文字的顏色，請選擇**文字樣式**下方的顏色樣本，然後選擇所需的資料表文字顏色。
   + 若要變更標頭文字的字型或字型大小，請開啟**字型**或**字型大小**下拉式清單，然後選擇所需的字型或字型大小。
   + 若要對標題文字加上粗體、斜體或底線，請從樣式列中選擇適當的圖示。
   + 若要將標頭中太長而無法容納的文字換行，請選取**換行文字**。在標頭中換行文字不會自動增加標頭的高度。按照上述步驟增加標頭高度。
   + 若要變更標頭中文字的水平對齊方式，請選擇水平對齊圖示。您可以選擇靠左對齊、置中對齊、右對齊或自動對齊。
   + 若要變更標頭中文字的垂直對齊方式，請選擇垂直對齊圖示。您可以選擇頂部對齊、中間對齊或底部對齊。

**若要自訂樞紐分析表中標頭的文字**

1. 在**屬性**窗格中選擇**標頭**。

   「標頭」區段會展開以顯示用於自訂資料欄和資料列標頭的選項。

1. 在**標頭**區段中，執行以下其中一或多個動作：
   + 若要將資料列樣式套用至資料列或資料欄的欄位名稱，請根據您要自訂的標籤選擇**樣式資料列標籤**或**樣式資料欄標籤**。
   + 若要自訂標頭字型，請導覽至**資料列**或**資料欄**區段的**文字**子區段，然後執行下列一或多個動作：
     + 若要變更標頭文字的顏色，請選擇**文字樣式**下方的顏色樣本，然後選擇所需的資料表文字顏色。
     + 若要變更標頭文字的字型或字型大小，請開啟**字型**或**字型大小**下拉式清單，然後選擇所需的字型或字型大小。
     + 若要對標題文字加上粗體、斜體或底線，請從樣式列中選擇適當的圖示。
   + 若要變更標頭中文字的水平對齊方式，請選擇對齊圖示。您可以選擇靠左對齊、置中對齊、右對齊或自動對齊。您可以在**資料欄**區段中選擇欄標頭的水平對齊，以及在**資料列**區段中選擇資料列標頭的水平對齊。
   + 若要變更標頭中文字的垂直對齊方式，請選擇對齊圖示。您可以選擇頂部對齊、中間對齊或底部對齊。您可以在**資料欄**區段中選擇欄標頭的垂直對齊，以及在**資料列**區段中選擇資料列標頭的垂直對齊。
   + 若要隱藏資料列標籤或資料欄欄位名稱，請選擇**資料列標籤**或**資料欄欄位名稱**旁的眼睛狀圖示。

## 標頭背景顏色
<a name="format-tables-headers-background"></a>

您可以自訂資料表標頭的背景顏色。

**若要自訂資料表標頭的背景顏色**

1. 在**屬性**窗格中選擇**標頭**。

1. 在**背景**中，選擇背景顏色圖示，然後選擇顏色。您可以選擇提供的顏色之一，將標頭文字顏色重置為預設顏色，或建立自訂顏色。

**若要自訂樞紐分析表標頭的背景顏色**

1. 在**屬性**窗格中選擇**標頭**。

   **標頭**區段會展開以顯示用於自訂資料欄和資料列標頭的選項。

1. 在**資料欄**區段中，選擇背景顏色圖示，然後選擇顏色。

1. 在**資料列**區段中，選擇背景顏色圖示，然後選擇顏色。

## 標頭邊界
<a name="format-tables-headers-border"></a>

您可以自訂標頭邊界的顏色。

**若要在資料表中自訂標頭邊界**

1. 在**屬性**窗格中選擇**標頭**。

1. 對於**邊界**，執行下列其中一項或多項：
   + 若要自訂您想要的邊界類型，請選擇邊界類型圖示。您可以選擇「無邊界」、「僅水平邊界」、「僅垂直邊界」或「所有邊界」。
   + 若要自訂邊界粗細，請選擇邊界粗細。
   + 若要自訂邊界顏色，請選擇邊界顏色圖示，然後選擇顏色。您可以選擇提供的顏色之一，將邊界顏色重置為預設顏色，或建立自訂顏色。

**若要在樞紐分析表中自訂標頭邊界**

1. 在**屬性**窗格中選擇**標頭**。

   **標頭**區段會展開以顯示用於自訂資料欄和資料列標頭的選項。

1. 在**資料欄**與**資料列**區段中，對於**邊界**，執行下列一或多個動作：
   + 若要自訂您想要的邊界類型，請選擇邊界類型圖示。您可以選擇「無邊界」、「僅水平邊界」、「僅垂直邊界」或「所有邊界」。
   + 若要自訂邊界粗細，請選擇邊界粗細。
   + 若要自訂邊界顏色，請選擇邊界顏色圖示，然後選擇顏色。您可以選擇提供的顏色之一，將邊界顏色重置為預設顏色，或建立自訂顏色。

## 階層樞紐分析表的標頭樣式選項
<a name="format-pivot-tables-header-styling"></a>

您可以隱藏或重命名階層樞紐分析表的**資料列**標籤。

**若要變更階層樞紐分析表的**資料列**標籤**

1. 選取要變更的階層樞紐分析表，然後開啟**格式化視覺化效果**選單。

1. 在**標頭**區段中，您可以執行以下任務
   + 選擇**隱藏資料列標籤**以隱藏樞紐分析表中的**資料列**標籤。
   + 對於**資料列標籤**，輸入要在樞紐分析表上顯示的標籤。

# 儲存格格式
<a name="format-tables-pivot-tables-cells"></a>

## 資料列高度
<a name="format-tables-pivot-tables-cells-row"></a>

您可以自訂資料表資料列高度。

**若要自訂資料表或樞紐分析表中資料列的高度**

1. 在**屬性**窗格中選擇**儲存格**。

   **儲存格**區段會展開以顯示自訂儲存格的選項。

1. 在**資料列高度**中，輸入以像素為單位的數字。您可以輸入 8 到 500 之間的整數。

## 儲存格文字
<a name="format-tables-pivot-tables-cells-text"></a>

您可以自訂資料表中儲存格文字的格式。

**若要格式化資料表或樞紐分析表中的儲存格文字**

1. 在**屬性**窗格中選擇**儲存格**。

   **儲存格**區段會展開以顯示自訂儲存格的選項。

1. 對於**文字**，執行下列其中一項或多項：
   + 若要變更儲存格文字的顏色，請選擇**文字樣式**下方的顏色樣本，然後選擇所需的資料表文字顏色。
   + 若要變更儲存格文字的字型或字型大小，請開啟**字型**或**字型大小**下拉式清單，然後選擇所需的字型或字型大小。
   + 若要對儲存格文字加上粗體、斜體或底線，請從樣式列中選擇適當的圖示。
   + 若要將標頭中太長而無法容納的文字換行，請選取**換行文字**。在儲存格中換行文字不會自動增加資料列高度。按照上述步驟增加資料列高度。
   + 若要變更儲存格中文字的水平對齊方式，請選擇水平對齊圖示。您可以選擇靠左對齊、置中對齊、右對齊或自動對齊。只能針對階層樞紐分析表的**資料列**欄位設定水平對齊。
   + 若要變更儲存格中文字的垂直對齊方式，請選擇垂直對齊圖示。您可以選擇頂部對齊、中間對齊、底部對齊或自動對齊。對於資料表式樞紐分析表，**自動**的值是垂直對齊。對於階層樞紐分析表，**自動**的值為中間對齊。  
![\[格式化視覺化效果選單中的垂直和水平儲存格對齊選項。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/format-pivot-table-alignment.png)

## 方格背景顏色
<a name="format-tables-pivot-tables-cells-background"></a>

您可以自訂資料表儲存格的背景顏色。

**若要自訂資料表或樞紐分析表中儲存格背景顏色**

1. 在**屬性**窗格中選擇**儲存格**。

   **儲存格**區段會展開以顯示自訂儲存格的選項。

1. 在**背景**中，執行以下其中一個或多個動作：
   + 若要在資料列之間替換背景顏色，請選取**替代資料列顏色**。清除此選項意味著所有儲存格具有相同的背景顏色。
   + 如果您選擇在列之間替換背景顏色，請為**奇數資料列**選擇一種顏色，並為**偶數資料列**選擇一種顏色，方法是為每個列選擇背景顏色圖示並選取顏色。您可以選擇提供的顏色之一，將背景顏色重置為預設顏色，或建立自訂顏色。
   + 如果您選擇不在資料列之間替換背景顏色，請選擇背景顏色圖示並為所有儲存格選取顏色。您可以選擇提供的顏色之一，將背景顏色重置為預設顏色，或建立自訂顏色。

## 儲存格邊界
<a name="format-tables-pivot-tables-cells-border"></a>

您可以自訂資料表儲存格的邊界。

**若要自訂資料表或樞紐分析表中儲存格的邊界**

1. 在**屬性**窗格中選擇**儲存格**。

   **儲存格**區段會展開以顯示自訂儲存格的選項。

1. 對於**邊界**，執行下列其中一項或多項：
   + 若要自訂您想要的邊界類型，請選擇邊界類型圖示。您可以選擇「無邊界」、「僅水平邊界」、「僅垂直邊界」或「所有邊界」。
   + 若要自訂邊界粗細，請選擇邊界粗細。
   + 若要自訂邊界顏色，請選擇邊界顏色圖示，然後選擇顏色。您可以選擇提供的顏色之一，將邊界顏色重置為預設顏色，或建立自訂顏色。

# 總計和小計
<a name="format-tables-pivot-tables-totals"></a>

對於表格和樞紐分析表，您可以設定總計或小計的顯示方式。表格可在視覺效果的頂端或底部顯示總計。樞紐分析表則可由各列與各欄顯示總計和小計。

## 將總計和小計新增至 Quick 中的資料表和樞紐分析表
<a name="format-tables-pivot-tables-totals-position"></a>

您可以將總計資料欄新增至表和樞紐分析表視覺效果中。您還可以將小計資料欄新增至樞紐分析表視覺效果中。

**若要顯示或隱藏樞紐分析表的總計和小計**

1. 若要顯示總計，請開啟**屬性**窗格，然後選擇**總計**。
   + 若要顯示資料列的總計，請將**資料列**開關切換為開啟。總計會顯示在視覺效果的底部列上。選擇 **PIN 總計**可在捲動資料表時保持總計可見。
   + 若要顯示資料欄的總計，請將**資料欄**開關切換為開啟。總計會顯示在視覺效果的最後一欄上。

1. 若要顯示總計，請開啟**屬性**窗格，然後選擇**小計**。
   + 若要顯示資料列的小計，請將**資料列**開關切換為開啟。總計會顯示在視覺效果的底部列上。
   + 若要顯示資料欄的小計，請將**資料欄**開關切換為開啟。
   + 在**層級**欄位中選擇下面其中一個選項：
     + 選擇**最後**以僅顯示圖表階層中最後一個欄位的小計。此為預設選項。
     + 選擇**全部**以顯示每個欄位的小計。
     + 選擇**自訂**以自訂顯示小計的欄位。

將資料列總計新增至資料表或樞紐分析表視覺效果後，您還可以選擇將總計定位在視覺效果的頂端或底部。您也可以變更樞紐分析表中總計資料欄的位置。

**若要在資料表或樞紐分析表中定位總計資料列或資料欄**

1. 在**屬性**窗格中選擇**總計**。

1. (選用) 針對**資料列**，選擇**顯示總計**。

1. (選用) 對於**資料欄**，選擇**顯示總計**。

1. (選用) 在**資料列**選單中，開啟**位置**下拉式清單，然後選擇要顯示總計的位置。選擇**頂端**將總計定位在資料表頂端，或選擇**底部**將總計定位在資料表底部。

1. (選用) 在**資料欄**選單中，開啟**位置**下拉式清單，然後選擇要顯示總計的位置。選擇**左側**將總計定位在資料表左側，或選擇**右側**將總計定位在資料表右側。

您無法變更樞紐分析表視覺效果之小計的位置。如果您的樞紐分析表使用階層版面配置，則小計資料列會位於資料表的頂端。資料表樞紐分析表小計顯示在資料表底部。

## 自訂總計和小計的標籤
<a name="format-tables-pivot-tables-totals-text"></a>

您可以重新命名資料表和樞紐分析表視覺效果中的總計，為帳戶讀者提供更好的上下文。依預設，總計和小計沒有標籤。

**若要重新命名資料表或樞紐分析表視覺效果中的總計**

1. 在**屬性**窗格中，選擇**總計**或**小計**。

1. 在**標籤**中，輸入要為總計顯示的單字或短語。

   在樞紐分析表中，您還可以將標籤新增至資料欄總計和小計中。若要這麼做，請在**資料欄**區段中為**標籤**輸入單字或短語。

1. (選用) 對於資料表樞紐分析表，您還可以將群組名稱新增至小計。若要將群組名稱新增至資料列小計，請選擇**標籤**欄位旁邊的**加號 (\$1)** 圖示，以新增所需的群組名稱參數。您也可以在此欄位中輸入單字或短語。

您還可以變更資料表和樞紐分析表視覺效果的總計和小計標籤的文字大小和字體顏色。

**若要格式化總計與小計文字**

1. 在**屬性**窗格中，選擇**總計**或**小計**。

1. 對於**文字**，執行下列其中一項或多項。
   + 若要變更總計或小計文字的顏色，請選擇**文字樣式**下方的顏色樣本，然後選擇所需的資料表文字顏色。
   + 若要變更總計或小計文字的字型或字型大小，請開啟**字型**或**字型大小**下拉式清單，然後選擇所需的字型或字型大小。
   + 若要對總計或小計文字加上粗體、斜體或底線，請從樣式列中選擇適當的圖示。

   在樞紐分析表中，您還可以為資料欄總計和小計新增格式文字。若要這麼做，請重複**資料欄**區段中的上述步驟。

## 總計和小計背景顏色
<a name="format-tables-pivot-tables-totals-background"></a>

**若要自訂總計和小計的背景顏色**

1. 在**屬性**窗格中，選擇**總計**或**小計**。

1. 在**背景**中，選擇背景顏色圖示，然後選擇顏色。您可以選擇提供的顏色之一，將背景顏色重置為預設顏色，或建立自訂顏色。

   在樞紐分析表中，您還可以為資料欄總計和小計新增背景顔色。若要這麼做，請在**資料欄**區段中為**背景**選擇背景顏色圖示。

## 總計和小計邊界
<a name="format-tables-pivot-tables-totals-border"></a>

**若要自訂總計與小計的邊界**

1. 在**屬性**窗格中，選擇**總計**或**小計**。

1. 對於**邊界**，執行下列其中一項或多項：
   + 若要自訂您想要的邊界類型，請選擇邊界類型圖示。您可以選擇「無邊界」、「僅水平邊界」、「僅垂直邊界」或「所有邊界」。
   + 若要自訂邊界粗細，請選擇邊界粗細。
   + 若要自訂邊界顏色，請選擇邊界顏色圖示，然後選擇顏色。您可以選擇提供的顏色之一，將邊界顏色重置為預設顏色，或建立自訂顏色。

   在樞紐分析表中，您也可以為資料欄總計和小計新增邊界。若要這麼做，請重複**資料欄**區段中的上述步驟。

## 將總計和小計樣式套用至儲存格
<a name="format-tables-pivot-tables-totals-apply"></a>

在樞紐分析表中，您可以將套用至總計的任何文字、背景顏色和邊界樣式套用至該相同資料欄或列中的儲存格。資料列小計顯示不同，具體取決於樞紐分析表使用的版面配置。對於資料表式樞紐分析表，明確的小計標頭會出現在視覺效果上。對於階層樞紐分析表，不會顯示明確的小計標頭。相反地，作者會將小計樣式套用至**格式化視覺化效果**選單中的個別欄位。收合的標頭無法設定為小計的樣式。

**若要將總計和小計樣式套用至儲存格**

1. 在**屬性**窗格中，選擇**總計**或**小計**。

1. 在**套用樣式至**中，選擇您要套用小計樣式的視覺效果。您可以從下列選項來選擇。
   + **無** – 從所有儲存格移除樣式選項。
   + **僅限標頭** – 將樣式選項應用於樞紐分析表中的所有標頭。
   + **僅限儲存格** – 將樣式選項套用至樞紐分析表中不是標頭的所有儲存格。
   + **標頭和儲存格** – 將樣式選項套用至樞紐分析表中的所有儲存格。

# Quick 中資料表和樞紐分析表中的資料列和資料欄大小
<a name="format-tables-pivot-tables-resize-rows-columns"></a>

作者和讀者可以調整資料表或樞紐分析表視覺效果中的資料列和資料欄大小。他們可以調整資料列高和資料欄寬。作者還可以為樞紐分析表視覺效果中的資料欄設定預設欄寬。

**若要調整資料表或樞紐分析表中資料列的大小**
+ 在資料表或樞紐分析表視覺效果中，將游標懸停在要調整大小的行上，直到看到水平游標出現為止。出現時，選取行並將其拖曳至新高度。

  您可以透過選取儲存格和資料列標頭上的水平線來調整資料列高。  
![\[調整表或樞紐分析表中資料列的大小。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/resize-table-row1.gif)

**若要調整資料表或樞紐分析表中資料欄的寬度**
+ 在資料表或樞紐分析表視覺效果中，將游標懸停在要調整大小的行上，直到看到垂直游標出現為止。出現時，選取行並將其拖曳至新寬度。

  您可以透過選取儲存格、資料欄標頭和資料列標頭上的垂直線來調整欄寬。  
![\[調整資料表或樞紐分析表中資料欄的大小。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/resize-table-row2.gif)

**若要為樞紐分析表中的資料欄設定預設欄寬**

1. 選取要變更的樞紐分析表，然後開啟**格式化視覺化效果**選單。

1. 在**樞紐選項**區段中，導覽至**值資料欄寬度 (像素)** 欄位，然後輸入您想要的預設值 (以像素為單位)。

# 自訂樞紐分析表資料
<a name="format-tables-pivot-tables-layout-options"></a>

您可以自訂 Quick Reader 如何檢視樞紐分析表，讓它們更容易閱讀和一目了然。您可以選擇隱藏樞紐分析表的加號和減號圖示、隱藏僅具有單一指標的資料欄，以及在檢視中隱藏收合的資料欄。這些選項可協助 Quick 作者消除樞紐分析表中的雜亂，並為 Quick 使用者提供更輕鬆的讀者體驗。這與選擇樞紐分析表版面配置不一樣。如需樞紐分析表版面配置選項的詳細資訊，請參閱 [選擇版面配置](create-pivot-table.md#pivot-table-layout)。

您也可以從樞紐分析表的**合併資料列欄位選單**存取這些選項。您為樞紐分析表選擇的版面配置會決定存取此選單的方式。如需存取**合併資料列欄位**選單的詳細資訊，請參閱 。

**若要變更樞紐分析表的版面配置**

1. 在**格式化視覺化效果**窗格中，選擇**樞紐選項**。

1. 在**樞紐選項**選單中，選取下列選項以自訂檢視：
   + **隱藏 \$1/– 按鈕** – 根據預設，從您的樞紐分析表中隱藏加號和減號圖示。讀者仍然可以選擇顯示加號和減號圖示，以及展開或摺疊資料欄和資料列。
   + **隱藏單一指標** – 隱藏只有單一指標值的資料欄。
   + **隱藏折疊的欄** – 自動隱藏樞紐分析表中所有折疊的資料欄。此選項僅適用於資料表式樞紐分析表。

# 在 Quick 中將資料列新增至資料表
<a name="format-data-bars"></a>

您可以使用資料列將視覺效果內容新增至 Amazon Quick 中的資料表視覺效果。透過在資料表中注入顏色，資料柱可讓您更輕鬆地視覺化和比較一系列欄位中的資料。*資料柱*是您加入至資料表儲存格的不同顏色或陰影的長條。長條會相對於單一資料欄中所有儲存格的範圍進行衡量，這類似於長條圖。您可以使用資料欄突出顯示波動趨勢，例如年度中每季度的利潤。

您只能將資料柱套用至已新增至視覺效果的**值**欄位集中的欄位。您無法將資料柱套用至新增至分組依據的項目。

您可以為單一資料表建立多達 200 種不同的資料柱組態。

![\[在資料表中展示資料柱的影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/data-bars-1.png)


**若要將資料柱加入至資料表**

1. 在分析頁面，選擇您要格式化的視覺效果。

1. 在視覺效果右上角的選單中，選取**格式化視覺化效果**圖示。**格式化視覺化效果**窗格會開啟。

1. 在**屬性**窗格中，開啟**視覺效果**下拉式清單，然後選擇**新增資料柱**。

1. 在出現的**資料柱**快顯視窗中，選擇要由資料柱表示的值欄位。您只能從已新增至視覺效果的**值**欄位集中的欄位選擇。

1. (選用) 選擇標示為**正顔色**的圖示，以選取您要表示正值資料柱的顏色。預設顏色為綠色。

1. (選用) 選擇標示為**負顏色**的圖示，以選取您要表示負值資料柱的顏色。預設顏色為紅色。

當您建立資料柱時，會根據它們所代表的欄位值來命名它們。例如，如果您加入資料柱來表示一段時間內產品的利潤，則資料列組態會標示為「利潤」。在**屬性**選單的**視覺效果**窗格中，資料柱會依建立順序列出。

**若要從視覺效果中移除資料柱**

1. 在視覺效果右上角的選單中，選取**格式化視覺化效果**圖示。**屬性**窗格隨即開啟。

1. 在**屬性**窗格中，開啟**視覺效果**下拉式清單，然後選擇要移除的資料柱。

1. 選擇**移除資料柱**。

# 將火花新增至 Quick 中的資料表
<a name="format-sparklines"></a>

Sparklines 是小型內嵌圖表，可直接在資料表儲存格內顯示趨勢，協助讀者快速識別模式和季節性，而無需離開資料表檢視。當您需要精簡趨勢視覺化搭配表格式資料時，請使用 sparklines。

**將火花套用至資料表**

1. 在分析頁面上，選擇您要格式化的資料表視覺效果。

1. 在視覺效果右上角的選單中，選取**格式化視覺化效果**圖示。**格式化視覺化效果**窗格會開啟。

1. 在**屬性**窗格中，開啟**視覺**效果下拉式清單，然後選擇**套用 SPARKLINES**。

1. 在火花編輯窗格中，設定資料設定：
   + 針對**值資料欄**，選擇您希望 sparkline 代表的量值欄位。另一個 sparkline 或資料列已使用的欄位無法使用。
   + 對於 **X 軸欄位**，選擇要沿著水平軸繪製的維度欄位。X 軸欄位不能與依欄位集**分組**中的欄位相同。您也可以設定 X 軸欄位的排序方向和時間精細程度 （日期/時間欄位）。

1. （選用） 展開**簡報**區段以自訂火花外觀。如需詳細資訊，請參閱 [Sparkline 選項](#format-sparklines-options)。

1. （選用） 設定標記可見性。預設會隱藏所有標記。您可以選擇顯示：
   + **所有點** – 在每個資料點上顯示標記。
   + **最大值** – 在最高值上顯示標記。
   + **最小值** – 在最小值上顯示標記。

1. 選擇**套用**。

Sparkline 是以其代表的值欄位命名 （例如，「利潤」)。Sparklines 會依建立順序顯示在**視覺**效果窗格中。

## Sparkline 選項
<a name="format-sparklines-options"></a>

下表說明 sparkline 呈現選項。


| 設定 | 選項 | 預設 | Description | 
| --- | --- | --- | --- | 
| Y 軸行為 | 共用、獨立 | 共同 | 共用會跨所有資料列使用相同的 Y 軸縮放，以便於比較。獨立擴展每一列以反白顯示個別趨勢形狀。 | 
| 視覺效果類型 | 行、區域行 | 折線圖 | 區域行會在該行下方新增陰影區域。 | 
| 線條顏色 | 顏色挑選器 | 佈景主題顏色 | 火花線的自訂顏色。 | 
| 行插補 | 線性、平滑、步進 | 線性 | 控制點的連線方式。 | 

## 編輯和移除火花
<a name="format-sparklines-edit-remove"></a>

若要編輯火花，請開啟格式化**視覺效果**窗格中的**視覺效果**下拉式清單，然後選擇您要修改的火花旁邊的編輯圖示。更新設定，然後選擇**套用**。

若要移除火花，請開啟火花的編輯窗格，然後選擇**刪除**。

## 自動移除
<a name="format-sparklines-auto-removal"></a>

當欄位變更使它們無效時，Quick 會自動移除閃爍：
+ 移除所有**依欄位分組** – 移除所有火花。
+ Sparkline 的值資料欄會從**值**欄位集中移除 – 該 Sparkline 會被移除。
+ Sparkline 的 X 軸欄位會新增至**依欄位集分組** – 該 sparkline 會移除。

當 Sparkline 自動移除時，會顯示通知。

## 火花限制
<a name="format-sparklines-limitations"></a>

使用火花時，請考慮下列事項：
+ **每個資料表的最大火花 –** 每個資料表視覺效果最多 3 個火花欄
+ **最大資料點** – 每個火花最多 52 個資料點。如果您的資料超過此限制，Quick 會根據 X 軸排序順序顯示最後 52 個資料點。
+ **欄位需求** – 依欄位集**分組**中的至少一個欄位，以及**值**欄位集中的一個欄位
+ **X 軸限制 –** X 軸欄位不能與任何**依欄位分組**相同
+ **獨佔值資料欄用量** – Sparkline 和資料列都無法使用值資料欄
+ **匯出支援**：Sparklines 包含在 PDF 匯出中，但不包含在 CSV 或 Excel 匯出中
+ **篩選條件行為** – 套用至資料表的篩選條件也會篩選火花資料

# Quick 中的映射和地理空間圖表格式選項
<a name="geospatial-formatting"></a>

在 Amazon Quick 中，您可以選擇地圖和地理空間圖表的多個格式選項。您可以從目前選取的地理空間地圖右上角的視覺選單中開啟**屬性**窗格來檢視格式選項。

快速作者和讀者也可以從視覺效果功能表上的 切換地理空間地圖視覺效果的不同格式選項。

![\[從視覺效果選單切換地理空間地圖格式選項。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/geospatial-map-options-1.gif)


**Topics**
+ [

# Quick 中地理空間貼圖的基礎貼圖
](base-maps.md)
+ [

# Amazon Quick 中的地理空間熱度圖
](heat-maps.md)
+ [

# Quick 中地理空間點貼圖上的標記叢集
](marker-clustering-on-maps.md)

# Quick 中地理空間貼圖的基礎貼圖
<a name="base-maps"></a>

當您在 Quick 中建立地圖視覺效果時，您可以變更地圖的基礎。*底圖*是顯示在地圖上資料下方的地圖型式。一個例子是衛星視圖與街景視圖。

在 Quick 中，基底貼圖有四個選項：淺灰色畫布、深灰色畫布、街道和影像。下列清單包含每個底圖選項的範例：

**重要**  
亞太地區 (孟買) AWS 區域 (ap-south-1) 僅支援淺灰色畫布。
+ 淺灰色畫布  
![\[這是具有淺灰色畫布底圖的地圖視覺效果的示例圖像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/map-layers1.png)
+ 深灰色畫布  
![\[這是具有深灰色畫布底圖的地圖視覺效果的示例圖像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/map-layers2.png)
+ 街道  
![\[這是具有街道底圖的地圖視覺效果的示例圖像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/map-layers3.png)
+ 影像  
![\[這是具有影像底圖的地圖視覺效果的示例圖像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/map-layers4.png)

## 變更底圖
<a name="base-maps-change"></a>

請使用下列程序來變更底圖。

**若要變更底圖**

1. 在分析中建立點或填滿的地圖。如需詳細資訊，請參閱[建立地圖和地理空間圖表](geospatial-charts.md)。

1. 在地圖視覺效果上，選擇**格式化視覺化效果**圖示。

1. 在開啟的**屬性**窗格中，選擇**底圖**區段，然後選擇您想要的底圖。

# Amazon Quick 中的地理空間熱度圖
<a name="heat-maps"></a>

使用地理空間熱度圖來顯示地理空間視覺效果中標記集中的模式。熱度圖使用彩色疊加層來顯示資料點的集中度，該疊加層會突出顯示視覺標記的強度或集中度。

![\[這是工作中標記叢集的一個例子。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/heat-map-1.png)


**若要將地理空間地圖轉換為熱度圖**

1. 開啟分析，然後選擇要格式化的地理空間地圖。當您選取視覺效果時，它會在其周圍顯示反白。

1. 若要開啟格式化窗格，請從**視覺效果**選單中選取格式化視覺效果圖示。

1. 在左側的格式窗格中，選擇**點**。

1. 選擇**熱度圖**。

1. (選用) 對於**熱度圖漸層**，請為**高密度**和**低密度**值選擇所需的顏色。

# Quick 中地理空間點貼圖上的標記叢集
<a name="marker-clustering-on-maps"></a>

使用標記叢集來提高地圖上並置點的可讀性。點圖上的地理空間位置使用標記表示。通常，每個資料點有一個標記。但是，如果有太多的標記靠在一起，地圖會變得難以閱讀。為了更容易解釋地圖，您可以啟用標記叢集來表示地圖上的位置分組。當讀者在地圖上放大時，叢集標記會保留區域標記以單獨顯示。

![\[這是工作中標記叢集的一個例子。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/map-marker-clustering.gif)


**若要將叢集點加入至地圖**

1. 開啟分析，然後選擇要格式化的地理空間地圖。當您選取視覺效果時，它會在其周圍顯示反白。

1. 若要開啟格式化窗格，請從**視覺效果**功能表選取格式化視覺效果圖示。

1. 在左側的格式窗格中，選擇**點**。

1. 請選擇下列其中一個選項：
   + **基本** – 使用地圖點的預設顯示設定。
   + **叢集點** – 當一個區域中有多個點時，將地圖點聚集在一起。

# Quick 中視覺效果類型的軸和網格線
<a name="showing-hiding-axis-grid-tick"></a>

當您在快速中建立圖表時，軸線、軸標籤、軸排序圖示和網格線會自動新增至圖表。如果需要，您可以格式化視覺效果以將之顯示或隱藏，還可以自訂軸標籤大小和方向。

您可以格式化下列圖表類型的軸線、網格線、軸標籤以及軸排序圖示：
+ 長條圖
+ 盒狀圖
+ 組合圖
+ 長條圖
+ 折線圖
+ 散佈圖
+ 瀑布圖

**若要格式化圖表中的軸線、軸標籤和網格線**

1. 在分析頁面，選擇您要格式化的視覺效果。

1. 在視覺效果右上角的選單中，選取「格式化視覺化效果」圖示。

   **屬性**窗格會在左側開啟。

**若要顯示或隱藏軸線**

1. 在**屬性**窗格中，選擇您要格式化的軸。

1. 選擇**顯示軸線**。清除該核取方塊可隱藏所選軸的軸線。選取此核取方塊以顯示軸線。

**若要自訂軸標題**

1. 在**屬性**窗格中，選擇您要格式化的軸。

1. 選擇**顯示標題**。清除此核取方塊，可隱藏所選軸的軸標題和下拉脫字符圖示。選取此核取方塊可顯示它們。

1. 若要變更預設欄位名稱的標題，請在文字方塊中輸入標題。

**注意**  
除了本主題先前列出的圖表類型之外，您還可以自訂餅圖、甜甜圈圖、漏斗圖、熱度圖和樹狀圖中的軸標題。

**修改軸字型設定**

1. 在**屬性**窗格中，選擇您要格式化的軸。

1. 調整下列屬性：
   + **字型系列**
   + **文字大小**
   + **樣式** （粗體、斜體、底線）
   + **Color (顏色)**

**注意**  
軸標題支援底**線**，但軸標籤不支援底線
不同的圖表類型使用不同的術語：  
**長條圖/折線圖** - **X 軸**和 **Y 軸**
**圓餅圖** - **值**
**熱度圖** - **資料列**和**資料欄**

**若要顯示或隱藏排序圖示**

1. 在**屬性**窗格中，選擇您要格式化的軸。

1. 選擇**顯示排序**。清除此核取方塊可隱藏所選軸的排序圖示。選取此核取方塊以進行顯示。

   當您選擇移除排序圖示時，排序圖示會從軸上移除。移除圖示之前套用至視覺效果的任何排序，都不會從視覺效果中移除。

**注意**  
除了本主題先前列出的圖表類型之外，您還可以顯示或隱藏餅圖、甜甜圈圖、漏斗圖、熱度圖和樹狀圖中的排序圖示。

**若要顯示或隱藏資料縮放**

1. 在**屬性**窗格中，選擇 **X 軸**。

1. 選擇**顯示資料縮放**。清除此核取方塊，即可隱藏資料縮放。選取此核取方塊以進行顯示。

   資料縮放列會自動出現在包含多個資料點的 X 軸圖表上。從左側和右側調整縮放列，以縮放至圖表中的特定資料點。
**注意**  
如果您使用資料縮放列放大或縮小，然後選擇隱藏資料縮放列，則不會保留縮放位置。視覺效果會完全拉遠以包括所有資料點。再次顯示資料縮放會將視覺效果返回到先前的狀態。

**若要顯示或隱藏軸標籤**

1. 在**屬性**窗格中，選擇您要格式化的軸。

1. 選擇**顯示標籤**。清除此核取方塊可隱藏所選軸的軸標籤。選取此核取方塊以進行顯示。

**若要變更標籤大小**

1. 在**屬性**窗格中，選擇您要格式化的軸。

1. 在**標籤大小**中，選擇尺寸。

**若要變更標籤方向**

1. 在**屬性**窗格中，選擇您要格式化的軸。

1. 對於**標籤方向**，請選擇一個方向。

**若要顯示或隱藏網格線**

1. 在**屬性**窗格中，選擇您要格式化的軸。

1. 選擇「**顯示網格線**」。清除該核取方塊可隱藏所選軸的網格線。選取此核取方塊以進行顯示。

# Quick 中視覺效果類型的顏色
<a name="changing-visual-colors"></a>

您可以變更下列圖表類型中一個、部分或所有元素的顏色：
+ 長條圖
+ 甜甜圈圖
+ 量測圖表
+ 熱度圖
+ 折線圖
+ 散佈圖
+ 樹狀結構圖

若要變更長條圖、甜甜圈圖、量測圖表、折線圖和散佈圖上的顏色，請參閱 [變更圖表顏色](#format-colors-on-charts)。

若要變更熱度圖和樹狀圖上的顏色，請參閱 [變更熱度圖和樹狀圖上的顏色](#format-colors-on-heatmaps-and-treemaps)。

## 變更圖表顏色
<a name="format-colors-on-charts"></a>

您可以變更圖表上所有元素使用的圖表顏色，也可以變更個別元素的顏色。您對個別元素設定的顏色優先於圖表顏色。

例如，假設您將圖表色彩設定為綠色。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/color-priority1.png)


所有的長條都會變成綠色 即使您選擇第一個長條，圖表顏色也會套用至所有長條。接著，將 **SMB** 長條的色彩設定為藍色。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/color-priority2.png)


結果，您認為綠色和藍色長條之間需要更多的對比度，因此您將圖表顏色變更為橘色。如果您正在更改圖表顏色，則您選擇從哪個欄打開內容功能表並不重要。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/color-priority3.png)


**SMB** 長條會維持藍色。因為它會直接設定。其餘的長條會變成橘色。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/color-priority4.png)


當您變更已分組元素的顏色時，該元素的顏色會在所有群組中變更。例如叢集長條圖中的長條，在下列範例中，客戶區段會移出 **Y 軸**，並進入 **Group/Color (群組/顏色)** 欄位集。Customer Region (客戶區域) 會新增為 **Y 軸**。圖表色彩會維持橘色，而 SMB 的所有客戶區域會保持藍色。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/color-priority5.png)


如果視覺效果具有展示類別 (維度) 的圖例，您可以按一下圖例中的值來查看可用動作的功能表。例如，假設您的長條圖在 **Color (顏色)** 或 **Group/Color (群組/顏色)** 欄位中有一個欄位。長條圖功能表會顯示您可選擇的動作，您可透過按一下或在長條上按一下滑鼠右鍵來顯示，如下所示：
+ 聚焦或排除視覺元素
+ 變更視覺元素的顏色
+ 向下鑽研到層次結構
+ 從功能表啟動的自訂動作，包括篩選或 URL 動作

以下是使用圖例變更顏色維度的範例。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/visual-elements-legend-color.png)


### 設定視覺效果的新顏色
<a name="change-visual-color"></a>

使用下列程序來變更視覺效果的顏色。

**若要變更視覺效果的顏色**

1. 在分析頁面上，選擇您要修改的視覺效果。

1. 若要變更圖表顏色，請在視覺效果上選擇任何元素，然後選擇 **Chart Color (圖表顏色)**。

   若要選取元素，請執行下列動作：
   +  在長條圖，選擇任何長條。
   +  在折線圖，選擇線條末端。
   +  在散佈圖，選擇元素。欄位必須位於**欄位集**的**群組/顏色**區段中。

1. 選擇您想使用的顏色。您可以從現有的調色盤中選擇顏色，也可以選擇自訂顏色。若要使用自訂顏色，請輸入顔色的十六進位代碼。

   視覺效果上的所有元素會變更為使用此顏色，但先前已個別設定顏色的任何元素除外。在這種情況下，元素顏色優先於圖表顏色。

1. 若要變更視覺效果上單一元素的顏色，請選擇該元素，選擇**顏色 <欄位名稱>**，然後選擇您想使用的顏色。您可以從現有的調色盤中選擇顏色，也可以選擇自訂顏色。若要使用自訂顏色，請輸入顔色的十六進位代碼。

   重複這個步驟，直到在您想要修改的所有元素上都已設定顏色為止。如果要將顏色變更回原來的顏色，請選擇 **Reset to default (重設為預設)**。

### 將視覺效果顏色設回預設值
<a name="reset-visual-color"></a>

使用下列程序，在視覺效果上恢復使用預設顏色。

**若要在視覺效果上返回預設顏色**

1. 在分析頁面上，選擇您要修改的視覺效果。

1. 選擇**圖表顏色**，選擇視覺效果上的任何元素，然後選擇**重設為預設值**。這樣做會將圖表顏色變回該視覺效果類型的預設顏色。

   視覺效果上的所有元素會變更為視覺效果類型的預設顏色，但先前已個別設定顏色的任何元素除外。在這種情況下，元素顏色設定優先於圖表顏色設定。

1. 若要將單一元素的顏色變回預設值，請選擇該元素，選擇**顏色 <欄位名稱>**，然後選擇**重設為預設值**。

   個別元素的預設顏色為圖表顏色 (如果已指定)，否則為視覺效果類型的預設顏色。

## 變更熱度圖和樹狀圖上的顏色
<a name="format-colors-on-heatmaps-and-treemaps"></a>

**若要變更熱度圖或樹狀圖上顯示的顏色**

1. 選擇您要編輯的熱度圖或樹狀圖。

1. 在設定選單中選擇**展開**，然後選擇齒輪圖示以開啟**屬性**面板。

1. 對於**顔色**，選擇您想要使用的設定：

1. 對於**漸層顏色**或**離散顏色**，請選擇顏色條旁的顏色方塊，然後選擇您要使用的顏色。對每個顏色方塊重複此步驟。根據預設，顏色條會保留兩種顏色。

1. 如果您要新增第三種顏色，請選取 **Enable 3 colors** 核取方塊。新的方塊會出現在顏色條的中間。

   您可以輸入數字，以定義兩種主要漸層顏色之間的中點。如果您加入值，則中間的顏色表示您輸入的數字。如果保留此為空白，中間顏色會像漸層中的其他顏色一樣。

1. 如果您要將圖表限制為您選擇的顏色，則請選取**啟用步驟**核取方塊。這樣做會將顏色條上的標籤從**漸層顏色**變更為**離散顏色**。

1. 對於**顏色 Null 值**，請選擇要描述 NULL 值的顏色。此選項僅能在熱度圖上使用。

# 在 Amazon Quick 中使用欄位層級著色
<a name="format-field-colors"></a>

透過欄位層級著色，您可以將特定顏色指派給快速分析或儀表板中所有視覺效果的特定欄位值。顏色是以每個欄位為基礎來指派，以簡化設定顏色的程序，並確保使用相同欄位之所有視覺效果的一致性。例如，假設您是一家貨運公司，想要建立一組視覺效果，以追蹤不同地區的運費。使用欄位層級著色，您可以為每個區域指派不同的顏色，以在分析或儀表板中的所有視覺效果中表示欄位。這樣，帳戶讀者可以快速了解他們正在尋找的欄位顏色，並更輕鬆地找到所需的信息。

快速作者每個欄位最多可設定 50 個以欄位為基礎的顏色。在視覺層級定義的顏色會優先於以欄位為基礎的顏色。這表示，如果作者為視覺效果上的值設定顏色，則該顏色將取代該個別視覺效果的欄位型顏色組態。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/field-coloring.gif)


**若要將欄位層級著色套用至舊版帳戶**

1. 在分析的**欄位**窗格中，選擇要指定顏色的欄位旁邊的省略符號 (三個點)，然後選擇**編輯欄位顔色**。

1. 在出現的**編輯欄位顔色**窗格中，選擇您要指定顏色的值，然後選擇您想要的顏色。您可以將顏色套用至顯示在**欄位值**窗格中的每個值。

1. 完成所需欄位的顏色指定後，請選擇**套用**。

如果要重設欄位的顏色值，請開啟**編輯欄位顔色**窗格，然後選擇要重設之欄位旁邊的「重新整理」圖示。您可以選擇**重設顏色**來重設分析中的所有顏色值。

您可以在**編輯欄位顔色**窗格中選擇**顯示未使用的顔色**，檢視可以設定到新欄位的未使用顏色清單。當您重設欄位的顏色時，捨棄的顏色會新增至**未使用的顏色**清單，並且可以指定給新欄位。

# Quick 中視覺效果類型的條件式格式化
<a name="conditional-formatting-for-visuals"></a>

在某些視覺效果類型中，您可以新增條件式格式設定，以強調顯示部分資料。目前支援的條件式格式設定選項包括變更文字或背景顏色，以及使用符號圖示。您可以使用來自所提供集合中的圖示，也可以改為使用 Unicode 圖示。

下列視覺效果上可使用條件式格式設定：
+ 量測圖表
+ 關鍵績效指標 (KPI)
+ 樞紐分析表
+ 表格

對於資料表和樞紐分析表，您可以為欄位或支援的彙總設定多個條件，以及要套用至目標儲存格的格式選項。對於 KPI 和量測圖表，您可以根據套用至資料集中任何維度的條件來格式化主要值。對於量測圖表，您也可以根據條件格式化電弧的前景顏色。

**在視覺效果上使用條件式格式設定**

1. 在分析頁面，選擇您要格式化的視覺效果。

1. 在視覺效果上，開啟右上角向下圖示上的內容功能表。然後選擇 **Conditional formatting (條件式格式設定)**。

   用於格式化的選項會顯示在左側。選擇下列其中一項：
   + ****對於樞紐分析表**** – 從選擇您想要使用的量值開始。您可以在一或多個欄位上設定條件式格式設定。選取範圍僅限於 **Values (值)** 欄位中的量值。
   + ****對於資料表**** – 從選擇您想要使用的欄位開始。您可以在一或多個欄位上設定條件式格式設定。您也可以選擇將格式套用至整個資料列。格式化整個資料列會新增選項至 **Apply on top (套用在頂端)**，此選項除了套用其他條件新增的格式外，還會套用資料列格式。
   + ****對於 KPI**** – 將格式套用至主要值或進度列或兩者。

1. 針對此程序中的其餘步驟，選擇您要使用的功能。並非所有選項都適用於所有視覺效果。

1. (選用) 選擇 **Add background color (新增背景顏色)** 以設定背景顏色。如果已新增背景顏色，請選擇 **Background (背景)**。
   + **填充類型** – 背景顏色可以是**實心**或**漸層**。如果您選擇使用漸層，會顯示其他顏色選項，讓您選擇漸層梯度的最小值和最大值。最小值預設為最低的值，最大值預設為最高的值。
   + **格式欄位依據** – 套用格式時要使用的欄位。
   + **彙總** – 要使用的彙總 (僅顯示可用的彙總)。
   + **條件** – 要使用的比較運算子，例如「大於」。
   + **值** – 要使用的值。
   + **顏色** – 要使用的顏色。
   + **其他選項：**在資料表和樞紐分析資料表中，您可以從內容選單 (**…**) 中選擇選項來設定要格式化的內容：**值**、**小計**，以及**總計**。

1. (選用) 選擇 **Add text color (新增文字顏色)** 以設定文字顏色。如果已新增文字顏色，請選擇 **Text (文字)**。
   + **格式欄位依據** – 套用格式時要使用的欄位或項目。
   + **彙總** – 要使用的彙總 (僅顯示可用的彙總)。此選項適用於資料表和樞紐分析表。
   + **條件** – 要使用的比較運算子，例如「大於」。
   + **值** – 要使用的值。
   + **顏色** – 要使用的顏色。
   + **其他選項：**在資料表和樞紐分析資料表中，您可以從內容功能表 (**...**) 中選擇選項來設定要格式化的內容：**Values (值)**、**Subtotals (小計)**，以及 **Totals (總計)**。

1. (選用) 選擇 **Add icons (新增圖示)** 以設定圖示或圖示集。如果已新增圖示，請選擇 **Icon (圖示)**。
   + **格式欄位依據** – 套用格式時要使用的欄位或項目。
   + **彙總** – 要使用的彙總 (僅顯示可用的彙總)。此選項適用於資料表和樞紐分析表。
   + **圖示集** – 圖示集會套用至**格式欄位依據**中的欄位上。此選項適用於資料表和樞紐分析表。
   + **反轉顏色** – 反轉資料表和樞紐分析表的圖示顏色。
   + **自訂條件** – 為資料表和樞紐分析表提供更多圖示選項。
   + **條件** – 要使用的比較運算子。
   + **值** – 要使用的值。
   + **圖示** – 要使用的圖示。若要選擇圖示集，請使用 **Icon (圖示)** 符號以選擇要使用的圖示。從提供的圖示集中選擇。在某些情況下，您可以新增自己的圖示。若要使用您自己的圖示，請選擇**使用自訂 Unicode 圖示**。貼上您要用作圖示的 Unicode 字符。選擇 **Apply (套用)** 以儲存，或選擇 **Cancel (取消)** 以結束圖示設定。
   + **顏色** – 要使用的顏色。
   + **僅顯示圖示** – 以資料表和樞紐分析表的圖示取代值。
   + **其他選項：**
     + 在資料表和樞紐分析資料表中，您可以從內容功能表 (**...**) 中選擇選項來設定要格式化的內容：**Values (值)**、**Subtotals (小計)**，以及 **Totals (總計)**。
     + 在樞紐分析表中，啟用 **Custom conditions (自訂條件)** 會啟動您可以保留、新增或使用自己的設定覆寫的預設條件式格式設定。

1. (選用) 選擇 **Add foreground color (新增前景色)** 以設定 KPI 進度列的前景顏色。如果已新增前景顏色，請選擇 **Foreground (前景)**。
   + **格式欄位依據** – 套用格式時要使用的欄位。
   + **條件** – 要使用的比較運算子。
   + **值** – 要使用的值。
   + **顏色** – 要使用的顏色。

1. 當您完成設定條件式格式設定時，請選擇下列一或多個選項：
   + 若要儲存工作，請選擇 **Apply (套用)**。
   + 若要取消選取並返回上一個面板，請選擇 **Cancel (取消)**。
   + 若要關閉設定面板，請選擇 **Close (關閉)**。
   + 若要重設此面板上的所有設定，請選擇 **Clear (清除)**。

# KPI 選項
<a name="KPI-options"></a>

您可以在 Amazon Quick 中自訂 KPIs，以符合您的業務需求。您可以新增關聯式迷你圖或進度列、指派主要和次要值，以及將條件式格式新增至您的 KPI。

若要以快速格式化 KPI，請導覽至您要變更的 KPI，然後選擇**格式化視覺**效果圖示以開啟**格式化視覺**效果。

請使用下列程序來執行 KPI 的格式化作業。

## 將視覺效果新增至 KPI
<a name="KPI-add-visual"></a>

您可以選擇將區域火花、火花或進度列新增至 Quick 中的任何 KPI。將視覺效果新增至 KPI，可為正在檢視 KPI 資料的讀者提供視覺上下文。使用下列程序來將視覺效果新增至 KPI。

**若要將視覺效果新增至 KPI**

1. 導覽至您要變更的 KPI，並開啟「格式化視覺化效果」選單。

1. 在**屬性**選單中，選擇**視覺效果**方塊以在 KPI 圖表上顯示視覺效果。

1. (選用) 開啟**視覺效果**下拉式清單，然後選擇要在 KPI 上顯示的視覺效果類型。您可以選擇顯示區域迷你圖、迷你圖或進度列。若要顯示迷你圖，請確保您的 KPI 在**趨勢**欄位集中有值。**區域迷你圖**是預設值。

1. (選用) 若要變更迷你圖的顏色，請選擇**視覺效果**下拉清單左側的顏色圖示，然後選擇您要的顏色。進度列不支援顏色格式。

1. (選用) 選擇**新增工具提示**，將工具提示新增至 KPI 視覺效果。

## 自訂主要和次要值
<a name="KPI-customize-values"></a>

使用**格式化視覺化效果**選單來自訂字型、顏色，以及選擇要顯示的主要值。您也可以選擇顯示次要值。

**若要自訂 KPI 的主要與次要值**

1. 導覽至您要變更的 KPI，開啟**格式化視覺化效果**選單，然後導覽至 **KPI** 區段。

1. 對於**主要值**，請使用**字型**下拉式清單來選擇您想要的字型大小。預設值為**自動**。

1. (選用) 若要變更主要值字型的顔色，請選擇**字型**下拉清單附近的顏色圖示，然後選擇您要的顏色。

1. 對於**顯示主要數值**，您可以選擇顯示主要值的實際值或比較值。

1. 若要新增次要值，請選擇**次要值**。

   1. (選用) 使用**字型**下拉式清單來選擇您想要的字型大小。預設值為**超大型**。

   1. (選用) 若要變更次要值字型的顔色，請選擇**字型**下拉清單附近的顏色圖示，然後選擇您要的顏色。

## KPI 的條件式格式選項
<a name="KPI-conditional-formatting"></a>

自動設定 KPI 的條件式格式，以供比較值使用。依預設，正值以綠色表示，負值則以紅色表示。您可以從**屬性**窗格中自訂這些顏色值的顏色值。

**若要變更正值和負值的顏色**

1. 在**屬性**窗格中，開啟**條件格式**部分，然後選擇要變更的比較值。

1. 若要變更正值的顏色，導覽至 **Condition \$11**，選擇**顏色**圖示，然後選擇您要的顏色。

1. 若要變更負值的顏色，導覽至 **Condition \$12**，選擇**顏色**圖示，然後選擇您要的顏色。

1. 完成所需的變更後，請選擇**套用**。

您還可以在**條件格式**選單中為**實際值**新增文字顏色和圖示。若要將文字顏色或圖示新增至實際值，請選擇**新增文字顏色**或**新增圖示**來設定新值。

# Quick 中視覺效果類型的標籤
<a name="customizing-visual-labels"></a>

使用下列程序來自訂、顯示或隱藏視覺效果的標籤。

**若要自訂、顯示或隱藏視覺效果的標籤**

1. 在分析頁面，選擇您要格式化的視覺效果。您可以直接在視覺效果上選擇標籤，並選擇 **Rename (重新命名)**，以變更標籤。若要恢復為預設名稱，請刪除您輸入的文字。

1. 若要查看更多選項，請從視覺效果右上角的向下圖示中選擇視覺效果選單，然後選擇**格式化視覺**效果圖示。

   對於樞紐分析表，您可以重新標記資料列名稱、資料欄名稱和值名稱。此外，在 **Styling (樣式)** 下，您可以選擇隱藏資料欄標籤或指標標籤 (僅限單一指標)。

   您可以多次將相同的值新增到相同的視覺效果。如此便能顯示已套用了不同的彙總計算或資料表計算的同一個值。預設情況下，所有欄位都將顯示同樣的標籤。您可以使用**屬性**面板來編輯名稱，可選擇右上角的 **V** 形圖示來開啟該面板。

1. 在**屬性**窗格中啟用或停用**顯示標題**。此選項會移除軸標題。

1. 選擇窗格右上角的 **X** 圖示關閉**屬性**窗格。

# Quick 中視覺效果類型的資料標籤
<a name="customizing-visual-data-labels"></a>

若要在視覺效果上自訂資料標記，您可以使用**屬性**窗格來顯示資料標記，然後使用設定來設定標記。長條圖、折線圖、組合圖、區域圖、散佈圖、甜甜圈圖、盒狀圖、瀑布圖、熱度圖、長條圖、長條圖、漏斗圖、桑基圖、量測計、雷達圖和圓餅圖支援資料標籤自訂。

您可以自訂下列選項：
+ 位置，以決定標籤相對於資料點的位置 (適用於長條圖、組合圖和折線圖)：
  + 對於垂直長條圖，您可以自訂以設定位置：
    + 長條上方
    + 長條內部
    + 長條底端
    + 長條頂端
  + 對於水平長條圖，您可以自訂以設定位置：
    + 長條右側
    + 長條內部
  + 對於折線圖，您可以自訂以設定位置：
    + 折線上方
    + 折線上資料點左側或右側
    + 折線下方
  + 對於散佈圖，您可以自訂以設定位置：
    + 資料點上方
    + 資料點左側或右側
    + 資料點下方
+ 字體大小和顏色 (適用於長條圖、組合圖、折線圖、散佈圖和圓餅圖)
+ 標籤模式，以決定如何標示資料 (適用於長條圖、組合圖、折線圖和散佈圖)：
  + 對於長條圖、組合圖和散佈圖，您可以標示：
    + 全部 
    + 依群組或顏色
  + 對於折線圖，有以下標籤選項可用：
    + 全部 
    + 依群組或顏色
    + 線條末端
    + 僅最小值或最大值
    + 最小值和最大值
  + 對於餅圖，有以下標籤選項可用：
    + 顯示類別 
    + 顯示指標
    + 選擇將指標標籤顯示為值、百分比或兩者 
+ 群組選擇 (當標籤模式是「依群組/顏色」時，適用於長條和折線)
+ 允許標籤重疊 (適用於長條和折線)，適用於較少的資料點
+ 對於直條圖、組合圖和折線圖，過長的標籤依預設會傾斜。您可以在 **X-axis (X 軸)** 設定下設定傾斜角度。

**注意**  
如果您將多個度量新增到一個軸，則資料標籤將僅顯示第一個度量的格式。

**若要設定資料標籤**

1. 在分析頁面，選擇您要格式化的視覺效果。

1. 從視覺效果右上角的向下圖示中選擇視覺效果功能表，然後選擇**格式化視覺**效果圖示。

1. 在**屬性**窗格中選擇**資料標籤**。

1. 啟用 **Show data labels (顯示資料標籤)** 來顯示和自訂標籤。停用此選項以隱藏資料標籤。

1. 選擇您想要使用的設定。對每個圖表類型提供的設定稍有不同。若要查看所有可用的選項，請參閱此程序之前的清單。

   您可以在視覺效果上立即檢視各項變更的效果。

1. 若要修改資料標籤字型設定，請調整下列屬性：
   + **字型系列**
   + **文字大小**
   + **樣式** （粗體、斜體）
   + **Color (顏色)**

1. 選擇窗格右上角的 X 圖示關閉**屬性**窗格。

# 根據 Quick 中的語言設定格式化視覺化數值資料
<a name="customizing-visual-language-preferences"></a>

在 Amazon Quick 中，您可以選擇您的數值在視覺效果中的顯示方式，使其與您選擇的區域語言保持一致。

身為快速作者，您可以選擇最適合您的受眾的語言格式。Amazon Quick 會根據您選擇檢視 Quick in 的語言，在分析層級設定數值資料語言。您可以變更數字、貨幣和日期的格式。您可以在右上角的快速**使用者**選單**的語言**下拉式清單中變更快速語言設定。您可以變更工作表中每個視覺效果皆有之欄位的語言格式，也可以在個別視覺效果層級變更語言格式。

**若要變更分析中所有視覺效果的數值語言格式**

1. 在您要變更之分析的**視覺效果**窗格中，選擇您要變更之欄位旁邊的其他動作 (三個點) 圖示。從出現的選單中，開啟**格式**下拉式清單，然後選擇 **More formatting options**。

1. 在左側顯示的**格式資料**窗格中，選擇**套用語言格式**。

   您可以重新開啟**格式資料**選單並選擇**重設為預設值**，以重設欄位的預設語言格式。預設語言格式為美式英文。

**若要變更分析中單一視覺效果的數值語言格式**

1. 在分析頁面上，選擇您要修改的視覺效果。

1. 使用下列其中一個選項導覽至**格式資料**窗格：
   + 在包含您要變更之資料的視覺效果上，選取您要變更的欄位，開啟**格式**下拉式清單，然後選擇**更多格式化選項**。  
![\[在視覺效果中存取格式資料窗格。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/format-visual-numeric-data-language-3.png)
   + 在分析的**欄位集**區段中，開啟您要變更之欄位旁邊的下拉式清單。開啟**格式**選單，然後選擇**更多格式化選項**。  
![\[從欄位集存取格式資料窗格。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/format-visual-numeric-data-language-6.png)

1. 在顯示的**格式資料**窗格中，選擇**套用語言格式**。

   您可以重新開啟**格式資料**選單並選擇**重設為預設值**，以重設視覺效果的預設語言格式。預設語言格式為美式英文。

# Quick 中視覺效果類型的圖例
<a name="customizing-visual-legend"></a>

*視覺效果圖例*會將視覺化元素與顏色對應，以協助您識別其所代表的意義。根據預設，視覺效果圖例顯示在視覺效果右邊。您可以選擇隱藏或顯示視覺效果圖例，以及格式化圖例標題和位置。您也可以自訂圖例標題和項目的字型設定。

**若要顯示或隱藏視覺效果圖例**

1. 在 登入 Quick[https://quicksight.aws.amazon.com/](https://quicksight.aws.amazon.com/)。

1. 在分析頁面，選擇您要格式化的視覺效果。

1. 選擇您要格式化的視覺效果，然後選擇**屬性**圖示以開啟屬性窗格。

1. 將**圖例**切換為開啟以顯示視覺效果的圖例。顯示時，圖例會依字母順序顯示值。若要隱藏圖例，請將**圖例**關閉切換為關閉。

**若要自訂視覺效果圖例**

1. 開啟「屬性」窗格並展開**圖例**區段。

1. 使用**位置**下拉式清單來自訂視覺效果中圖例的位置。

1. 在**圖例標題**欄位中，輸入圖例的自訂名稱，並執行下列所有或部分動作：

   1. (選用) 若要變更圖例標題的顏色，請選擇圖例標題下方的顏色樣本，然後選擇所需的圖例標題顏色。

   1. (選用) 若要變更圖例標題的字型或字型大小，請開啟**字型**或**字型大小**下拉式清單，然後選擇所需的字型或字型大小。

   1. (選用) 若要對圖例標題加上粗體、斜體或底線，請從樣式列中選擇適當的圖示。

1. 對於**圖例項目**，請執行下列所有或部分動作：

   1. (選用) 若要變更圖例項目字型的顏色，請選擇顏色樣本，然後選擇所需的圖例標題顏色。

   1. (選用) 若要變更圖例項目的字型或字型大小，請開啟**字型**或**字型大小**下拉式清單，然後選擇所需的字型或字型大小。

   1. (選用) 若要對圖例項目字型加上粗體、斜體或底線，請從樣式列中選擇適當的圖示。

1. 選擇右上角的 **X** 圖示以關閉**屬性**窗格。

# Quick 中折線圖上的折線和標記樣式
<a name="line-and-marker-styling"></a>

在快速折線圖中，您有多個選項來強調您希望讀者專注於什麼：顏色、折線樣式和標記。您可以一起或單獨使用這些選項，以協助讀者在不同情況下更快地了解您的折線圖。例如，如果某些讀者看不到顏色差異 (可能是因為色盲或單色列印)，您可以使用線條樣式來區分圖表中的多個線條。

在其他情況下，您可以使用階梯線引起對資料突然變更或資料變更之間間隔的注意。例如，假設您構建了一張圖表，顯示美國郵票價格的變化，並且您想強調價格隨著時間的推移而增長的幅度。您可以使用階梯線，該階梯線在資料點之間保持平坦，直到發生下一次價格變更為止。使用階梯線表示價格突然上漲的資料故事對讀者來說更清楚易懂。如果您想展示一個隨著時間的推移逐漸變化的故事，則更有可能使用平滑的斜坡來設定線條樣式。

**若要自訂視覺效果的樣式**

1. 開啟分析，然後選擇要格式化的圖表。

1. 在您要格式化的視覺效果的右上角，選取**格式化視覺化效果**，以鉛筆圖示表示。

1. 在左側，選擇**資料序列**。

1. 請選擇下列其中一個選項：
   + **基本樣式** – 編輯圖表上所有線條和標記的樣式
   + **選擇要編輯樣式的序列** – 編輯您從清單中選擇的欄位的樣式

   根據視覺效果中的相容欄位數量，會顯示不同的選項。

1. 切換**線條**以開啟或關閉線條樣式設定。

   您可以自訂下列線條選項：
   + 線條的粗細。
   + 線條的樣式：實線、虛線或點線。
   + 線條的顏色。
   + 線的類型：「線性」、「平滑式」或「階梯式」。

1. 切換**標記**以開啟或關閉標記樣式。

   您可以自訂下列標記選項：
   + 標記線的粗細。
   + 標記的樣式：圓形、三角形、正方形、菱形等。
   + 標記的顏色。

1. 對於**軸**，選擇要在左側還是右側顯示軸。

1. 系統會自動儲存您的變更。

1. (選用) 若要復原自訂，請選擇以下一個或多個選項：
   +  若要復原某項變更，請按一下左上角的復原箭頭。視需要重複執行。還有一個重做箭頭。
   +  若要重設資料序列的基本型式，請選取**基本樣式**，然後按一下**重設為預設值**。
   +  若要從**已編輯樣式的序列**中列出的資料序列中移除所有樣式設定，請選取欄位，然後按一下**移除樣式**。

# Quick 中視覺效果類型的遺失資料
<a name="customizing-missing-data-controls"></a>

您可以自訂折線圖和面積圖中缺少的資料點的視覺化方式。您可以選擇讓遺失的資料點以下列格式顯示：
+ *虛線*：缺少資料點時斷開的脫離線。此為預設遺失資料格式。
+ *連續線條*：透過跳過遺失的資料點並將線連接至序列中下一個可用的資料點來顯示連續線條。若要顯示連續行，應該取消勾選 **X 軸**窗格上的**顯示日期間隔**方塊。
+ *顯示為零*：將遺失資料點的值設定為零。

**若要自訂視覺效果的遺失資料設定**

1. 在分析頁面，選擇您要格式化的視覺效果。

1. 選擇視覺效果右上角的**格式化視覺化效果**圖示，以存取**格式化視覺化效果**選單。

1. 開啟「格式化視覺化效果」選單的 **Y 軸**窗格，並瀏覽至**遺失資料**區段。

1. 選取您想要的遺失資料格式。

# Quick 中視覺效果類型的參考線
<a name="reference-lines"></a>

*參考線*是視覺效果上的視覺標記，類似於尺規線。您通常使用參考線來表示需要與資料一起顯示的值。您可以使用參考線來傳達值的閾值或限制。參考線不是用於建立圖表的資料的一部分。而是根據您輸入的值或您在圖表使用的資料集中識別的欄位而定。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/formatting-reference-lines-example.png)


快速支援下列參考線：
+  長條圖
+  折線圖
+  組合圖

您可以在設計分析時建立、變更和刪除參考線。您可以分別自訂線條樣式、標籤字型和顏色。您可以將數值顯示為數字、貨幣或百分比。您也可以使用與在欄位集中自訂欄位相同的方式自訂值的數值格式。

參考線有兩個類型：
+ *常數線*會顯示在以您在格式設定中指定的值為基礎的位置。此值不需要與任何欄位相關聯。您可以自訂該線的格式。
+ *計算線*會顯示在以函數結果為基礎的值的位置。在組態期間，您可以指定要使用的量值 (指標) 以及要套用的彙總。這些是您可以在欄位集中套用的相同彙總。然後，您需要提供一個彙總，以套用至參考線的欄位計算，例如平均值、最小值、最大值或百分位數。欄位必須位於圖表所使用的資料集中，但不需要顯示在圖表的欄位集中。

100% 堆疊圖表不支援計算的參考線。

**若要加入或編輯參考線 (控制台)**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟要變更的分析。

1. 選擇要變更的視覺效果，然後開啟**屬性**選單。

1. 在開啟的**屬性**窗格中，開啟**參考行**下拉式清單，然後選擇**新增行**。

1. **新增參考行**選單隨即開啟。使用此選單來設定新的參考行。以下清單說明了可以設定的所有參考行屬性。
   + **資料** 
     + **類型** – 您要使用的參考線類型。請選擇下列其中一個選項：
       + 若要根據您輸入的單一值建立常數線，請選擇**常數線**。
       + 若要根據欄位建立計算線，請選擇**計算線**。
     + **值** – (僅適用於常數線) 您要使用的值。這會成為直線在視覺效果上的位置。它會立即出現，因此您可以嘗試設定。
     + **資料欄** – (僅適用於計算線) 要用於參考線的資料欄。
     + **彙總為** (資料欄) – (僅適用於計算線) 您要套用至所選資料欄的彙總。
     + **計算** – (僅適用於計算線) 您要套用至彙總的計算。
     + **百分位數值** – (僅當您將**計算**設定為**百分位數**時) 輸入介於 1 到 100 之間的數字。
     + **圖表類型** – (針對組合圖) 選擇**長條圖**或**折線圖**。
   + **線條樣式** 
     + **模式** – 用於線條的模式。有效的選項包括**虛線**、**點線**和**實線**。
     + **顏色** – 用於線條的顏色。
   + **標籤**
     + **類型** – 要顯示的標籤類型。有效選項包括**僅值**、**自訂文字**、**自訂文字和值**、**無標籤**。如果您選擇包含自訂文字的選項，請輸入您要在線上顯示的標簽文字。
     + **輸入自訂文字** (文字方塊) - (僅當您將**類型**設定為**自訂文字和值**時) 選擇值相對於標籤的顯示位置。有效選項為**左**或**右**。
     + **位置** – 標籤相對於線的位置。有效選項包括下列選項的組合：左、中、右、上和下。
     + **值格式** – 用於值的格式。選擇下列其中一項：
       + **與值相同** – 使用已在視覺效果中為此欄位選取的格式。
       + **顯示為** – 從可用選項中選擇，例如數字、貨幣或百分比。
       + **格式** – 從可用的格式設定選項中選擇。
     + **字型大小** – 用於標籤文字的字體大小。
     + **顏色** – 用於標籤文字的顏色。

1. 選擇**儲存**以儲存您的選項。

**若要列示既有的參考線**

1. 選擇要變更的視覺效果，然後開啟**屬性**窗格。

1. 在**屬性**窗格中開啟**參考行**下拉式清單，然後選擇要變更之行旁邊的省略符號 (三個點)。

1. 選擇**編輯**。

1. **新增參考行**選單隨即開啟。使用此選單對參考行進行變更。完成後，請選擇**完成**。

**若要停用參考線**

1. 選擇要變更的視覺效果，然後開啟**屬性**窗格。

1. 在**屬性**窗格中開啟**參考行**下拉式清單，然後選擇要變更之行旁邊的省略符號 (三個點)。

1. 選擇**停用**。

**若要刪除參考線**

1. 選擇要變更的視覺效果，然後開啟**屬性**窗格。

1. 在**屬性**窗格中開啟**參考行**下拉式清單，然後選擇要變更之行旁邊的省略符號 (三個點)。

1. 選擇**刪除**。

# 在 Quick 中格式化雷達圖
<a name="format-radar-chart"></a>

您可以在 Amazon Quick 中自訂雷達圖，以您想要的方式排列資料。您可以自訂雷達圖的序列樣式、開始角度、填充區域和網格形狀。

**若要設定雷達圖的序列樣式**

1. 選擇要變更的雷達圖視覺效果，然後選擇視覺效果右上角的**格式化視覺化效果**圖示。

1. 在左側的**屬性**窗格中，開啟**雷達圖**下拉式清單。

1. 在**序列樣式**下，選擇您想要的樣式。您可以選擇以下樣式：
   + **線**。選取時，會為由資料建立的多邊形加上外框。
   + **區域**。選取時，會填充由資料建立的多邊形。

   預設選取的值為**線**。

**若要選擇雷達圖的起始角**

1. 選擇要變更的雷達圖視覺效果，然後選擇視覺效果右上角的**格式化視覺化效果**圖示。

1. 在左側的**屬性**窗格中，開啟**雷達圖**下拉式清單。

1. 在**起始角度**下，輸入所需的起始角度值。預設值為 90 度。

**若要設定雷達圖的填充區域**

1. 選擇要變更的雷達圖視覺效果，然後選擇視覺效果右上角的**格式化視覺化效果**圖示。

1. 在左側的**屬性**窗格中，開啟**軸**下拉式清單。

1. 選取**填滿網格線**核取方塊。

1. (選用) 選取偶數和奇數編號網格線的顏色。
   + 選擇出現的**偶數顏色**圖示，然後選擇偶數編號的網格線要使用的顏色。此值的預設顏色為白色。
   + 選擇出現的**奇數顏色**圖示，然後選擇奇數編號的網格線要使用的顏色。此值的預設顏色為白色。

**若要選擇雷達圖的網格形狀**

1. 選擇要變更的雷達圖視覺效果，然後選擇視覺效果右上角的**格式化視覺化效果**圖示。

1. 在左側的**屬性**窗格中，開啟**雷達圖**下拉式清單。

1. 在**網格形狀**下，選擇您想要雷達圖網格使用的形狀。您可以在**多邊形**和**圓形**之間進行選擇。

# 在 Quick 中根據視覺效果類型進行範圍和擴展
<a name="changing-visual-scale-axis-range"></a>

若要變更視覺效果上顯示的值的量程，您可以使用**屬性**窗格設定視覺效果的一個或兩個軸的範圍。此選項可用於直條圖、組合圖、折線圖表和散佈圖的數值軸。

在預設情況下，軸範圍從 0 開始，結束於所顯示的度量的最高值。對於分組依據軸，您可以在視覺效果上使用資料縮放工具，以動態調整刻度。

**若要設定視覺效果的軸範圍**

1. 在分析頁面，選擇您要格式化的視覺效果。

1. 選擇視覺效果右上角的控制功能表，然後選擇齒輪圖示。

1. 在**屬性**窗格中，根據您要自訂何種視覺效果而定，選擇 **X 軸**或 **Y 軸**。如果是水平長條圖，可使用 **X-Axis (X 軸)** 區段，如果是垂直長條圖和折線圖，可使用 **Y-Axis (Y 軸)** 區段，如果是散佈圖，則兩個軸都可用。在組合圖，請改用 **Bars (長條)** 和 **Lines (折線)**。

1. 在方塊中輸入新的名稱來重新命名軸。若要恢復為預設名稱，請刪除您輸入的文字。

1. 選擇以下其中一個選項，以設定軸的範圍：
   + 選擇 **Auto (starting at 0) (自動 (從 0 開始))**，讓範圍從 0 開始，結束於接近所顯示的度量的最高值。
   + 選擇 **Auto (based on data range) (自動 (以日期範圍為基礎))**，讓範圍從所顯示的度量的最低值開始，結束於接近所顯示的度量的最高值。
   + 選擇**自訂範圍**，讓範圍以您指定的值開始和結束。

     如果您選擇**自訂範圍**，請在該區段的欄位中輸入開始值和結束值。一般而言，您會使用整數當作範圍值。對於 100% 堆疊長條圖，請使用小數值來表示您要的百分比。例如，如果您希望範圍是 0-30%，而不是 0-100%，請輸入 0 作為開始值，輸入 0.3 作為結束值。

1. 針對 **Scale (刻度)**，預設為線性刻度。若要顯示對數刻度 (也稱為 log 刻度)，請啟用對數選項。快速根據軸中的值範圍選擇要顯示的軸標籤。
   + 在線性刻度上，軸標籤的間距是平均分布的，以顯示它們之間的算術差異。標籤顯示的數字組合會像 \$11000、2000、3000...\$1 或 \$10、5000 萬、1 億...\$1 而不會是 \$11 萬、100 萬、1億…\$1。

     在下列情況下使用 *線性刻度*：
     + 顯示在圖表上的所有數字都在相同的量級。
     + 您希望軸標籤均勻分隔。
     + 軸值具有類似的位數，例如 100、200、300 等。
     + 數字之間的變化速度相對緩慢和穩定，換句話說，您的趨勢線永遠不會變成垂直。

     範例：
     + 同一國家不同區域的利潤
     + 製造某項目所產生的費用
   + 在*對數刻度*上，軸值之間有間距以顯示量級，作為比較的一種方式。Log 刻度通常用來顯示非常大範圍的值或百分比，或顯示指數成長。

     在下列情況下使用對數刻度：
     + 顯示在圖表上的數字並非在相同的量級。
     + 您希望軸標籤彈性間隔，以反映該軸中的廣泛值。這表示軸值可能具有不同的位數，例如 10、100、1000 等。這也可能代表軸標籤間距不均勻。
     + 數字之間的變化速率呈指數增長或太大，無法以有意義的方式顯示。
     + 圖表的客戶瞭解如何解譯 log 刻度上的資料。
     + 圖表會顯示成長速度越來越快的值。在刻度上移動給定距離，代表數字已乘以另一個數字。

     範例：
     + 長時間範圍內的高收益股票價格
     + 廣泛流行病感染率的增長

1. 若要自訂軸標籤上顯示的值，請輸入 1 和 50 之間的整數。

1. 對於組合圖，請選擇 **Single Y Axis (單一 Y 軸)**，將長條和折線的 Y 軸同步到單一軸。

1. 選擇窗格右上角的 **X** 圖示關閉**屬性**窗格。

# 小型倍數軸選項
<a name="small-multiples-options"></a>

您可以為小型倍數視覺效果的每個單獨的面板配置 x 和 y 軸。您可以沿著獨立的 x 軸或獨立的 y 軸對資料進行分組。您還可以將 x 和 y 軸放置在圖內部或外部，以提高資料的可讀性。

對於使用獨立 x 軸的小型倍數視覺效果，軸上只會顯示與每個面板相關的值。例如，假設您有一個小型倍數視覺效果，該視覺效果使用一個面板來代表美國的每個區域。使用獨立的 x 軸，每個面板只會顯示面板所代表區域中的狀態，並隱藏面板區域外的狀態。

對於使用獨立 y 軸的小型倍數視覺效果，每個面板都會使用自己的 y 軸刻度，該刻度由其包含的資料範圍決定。依預設，資料標籤顯示在面板的內部。

**若要為小型倍數視覺效果設定獨立軸**

1. 選取您要變更的小型倍數視覺效果，然後開啟**格式化視覺化效果**選單。

1. 在顯示的**屬性**窗格中，開啟**倍數選項**選單。

1. 對於 **X 軸**，從下拉式清單中選擇**獨立**。

   或者，對於 **Y 軸**，從下拉式清單中選擇**獨立**。

您可以從 **X 軸**或 **Y 軸**下拉式選單中選擇**共用**來還原變更。

您還可以在小型倍數視覺效果中配置所有面板的 x 和 y 軸的標籤位置。您可以選擇在面板內部或外部顯示軸標籤。

**為小型倍數視覺效果配置軸標籤位置**

1. 選取您要變更的小型倍數視覺效果，然後開啟**格式化視覺化效果**選單。

1. 在顯示的**屬性**窗格中，開啟**倍數選項**選單。

1. 對於 **X 軸標籤**，請從下拉式清單中選擇**內部**或**外部**。

   或者，對於 **Y 軸標籤**，請從下拉式清單中選擇**內部**或**外部**。

# Quick 中視覺效果類型的標題和字幕
<a name="customizing-a-visual-title"></a>

在快速中，您可以格式化視覺效果標題和字幕，以滿足業務需求。Quick 為標題和字幕提供豐富的文字格式，並能夠在標題中新增超連結和參數。您可以在「屬性」窗格中編輯標題，或是在視覺效果中按兩下標題或副標題來編輯標題或副標題。

依照下列程序來自訂視覺效果的標題和副標題顯示方式。根據預設會顯示視覺效果標題。建立字幕後，依預設也會顯示字幕。

1. 在 登入 Quick[https://quicksight.aws.amazon.com/](https://quicksight.aws.amazon.com/)。

1. 開啟您要更新的分析。

1. 在分析頁面，選擇您要格式化的視覺效果。

1. 在視覺效果右側，選擇**屬性**圖示。

1. 在開啟的**屬性**窗格中，選擇**顯示設定**索引標籤。

1. 若要編輯視覺效果的標題或副標題，請選擇**編輯標題**或**編輯副標題**旁的畫筆圖示。您也可以選擇**編輯標題**或**編輯副標題**旁邊的眼球圖示來隱藏標題或副標題，如下圖所示。

1. 在開啟的**編輯標題**或**編輯副標題**快顯視窗中，您可以使用下列選項進行所需的更新：
   + 若要輸入自訂標題或字幕，請在編輯器中輸入標題或字幕文字。標題長度上限為 120 個字元，包括空格。字幕長度上限為 500 個字元。
   + 若要變更字型類型，請從左側的清單中選擇。
   + 若要變更字型大小，請從右側的清單中選擇。
   + 若要變更字型粗細和斜體，或是加上底線或刪除線文字，請選擇粗體、斜體、底線或刪除線圖示。
   + 若要變更字型顏色，請選擇顏色 (Abc) 圖示，然後挑選顏色。您也可以輸入十六進位數字或 RGB 值。
   + 若要新增無順序清單，請選擇「無順序清單」圖示。
   + 若要變更文字的對齊方式，請選擇「靠左」、「置中」或「靠右對齊」圖示。
   + 若要將參數新增至標題或字幕，請從右側**參數**下方的清單中選擇現有參數。如需有關建立參數方法的詳細資訊，請參閱 [在 Amazon Quick 中設定參數](parameters-set-up.md)。
   + 若要新增超連結，請反白您要連結的文字，選擇超連結圖示，然後從下列選項中選擇：
     + 在**輸入連結**中，輸入您要連結的 URL。

       選擇右側的 \$1 圖示，將現有的參數、函數或運算新增至 URL。
     + 若要編輯顯示文字，請在**顯示文字**中輸入文字。
     + 若要在與 Quick 相同的瀏覽器索引標籤中開啟超連結，請選取**相同的索引標籤**。
     + 若要在新的瀏覽器索引標籤中開啟超連結，請選取**新索引標籤**。
     + 若要刪除超連結，請選擇左下角的刪除圖示。

     完成設定超連結後，請選擇**儲存**。

1. 完成時，請選擇 **Save (儲存)**。

1. 在**替代文字**欄位中，輸入您想要用於視覺效果的替代文字。

1. 完成後，請關閉屬性窗格。

# Quick 中視覺效果類型的工具提示
<a name="customizing-visual-tooltips"></a>

當您將游標暫留在快速視覺效果中的任何圖形元素上時，會出現工具提示，其中包含該特定元素的相關資訊。例如，當您將游標停留在折線圖中的日期上時，會出現一個工具提示，其中包含有關這些日期的資訊。依預設，「欄位」中的欄位可以很好地確定工具提示中顯示的信息。工具提示最多可顯示 10 個欄位。

您可以為檢視者提供有關視覺效果中資料的其他資訊，自訂檢視者可以看到的內容。您甚至可以阻止當檢視者將游標停留在元素上時出現工具提示。若要這樣做，您可以自訂該視覺效果的工具提示。

## 在視覺效果中自訂工具提示
<a name="customizing-visual-tooltips-customize"></a>

使用以下程序自訂視覺效果中的工具提示。

**若要自訂視覺效果中的工具提示**

1. 在分析頁面，選擇您要格式化的視覺效果。

1. 在視覺效果右上角的選單中，選取**格式化視覺化效果**圖示。

1. 在開啟的**屬性**窗格中，選擇**工具提示**。

1. 在**類型**中選擇**詳細工具提示**。新的選項集隨即出現。

**若要在工具提示中顯示或隱藏標題**
+ 選擇**使用主值作為標題**。

  清除選項會在工具提示中隱藏標題。選取此選項會將主要欄位值顯示為工具提示中的標題。

**若要顯示或隱藏工具提示中欄位的彙總**
+ 選擇**顯示彙總**。

  清除選項會隱藏工具提示中欄位的彙總。選取選項會顯示工具提示中欄位的彙總。

**若要將欄位加入至工具提示**

1. 選擇**新增欄位**。

1. 在開啟的**新增欄位到工具提示**頁面中，選擇**選取欄位**，然後從清單中選取欄位。

   您最多可以將 10 個欄位新增至工具提示。

1. (選用) 在**標籤**中，輸入欄位的標籤。此選項會為工具提示中的欄位建立自訂標籤。

1. (選用) 根據您新增維度還是量值，選擇彙總在工具提示中顯示的方式。如果您未選取選項，Quick 會使用預設彙總。

   如果將量值新增至工具提示，則可以選取要如何彙總欄位。若要這樣做，請選擇**選取彙總**，然後從清單中選取彙總。如需 Quick 中彙總類型的詳細資訊，請參閱 [變更欄位彙總](changing-field-aggregation.md)。

1. 選擇**儲存**。

   新欄位會新增至工具提示中的欄位清單。

**若要從工具提示中移除欄位**
+ 在**欄位**清單下，選取要移除之欄位的欄位選單 (三個點)，然後選擇**隱藏**。

**若要重新排列工具提示中欄位的順序**
+ 在**欄位**清單下，選取欄位的欄位選單 (三個點)，然後選擇**上移**或**下移**。

**若要自訂工具提示中欄位的標籤**

1. 選取您要自訂之欄位的欄位選單 (三個點)，然後選擇**編輯**。

1. 在開啟的**編輯工具提示欄位**頁面中，對於**標籤**，輸入您要顯示在工具提示中的標籤。

1. 選擇**儲存**。

## 在快速中使用工作表工具提示
<a name="customizing-visual-tooltips-sheet"></a>

工作表工具提示透過提供豐富的內容來轉換瀏覽者探索資料的方式，而不會中斷其分析流程。檢視器可以立即存取詳細明細、趨勢和支援資訊，讓儀表板更直覺，並減少對多個工作表的需求，而不是從視覺效果或開啟單獨的工作表導覽。

工作表工具提示僅適用於互動式工作表。分頁報告不支援它們。您可以將工具提示工作表複製到另一個工具提示工作表，或將工具提示工作表複製到一般互動式工作表。此外，您可以將視覺效果複製到工具提示工作表。

### 工作表工具提示的運作方式
<a name="customizing-visual-tooltips-sheet-how"></a>

當作者建立工作表工具提示時，會建立工具提示工作表並與視覺效果建立關聯。此工具提示工作表的運作方式與一般工作表相同。您可以使用自由格式配置，將視覺效果、文字方塊和影像新增至其中。當檢視器停留在資料點上時，工具提示表會從來源視覺效果繼承所有篩選條件，並新增特定資料點的額外篩選條件。例如，如果您的來源視覺效果篩選為「2025 資料」且檢視器停留在「電子」上，則工具提示只會顯示 2025 年的電子資料。

考慮顯示依產品類別銷售的長條圖。您可以建立工作表工具提示，顯示每月銷售額的趨勢線、year-over-year成長的 KPI，以及具有類別名稱的文字方塊，所有選項都會篩選為瀏覽者關注的類別。

### 工作表工具提示限制
<a name="customizing-visual-tooltips-sheet-limits"></a>

下列限制適用於工作表工具提示：
+ 每次分析最多 50 個工具提示工作表
+ 每個工具提示表最多 5 個視覺效果
+ 每個工具提示表最多 5 個文字方塊
+ 每個工具提示表最多 5 個影像
+ 工具提示工作表僅使用自由格式配置
+ 工具提示工作表上不允許圖層映射視覺效果
+ 工具提示工作表的大小上限為 640px 寬 x 720px 高

### 建立工作表工具提示
<a name="customizing-visual-tooltips-sheet-create"></a>

使用下列程序建立視覺效果的工作表工具提示。

**建立工具提示表**

1. 在分析頁面上，選擇要新增工作表工具提示的視覺效果。

1. 在視覺效果右上角的選單中，選取**格式化視覺化效果**圖示。

1. 在開啟的**屬性**窗格中，選擇**互動** > **工具提示**。

1. 針對**類型**，選擇**工作表工具提示**。

1. 選擇**建立工具提示工作表**。您將自動導覽至工具提示表編輯體驗。工具提示名稱會自動產生，您可以選擇標籤標題來編輯它。

1. 將視覺效果、文字方塊或影像新增至工具提示表。使用自由格式配置進行排列。

1. 完成後，請選擇工作表工具提示標題左側的**返回**按鈕，以返回來源工作表。若要預覽工具提示，請將滑鼠游標暫留在視覺效果中的任何資料點上。

### 將工具提示工作表指派給視覺效果
<a name="customizing-visual-tooltips-sheet-assign"></a>

當您在**屬性**窗格中選取**工作表工具**提示作為工具提示類型時，會出現控制項，可讓您選取分析中可用的所有工具提示工作表。您可以將一個工具提示工作表指派給多個視覺效果，或為每個視覺效果建立個別的工具提示工作表。

如果您想要將相同的工具提示工作表套用至另一個視覺效果，您可以透過在**屬性**窗格中**的互動** > **工具提示**一致性中將一個工具提示工作表指派給多個視覺效果來執行此操作。

### 編輯工具提示工作表
<a name="customizing-visual-tooltips-sheet-edit"></a>

使用下列程序來編輯現有的工作表工具提示。

**編輯工具提示工作表**

1. 選擇任何啟用工作表工具提示的視覺效果。

1. 開啟**屬性**窗格並導覽至**互動** > **工具提示**。

1. 在**工具提示**一致性中，選取您要編輯的工具提示，然後選擇工具提示工作表名稱旁的編輯圖示以導覽至該工具提示。

1. 對工具提示表上的視覺效果、文字方塊或影像進行變更。

### 在工具提示類型之間切換
<a name="customizing-visual-tooltips-sheet-switch"></a>

您可以隨時在基本、詳細和工作表工具提示類型之間切換視覺效果的工具提示。

**變更工具提示類型**

1. 選擇您要更新的視覺效果。

1. 開啟**屬性**窗格，選擇**互動**，然後選擇**工具提示**。

1. 針對**類型**，選取您想要的工具提示類型：**基本工具提示**、**詳細工具**提示或**工作表工具提示**。

**注意**  
切換離開工作表工具提示可保留您的工作。您可以隨時切換回來，而不會遺失工具提示表設計。

### 工作表工具提示考量事項
<a name="customizing-visual-tooltips-sheet-considerations"></a>

使用工作表工具提示時，請記住下列事項：
+ 資料表和樞紐分析表支援工作表工具提示，但不支援基本或詳細工具提示。
+ 工具提示表中的視覺效果不支援內容功能表、視覺效果上功能表或自訂動作。
+ [使用自訂動作進行篩選和導覽](quicksight-actions.md) 當工作表轉譯為工具提示時，不支援工具提示表中視覺效果上的 。
+ 工作表工具提示支援篩選條件、跨工作表篩選和參數。不支援篩選條件控制項。
+ 工作表描述不會顯示在工具提示工作表上。
+ 跨工作表篩選條件的範圍不能限定為工具提示工作表。
+ 分析必須至少包含一個一般互動式工作表。分析不能只包含工具提示工作表。
+ 圖層貼圖視覺效果無法放置在工具提示工作表中。
+ 不支援工具提示工作表上的工具提示。

這些限制可確保工具提示工作表快速載入，並為瀏覽者維持集中、可掃描的體驗。如需更複雜的分析，請考慮使用向下切入動作或單獨的細節表。

## 在視覺效果中隱藏工具提示
<a name="customizing-visual-tooltips-hide"></a>

如果您不希望在視覺效果中將游標懸停在資料上時出現工具提示，可以將之隱藏。

**若要在視覺中隱藏工具提示**

1. 在分析頁面，選擇您要格式化的視覺效果。

1. 在視覺效果右上角的選單中，選取**格式化視覺化效果**圖示。

1. 在開啟的**屬性**窗格中，選擇**工具提示**。

1. 選擇**顯示選項**。

   清除選項會隱藏視覺效果的工具提示。選取選項會顯示它們。

# 自訂資料呈現方式
<a name="analyzing-data-analyses"></a>

若要在快速分析中建立視覺效果 （圖表） 時進一步深入了解資料，您可以在視覺效果中排序和篩選資料。您也可以變更視覺效果中日期欄位、資料類型、角色和欄位格式的精細程度。

**Topics**
+ [

# 變更視覺效果在 Amazon Quick 中使用的欄位
](changing-visual-fields.md)
+ [

# 在 Amazon Quick 中排序視覺化資料
](sorting-visual-data.md)

# 變更視覺效果在 Amazon Quick 中使用的欄位
<a name="changing-visual-fields"></a>

您可以在視覺效果上使用 **Fields list (欄位清單)** 窗格、欄位集、視覺效果附帶編輯器或置放目標，以新增或修改視覺效果的欄位。

可用於特定視覺效果的欄位集、視覺效果附帶編輯器和置放目標，取決於選取的視覺效果類型。如需詳細資訊，請參閱 [Amazon Quick Sight 中的視覺化類型](working-with-visual-types.md) 一節中適當的視覺效果類型主題。

**重要**  
您也可以使用欄位集和視覺效果附帶編輯器，以變更數值欄位的資料類型和格式。若您以這種方式變更欄位，只會變更所選取的視覺效果。如需有關變更數值欄位資料類型和格式的詳細資訊，請參閱[變更視覺效果在 Amazon Quick 中使用的欄位](#changing-visual-fields)。

使用下列主題，以進一步了解在視覺效果上新增、移除和修改欄位。

**Topics**
+ [

# 使用視覺效果欄位控制項
](using-visual-field-controls.md)
+ [

# 新增或移除欄位
](adding-or-removing-a-field.md)
+ [

# 變更與視覺化元素相關聯的欄位
](changing-a-field-association.md)
+ [

# 變更欄位彙總
](changing-field-aggregation.md)
+ [

# 變更日期欄位精細程度
](changing-date-field-granularity.md)
+ [

# 自訂欄位格式
](customizing-field-format.md)

# 使用視覺效果欄位控制項
<a name="using-visual-field-controls"></a>

您可以利用使用者介面 (UI) 控制項編輯視覺效果所使用的欄位。

您可以如下使用這些控制項：
+ 建立視覺效果，然後在**欄位清單**窗格中選取欄位，或將欄位拖曳到欄位集或置放目標，以指派欄位給視覺效果上的不同元素。
+ 透過將欄位拖曳到置放目標或欄位集，或在欄位集或視覺效果附帶編輯器中選擇不同的欄位，變更與視覺化元素相關聯的欄位。
+ 透過使用欄位集或視覺效果附帶編輯器，變更欄位彙總或日期精細程度。

特定視覺效果上可用的欄位集、視覺效果附帶編輯器和置放目標，取決於選取的視覺效果類型。

## 將欄位拖曳到置放目標或欄位集
<a name="dragging-a-field"></a>

當您將欄位拖曳至捨棄目標或欄位集時，Amazon Quick 會為您提供目標元素預期量值或維度的相關資訊。Amazon Quick 也為您提供有關該元素是否可用於欄位指派的資訊。

例如，當您將度量拖曳到新的單一度量折線圖上的數值置放目標時，您會看到該置放目標呈現綠色。綠色表示置放目標期待的是度量。拖曳標籤表示目標允許新增欄位。

當您將維度拖曳到新折線圖上的 X 軸或上色的置放目標時，您會看到藍色的標籤。藍色表示置放目標期待的是維度。拖曳標籤表示目標允許新增欄位。

您也可以將度量或維度拖曳到折線圖上的置放目標，其中元素已經與欄位相關聯。在這種情況下，拖曳標籤表示您想要更換目前與置放目標相關聯的欄位。

# 新增或移除欄位
<a name="adding-or-removing-a-field"></a>

您可以在 **Fields list (欄位清單)** 窗格上選擇欄位，以將欄位新增至視覺效果。您也可以將它拖曳到視覺效果上的置放目標或欄位集。每一種視覺效果類型的置放欄位與欄位集之間有 1:1 的對應關係，所以您可以使用任一方法。

在某些圖表上，當圖表任一側的**值**欄位中有兩個或多個欄位時，**軸標題**欄位會隱藏。下列圖表可能會出現此情況：
+ 長條圖
+ 折線圖
+ 盒狀圖
+ 組合圖
+ 瀑布圖

若要從視覺效果移除欄位，請在**欄位清單**窗格中取消選取該欄位。或者選擇視覺效果附帶編輯器或使用此欄位的欄位集，然後從內容 (按一下滑鼠右鍵) 選單中選擇**移除**。

## 在欄位清單窗格中選取欄位以新增欄位
<a name="add-a-field-data-set"></a>

您也可以讓 Amazon Quick 將 欄位映射至最適合的視覺化元素。若要執行此操作，請在**字段清單**窗格中選擇欄位。Amazon Quick 透過填入與該欄位類型 （量值或維度） 對應的第一個空白欄位集，將欄位新增至視覺效果。如果已填入所有視覺化元素，Amazon Quick 會決定最適當的欄位集，並將其中的欄位取代為您選取的欄位。

## 使用置放目標新增欄位
<a name="add-a-field-drop-target"></a>

若要使用置放目標將欄位新增至視覺效果，請先在**Fields list (欄位清單)** 窗格中選擇欄位。然後，將欄位拖曳到視覺效果上您已選擇的置放目標，並確保置放指標指出正在新增欄位。

## 使用欄位集新增欄位
<a name="add-a-field-field-well"></a>

若要使用欄位集將欄位新增至視覺效果，請先在**Fields list (欄位清單)** 窗格中選擇欄位。然後，將欄位拖曳到目標欄位集，並確保置放指標指出正在新增欄位。

1. 將欄位項目拖曳到**欄位集**。

1. 從 **Fields list (欄位清單)** 窗格中，將您想要新增的欄位拖曳到適當的欄位集。

**注意**  
您可以多次將相同的值新增到相同的視覺效果。如此便能顯示已套用了不同的彙總計算或資料表計算的同一個值。預設情況下，所有欄位都將顯示同樣的標籤。您可以使用**屬性**面板來編輯名稱，可選擇右上角的 **V** 形圖示來開啟該面板。

# 變更與視覺化元素相關聯的欄位
<a name="changing-a-field-association"></a>

您可以在視覺效果上使用欄位集、置放目標或視覺效果附帶編輯器，以變更視覺效果中指派給某個元素的欄位。對於樞紐分析表，使用欄位集或置放目標，因為此視覺效果類型不提供視覺效果附帶編輯器。

## 使用視覺效果附帶編輯器來變更欄位映射
<a name="change-field-mappings-element-controls"></a>

使用下列程序來修改欄位到視覺化元素的映射。

**若要使用視覺效果附帶編輯器修改欄位映射**

1. 在視覺效果上，針對您要變更欄位的視覺化元素，選擇視覺效果附帶編輯器。

1. 在視覺效果附帶編輯器的功能表中，選擇您要與該視覺化元素相關聯的欄位。

## 使用置放目標來變更欄位映射
<a name="change-field-mappings-drop-target"></a>

若要使用置放目標來修改欄位到視覺化元素的映射，請在**Fields list (欄位清單)** 窗格中選擇欄位。然後，將欄位拖曳到視覺效果上的置放目標，並確保置放指標指出正在取代欄位。

## 使用欄位集來變更欄位映射
<a name="change-field-mappings-field-wells"></a>

使用下列程序來修改欄位到視覺化元素的映射。

**若要使用欄位集來修改欄位映射**

1. 將欄位項目拖曳到**欄位集**。

1. 選擇代表您希望重新映射元素的欄位集，然後從顯示的選單中選擇新的欄位。

# 變更欄位彙總
<a name="changing-field-aggregation"></a>

您可以將函數套用到欄位以顯示彙總資訊，例如特定產品的銷售總和。您可以在視覺效果附帶編輯器或欄位集上使用選項，以套用彙總函數。下列彙總函數可在 Amazon Quick 中使用：
+ 平均 – 計算所選欄位的平均值。
+ 計數 – 提供記錄計數，這些記錄包含特定維度的所選量值。例如，「依州別分組的訂單 ID」計數。
+ 不同計數 – 針對所選的一或多個維度，提供在所選量值中有多少不同值的計數。例如，「依地區分組的產品」計數。簡單計數可以顯示每個區域銷售的產品數量。相異計數可以顯示每個區域銷售的不同產品數量。您可能已銷售 2,000 項，但只有兩種不同的項目。
+ 最大 – 計算所選欄位的最大值。
+ 最小 – 計算所選欄位的最小值。
+ 中位數 – 計算指定量值的中位值，依選擇的一個或多個維度分組。
+ 總和 – 合計所選欄位的所有值。
+ 標準差 – 計算指定量值中一組數字的標準差，根據母體偏差依照所選的一個或多個維度分組。
+ 變異數 – 計算指定量值中一組數字的變異數，根據範例或母體偏差依照所選的一個或多個維度分組。
+ 百分位數 – 運算指定量值的第 *n* 個百分位數 (按所選的一或多個維度分組)。

所有彙總函數都可套用到數值欄位。如果您選擇將 *Count* 用在期待度量的欄位集，它會自動套用到維度。如果您已那樣使用維度，則您也可以變更已套用到它的彙總函數。您無法將彙總函數套用到維度欄位集的欄位。

支援彙總欄位的視覺化元素隨視覺效果類型而不同。

## 使用視覺效果附帶編輯器在欄位上變更或新增彙總
<a name="change-field-aggregation-element-controls"></a>

使用下列程序在欄位上變更或新增彙總。

**若要在欄位上變更或新增彙總**

1. 在視覺效果上，針對您要套用彙總的欄位，選擇視覺效果附帶編輯器。

1. 在視覺效果附帶編輯器的功能表中，選擇 **Aggregate (彙總)**，然後選擇您要套用的彙總函數。

## 使用欄位集在欄位中變更或新增彙總
<a name="change-field-aggregation-field-wells"></a>

使用下列程序將彙總新增到樞紐分析表視覺效果的欄位。

**若要將彙總新增到樞紐分析表視覺效果的欄位**

1. 將欄位項目拖曳到**欄位集**。

1. 選擇欄位集，其中包含您要套用彙總函數的欄位。

1. 在欄位集功能表中，選擇 **Aggregate (彙總)**，然後選擇您要套用的彙總函數。

# 變更日期欄位精細程度
<a name="changing-date-field-granularity"></a>

您可以在視覺效果上變更日期欄位的精細程度，以決定項目值的顯示間隔。您可以將日期欄位精細程度設為以下其中一個值：
+ 年
+ 季
+ 月
+ 週
+ 日 (此為預設值)
+ 小時
+ 分鐘
+ 秒

只有當欄位包含時間資料時，才可使用小時和分鐘。

## 使用視覺效果附帶編輯器來變更日期欄位精細程度
<a name="change-date-granularity-element-controls"></a>

使用下列程序，以視覺效果附帶編輯器來變更日期欄位精細程度。

**若要使用視覺效果附帶編輯器變更日期欄位精細程度**

1. 在視覺效果上，針對您想要變更精細程度的日期欄位，選擇欄位集。

1. 在欄位集功能表中，選擇 **Aggregate (彙總)**，然後選擇您要套用的時間間隔，如下所示：

## 使用欄位集來變更日期欄位精細程度
<a name="change-date-granularity-field-wells"></a>

使用下列程序，以欄位集來變更日期欄位精細程度。

**若要變更具有欄位集的日期欄位精細程度**

1. 將欄位項目拖曳到**欄位集**。

1. 選擇包含日期欄位的欄位集，然後選擇 **Aggregate (彙總)**。選擇您要使用的日期精細程度。

# 自訂欄位格式
<a name="customizing-field-format"></a>

使用下列程序來自訂分析中的欄位外觀。

**若要自訂分析中的欄位外觀**

1. 在分析中，選擇要格式化的欄位，方法是在欄位集中選擇欄位，或在**視覺化**窗格的**欄位清單**中選擇欄位。

1. 選擇 **Show as (顯示)** 變更欄位在分析中顯示的方式，並選擇內容功能表上的選項。可用選項的清單會根據欄位的資料類型而定。如果您從欄位清單中選擇非數值欄位，您可以變更 *count format (計數格式)*，這是計算欄位時使用的格式化。

1. 選擇 **Format (格式)** 來變更欄位的格式，並選擇內容功能表上的選項。如果您並未看到要使用的選項，請從內容功能表中選擇 **More formatting options (更多格式化選項)**。

   **Format Data (格式資料)** 窗格會開啟，顯示您選擇的數值或日期欄位類型選項。

   內容功能表的 **Show as (顯示)** 選項如今會顯示在 **Format Data (格式資料)** 窗格頂端的下拉式清單中。其餘選項是資料類型特定的選項，而且與您選擇如何顯示欄位有關。

對於日期和時間資料，預設格式模式是 YYYY-MM-DD**`T`**HH:mm:ssZZ，例如 2016-09-22T17:00:00-07:00。

對於數字，您可以選擇在數字之後顯示的以下單位：
+ 無單位字尾。這是預設值。
+ 千 (K)
+ 百萬 (M)
+ 十億 (B)
+ 兆 (T)
+ 自訂單位字首或字尾

對於貨幣，您可以選擇以下符號：
+ 美元 (\$1)
+ 歐元 (€)
+ 英鎊 (£)
+ 日圓 (¥)

# 變更欄位格式
<a name="changing-a-field-format"></a>

您可以變更分析環境中的欄位格式。適用於欄位的格式化選項取決於欄位的資料類型。

使用**欄位清單**窗格的選單選項或視覺效果欄位集進行簡單的格式變更，或使用**格式資料**窗格進行更廣泛的格式變更。

**Topics**
+ [

# 設定貨幣欄位的格式
](format-a-currency-field.md)
+ [

# 設定日期欄位的格式
](format-a-date-field.md)
+ [

# 設定數字欄位的格式
](format-a-number-field.md)
+ [

# 設定百分比欄位的格式
](format-a-percent-field.md)
+ [

# 格式化文字欄位
](format-a-text-field.md)
+ [

# 將欄位的格式回復為預設設定
](set-field-format-to-default.md)

# 設定貨幣欄位的格式
<a name="format-a-currency-field"></a>

您設定貨幣欄位的格式時，可以從常見選項的清單中選擇貨幣符號，也可以開啟**格式資料**窗格手動設定欄位的格式。手動設定欄位的格式可讓您選擇要使用的分隔符號、要顯示的小數位數、要使用的單位，以及負數的顯示方式。

變更欄位格式會對於分析中的所有視覺效果變更設定，但不會變更基礎的資料集。

如果您想要從常用選項清單中選擇貨幣欄位的符號，您可以使用數種方式存取這類清單。您可以從 **Field list (欄位清單)** 窗格、視覺效果附帶編輯器或視覺效果欄位集存取它。

**若要選擇清單選項來選取貨幣的符號**

1. 請選擇下列其中一個選項：
   + 在**欄位清單**窗格中，選擇要設定格式之數字欄位右邊的選擇器圖示。
   + 在包含視覺效果編輯器 (而這些編輯器與您要格式化的貨幣欄位相關聯) 的任何視覺化效果，選擇視覺化效果編輯器。展開**欄位集**窗格，然後再選擇與要變更之數字欄位關聯的欄位集。

1. 選擇**格式**，然後選擇您想要的貨幣欄位：
   + 顯示為美元 (\$1)。
   + 顯示為英鎊 (£)。
   + 顯示為歐元 (€)。
   + 顯示為日元或人民幣 (¥)。

**若要手動變更貨幣欄位的格式**

1. 請選擇下列其中一個選項：
   + 在**欄位清單**窗格中，選擇要設定格式之數字欄位右邊的選擇器圖示。
   + 在包含視覺效果編輯器 (而這些編輯器與您要格式化的數字欄位相關聯) 的任何視覺化效果，選擇視覺化效果編輯器。展開**欄位集**窗格，然後再選擇與要變更之數字欄位關聯的欄位集。

1. 選擇 **Format (格式)**，然後選擇 **More Formatting Options (更多格式化選項)**。

   **格式資料**窗格隨即開啟。

1. 展開 **Symbol (符號)** 部分，然後選擇下列選項：
   + 顯示為美元 (\$1)。這是預設值。
   + 顯示為英鎊 (£)。
   + 顯示為歐元 (€)。
   + 顯示為日元或人民幣 (¥)。

1. 展開 **Separators (分隔符號)** 部分，然後選擇下列選項：
   + 在 **Decimal (小數)** 底下，選擇點或逗號做為小數分隔符號。預設為點。如果您改為選擇逗號，則使用點或空格做為千位分隔符號。
   + 在 **Thousands (千)** 底下，選取或清除 **Enabled (已啟用)**，指示您是否要要使用千位分隔符號。預設選取 **Enabled (已啟用)**。
   + 如果您使用千位分隔符號，請選擇要使用逗號、點或空格做為分隔符號。預設為逗號。如果您改為選擇點，則使用逗號做為小數分隔符號。

1. 展開 **Decimal Places (小數位數)** 部分，並選擇要使用的小數位數。預設為 2。欄位值會四捨五入為指定的小數位數。例如，如果您指定兩位小數位數，值 6.728 會四捨五入為 6.73。

1. 展開 **Units (單位)** 部分，然後選擇下列選項：
   + 選擇要使用的單位。選擇單位會對於數字值加上適當的字尾。例如，如果您選擇 **Thousands (千)**，欄位值 1234 會顯示為 1.234K。

     單位選項如下所示：
     + 無單位字尾。這是預設值。
     + 千 (K)
     + 百萬 (M)
     + 十億 (B)
     + 兆 (T)
   + 如果您要使用自訂字首或字尾，請在 **Prefix (字首)** 或 **Suffix (字尾)** 方塊中指定。使用自訂尾碼是指定 Amazon Quick 所提供貨幣尾碼以外之貨幣尾碼的好方法。您可以指定兩者。您也可以在選取單位新增字尾之外指定自訂字首。

1. 展開 **Negatives (負值)** 部分，並選擇是否使用負號或用括號括住來顯示負值。預設使用負號。

1. 展開 **Null 值**區段，然後選擇要將 Null 值顯示為 `null` 還是顯示為自訂值。預設值為使用 `null`。
**注意**  
使用資料表或樞紐分析表時，Null 值僅會針對放置在**資料列**、**資料欄**或**分組方式**欄位集中的欄位顯示。**值**欄位集中欄位的 Null 值在資料表或樞紐分析表中顯示為空。

# 設定日期欄位的格式
<a name="format-a-date-field"></a>

您設定日期欄位的格式時，可以選擇常見格式化選項的清單。您也可以開啟**格式資料**窗格以選擇常用格式的清單，或指定日期和時間值的自訂格式。

變更欄位格式會對於使用該資料集的分析中之所有視覺效果變更設定，但不會變更資料集本身。

如果您想要透過從常用選項清單中選擇日期欄位的格式，您可以使用數種方式存取這類清單。您可以從 **Field list (欄位清單)** 窗格、視覺效果附帶編輯器或視覺效果欄位集存取它。

**若要選擇清單選項來變更日期欄位的格式**

1. 請選擇下列其中一個選項：
   + 在**欄位清單**窗格中，選擇要設定格式之數字欄位右邊的選擇器圖示。
   + 在包含視覺效果編輯器 (而這些編輯器與您要格式化的數字欄位相關聯) 的任何視覺化效果，選擇視覺化效果編輯器。展開**欄位集**窗格，然後再選擇與要變更之數字欄位關聯的欄位集。

1. 選擇**格式**，然後選擇您想要的格式。對於日期欄位提供以下快速格式化選項：
   + 顯示月、日、年和時間。
   + 顯示月、日和年。
   + 顯示月和年。
   + 顯示年。

**若要手動變更日期欄位的格式**

1. 請選擇下列其中一個選項：
   + 在**欄位清單**窗格中，選擇要設定格式之數字欄位右邊的選擇器圖示。
   + 在包含視覺效果編輯器 (而這些編輯器與您要格式化的數字欄位相關聯) 的任何視覺化效果，選擇視覺化效果編輯器。展開**欄位集**窗格，然後再選擇與要變更之數字欄位關聯的欄位集。

1. 選擇 **Format (格式)**，然後選擇 **More Formatting Options (更多格式化選項)**。

   **格式資料**窗格隨即開啟。

1. 展開 **Date (日期)** 部分。選擇現有的日期格式，或選擇**自訂**，然後在**格式資料**窗格下方的**自訂**區段中指定格式模式。如果您在**日期**區段中選擇**自訂**，您也必須針對下面的**時間**區段選擇**自訂**。您在**自訂**區段中指定的模式，必須包含您想指定的任何日期和時間格式。

   預設選項為**自訂**，其預設格式樣式為 MMM D, YYYY h:mma，例如 Sep 20, 2022 5:30pm。

1. 展開 **Time (時間)** 部分。選擇現有的時間格式，或選擇**自訂**，然後在**格式資料**窗格下方的**自訂**區段中指定格式模式。如果您在**時間**區段中選擇**自訂**，您也必須為前面的**日期**區段選擇**自訂**。您在**自訂**區段中指定的模式，必須包含您想指定的任何日期和時間格式。

   預設選項為**自訂**，其預設格式樣式為 MMM D, YYYY h:mma，例如 Sep 20, 2022 5:30pm。

1. 如果您在**日期**和**時間**區段中選擇**自訂**，請展開**自訂**區段，並使用 Moment.js JavaScript 文件中 [Moment.js 顯示格式](https://momentjs.com/docs/#/displaying/)中指定的格式模式語法指定您想要的格式模式。
**注意**  
快速支援`Z`來自 Moment.js 程式庫的時區相關顯示字符，但`z`字符不支援。

   如果您在**日期**和**時間**區段中選擇**自訂**以外的其他項目，**自訂**會填入反映您選取項目的格式模式。例如，如果您在**日期**區段中選擇 Jun 21, 2016，並且在**時間**區段中選擇 17:00:00pm，則**自訂**區段會顯示格式模式 MMM D, YYYY H:mm:ssa。

1. (選用) 展開 **Custom (自訂)** 部分，並使用 **Preview (預覽)** 確定您指定的格式。

1. 展開 **Null 值**區段，然後選擇要將 Null 值顯示為 `null` 還是顯示為自訂值。預設值為使用 `null`。

# 在 Quick 中自訂日期格式
<a name="format-visual-date-controls"></a>

在快速中，您可以自訂日期在篩選條件和參數控制項中的格式。例如，您可以指定將控制項中的日期格式化為 20-09-2021，或者，如果您願意，可以指定為 09-20-2021。諸多自訂選項中，您還可以指定將日期中的月份 (例如 September) 縮短為三個字母 (Sep)。

以下是您可以用來建立自訂日期格式的權杖清單。您可以將其彼此結合使用，以控制日期在控制項中的顯示方式。

## 用於格式化日期的支援權杖清單
<a name="format-date-supported-tokens"></a>

使用下列字符來自訂 Quick 中日期的格式。


| 範例 | Description | 權杖 | 
| --- | --- | --- | 
|  0–6  |  一周中特定日的數字表示。0 是星期日，6 是星期六。  |  `d`  | 
|  Mo–Su  |  一周中某一天的 2 個字符的文字表示。  |  `dd`  | 
|  Mon–Sun  |  一周中某一天的 3 個字符的文字表示。  |  `ddd`  | 
|  Monday–Sunday  |  一周中某一天的文字表示。  |  `dddd`  | 
|  99 或 21  |  年份的 2 位數表示。  |  `YY`  | 
|  1999 或 2021  |  年份的完整 4 位數表示。  |  `YYYY`  | 
|  1–12  |  月份的數字，沒有前導零。  |  `M`  | 
|  1st、2nd 到 12th  |  沒有前導零但帶有序數字尾的月份的數字。  |  `Mo`  | 
|  01–12  |  月份的數字，有前導零。  |  `MM`  | 
|  Jan–Dec  |  月份的 3 位數文字表示。  |  `MMM`  | 
|  January–December  |  月份的完整文字表示。  |  `MMMM`  | 
|  1–4  |  季度的數字表示。  |  `Q`  | 
|  1st–4th  |  帶有序數字尾的季度的數字表示。  |  `Qo`  | 
|  1–31  |  月份中的日期，沒有前導零。  |  `D`  | 
|  1st、2nd 到 31th  |  沒有前導零但帶有序數字尾的月份中的日期。  |  `Do`  | 
|  01–31  |  月份中日期的 2 位數表示，有前導零。  |  `DD`  | 
|  1–365  |  年份中的日期，沒有前導零。  |  `DDD`  | 
|  001–365  |  年份中的日期，有前導零。  |  `DDDD`  | 
|  1–53  |  年份中的週，沒有前導零。  |  `w`  | 
|  1st–53rd  |  沒有前導零但有序數字尾的年份中的週。  |  `wo`  | 
|  01–53rd  |  年份中的週，有前導零。  |  `ww`  | 
|  1–23  |  小時，24 小時制，不含前導零。  |  `H`  | 
|  01–23  |  小時，24 小時制，含前導零。  |  `HH`  | 
|  1–12  |  小時，12 小時制，不含前導零。  |  `h`  | 
|  01–12  |  小時，12 小時制，含前導零。  |  `hh`  | 
|  0–59  |  沒有前導零的分鐘。  |  `m`  | 
|  00–59  |  有前導零的分鐘。  |  `mm`  | 
|  0–59  |  沒有前導零的秒數。  |  `s`  | 
|  00–59  |  有前導零的秒數。  |  `ss`  | 
|  am 或 pm  |  am/pm  |  `a`  | 
|  AM 或 PM  |  AM/PM  |  `A`  | 
|  1632184215  |  Unix 時間戳記。  |  `X`  | 
|  1632184215000  |  毫秒 Unix 時間戳記。  |  `x`  | 
|  Z  |  零 UTC 偏移。  |  `Z`  | 

不支援下列日期類型。
+ 含冒號的時區偏移。例如 \$107:00。
+ 不含冒號的時區偏移。例如 \$10730。

### 預設日期格式
<a name="visuals-preset-date-formats"></a>

若要快速自訂日期和時間以下列其中一個範例格式顯示，您可以使用下列快速預設權杖。


| 範例 | 權杖 | 
| --- | --- | 
|  8:30 PM  |  `LT`  | 
|  8:30:25 PM  |  `LTS`  | 
|  August 2 1985  |  `LL`  | 
|  Aug 2 1985  |  `ll`  | 
|  August 2 1985 08:30 PM  |  `LLL`  | 
|  Aug 2 1985 08:30 PM  |  `lll`  | 
|  Thursday, August 2 1985 08:30 PM  |  `LLLL`  | 
|  Thu, Aug 2 1985 08:30 PM  |  `llll`  | 

## 一般日期格式
<a name="visuals-common-date-formats"></a>

以下是三個常見的日期示例及其相關的權杖格式，供您快速參考。


| 範例 | 權杖格式 | 
| --- | --- | 
|  Sep 20, 2021  |  `MMM DD, YYYY`  | 
|  20-09-21 5pm  |  `DD-MM-YY ha`  | 
|  Monday, September 20, 2021 17:30:15  |  `dddd, MMMM DD, YYYY HH:mm:ss`  | 

## 為日期新增單字
<a name="visuals-adding-words-to-dates"></a>

若要在日期格式中加入文字，例如 *20th of Sep, 2021* 中的 "of"，請在單字中的每個字元之前輸入反斜線 (\$1)。例如，對於日期範例 "20th of Sep, 2021"，請使用下列權杖格式：`Do \o\f MMM, YYYY`。

## 範例：自訂篩選控制項中的日期格式
<a name="format-visual-date-controls-example"></a>

請使用下列程序，了解如何使用日期權杖格式來自訂篩選控制項的日期。

**若要了解如何使用資料權杖自訂篩選控制項的日期**

1. 在快速分析中，選擇您要自訂的篩選條件控制項。

1. 在篩選控制項上，選擇**編輯控制項**圖示。

1. 在開啟的**編輯控制項**頁面上，對於**日期格式**，輸入您想要的自訂日期格式。使用本主題先前列出的權杖。

   例如，假設您要使用以下格式自訂日期：*Sep 3rd, 2020 at 5pm*。若要這樣做，您可以輸入下列權杖格式：

   `MMM Do, YYYY \a\t ha`

   當您輸入每個權杖時，日期格式的預覽會顯示在輸入欄位下方。

1. 選擇**套用**。

   控制項中的日期會更新為您指定的格式。

# 設定數字欄位的格式
<a name="format-a-number-field"></a>

設定數字欄位的格式時，您可以從常見選項的清單中選擇小數位數和千位分隔符號格式。或者，您可以開啟 **Format Data (格式化資料)** 窗格並手動設定欄位的格式。手動設定欄位的格式可讓您選擇要使用的分隔符號以及要顯示的小數位數。它也可讓您選擇要使用的單位，以及如何顯示負數。

變更欄位格式會對於分析中的所有視覺效果變更設定，但不會變更基礎的資料集。

如果您想要從常見選項清單中選擇數字欄位來進行格式化，您可以從 **Field list (欄位清單)** 窗格、視覺化效果編輯器或視覺化效果欄位集存取這種清單。

**若要選擇清單選項來變更數字欄位的格式：**
+ 請選擇下列其中一個選項：
  + 在**欄位清單**窗格中，選擇要設定格式之數字欄位右邊的選擇器圖示。
  + 在包含視覺效果編輯器 (而這些編輯器與您要格式化的數字欄位相關聯) 的任何視覺化效果，選擇視覺化效果編輯器。展開**欄位集**窗格，然後再選擇與要變更之數字欄位關聯的欄位集。
+ 選擇**格式**，然後選擇您想要的格式。對於數字欄位提供以下快速格式化選項：
  + 請使用逗號分隔千位數，並使用小數點顯示數字的分數部分，例如 1,234.56。
  + 使用小數點顯示數字的分數部分，例如 1234.56。
  + 將數字顯示為整數，並使用逗號分隔千位數，例如 1,234。
  + 將數字顯示為整數，例如 1234。

**若要手動變更數字欄位的格式：**

1. 請選擇下列其中一個選項：
   + 在**欄位清單**窗格中，選擇要設定格式之數字欄位右邊的選擇器圖示。
   + 在包含視覺效果編輯器 (而這些編輯器與您要格式化的數字欄位相關聯) 的任何視覺化效果，選擇視覺化效果編輯器。展開**欄位集**窗格，然後再選擇與要變更之數字欄位關聯的欄位集。

1. 選擇 **Format (格式)**，然後選擇 **More Formatting Options (更多格式化選項)**。

   **格式資料**窗格隨即開啟。

1. 展開 **Separators (分隔符號)** 部分，然後選擇下列選項：
   + 在 **Decimal (小數)** 底下，選擇點或逗號做為小數分隔符號。預設為點。如果您改為選擇逗號，則使用點或空格做為千位分隔符號。
   + 在 **Thousands (千)** 底下，選取或清除 **Enabled (已啟用)**，指示您是否要要使用千位分隔符號。預設選取 **Enabled (已啟用)**。
   + 如果您使用千位分隔符號，請選擇要使用逗號、點或空格做為分隔符號。預設為逗號。如果您改為選擇點，則使用逗號做為小數分隔符號。

1. 展開 **Decimal Places (小數位數)** 部分，然後選擇下列選項：
   + 選擇**自動**讓 Amazon Quick 自動判斷適當的小數位數，或選擇**自訂**以指定小數位數。預設為 **Auto (自動)**。
   + 如果您選擇 **Custom (自訂)**，請輸入要使用的小數位數。欄位值會四捨五入為指定的小數位數。例如，如果您指定兩位小數位數，值 6.728 會四捨五入為 6.73。

1. 展開 **Units (單位)** 部分，然後選擇下列選項：
   + 選擇要使用的單位。選擇單位會對於數字值加上適當的字尾。例如，如果您選擇 **Thousands (千)**，欄位值 1234 會顯示為 1.234K。

     單位選項如下所示：
     + 無單位字尾。這是預設值。
     + 千 (K)
     + 百萬 (M)
     + 十億 (B)
     + 兆 (T)
   + 如果您要使用自訂字首或字尾，請在 **Prefix (字首)** 或 **Suffix (字尾)** 方塊中指定。您可以指定兩者。您也可以在選取單位新增字尾之外指定自訂字首。

1. 展開 **Negatives (負值)** 部分，並選擇是否使用負號或用括號括住來顯示負值。預設使用負號。

1. 展開 **Null 值**區段，然後選擇要將 Null 值顯示為 `null` 還是顯示為自訂值。預設值為使用 `null`。
**注意**  
使用資料表或樞紐分析表時，Null 值僅會針對放置在**資料列**、**資料欄**或**分組方式**欄位集中的欄位顯示。**值**欄位集中欄位的 Null 值在資料表或樞紐分析表中顯示為空。

# 設定百分比欄位的格式
<a name="format-a-percent-field"></a>

設定百分比欄位的格式時，您可以從常見選項的清單中選擇小數位數。或者，您可以開啟**格式資料**窗格並手動設定欄位的格式。手動設定欄位的格式可讓您選擇要使用的分隔符號。它也可讓您選擇要顯示的小數位數，以及如何顯示負數。

變更欄位格式會對於分析中的所有視覺效果變更設定，但不會變更基礎的資料集。

如果您想要從常見選項的清單中選擇百分比欄位的小數位數，您可以使用數種方式存取這類清單。您可以從 **Field list (欄位清單)** 窗格、視覺效果附帶編輯器或視覺效果欄位集存取它。

**若要選擇清單選項來變更百分比欄位的小數位數**

1. 請選擇下列其中一個選項：
   + 在**欄位清單**窗格中，選擇要設定格式之數字欄位右邊的選擇器圖示。
   + 在包含視覺效果編輯器 (而這些編輯器與您要格式化的百分比欄位相關聯) 的任何視覺化效果，選擇視覺化效果編輯器。展開**欄位集**窗格，然後再選擇與要變更之數字欄位關聯的欄位集。

1. 選擇**格式**，然後選擇您想要的小數位數。對於百分比欄位提供以下快速格式：
   + 顯示兩位小數位數的值。
   + 顯示一位小數位數的值。
   + 顯示無小數位數的值。

**若要手動變更百分比欄位的格式**

1. 請選擇下列其中一個選項：
   + 在**欄位清單**窗格中，選擇要設定格式之數字欄位右邊的選擇器圖示。
   + 在包含視覺效果編輯器 (而這些編輯器與您要格式化的數字欄位相關聯) 的任何視覺化效果，選擇視覺化效果編輯器。展開**欄位集**窗格，然後再選擇與要變更之數字欄位關聯的欄位集。

1. 選擇 **Format (格式)**，然後選擇 **More Formatting Options (更多格式化選項)**。

   **格式資料**窗格隨即開啟。

1. 展開 **Separators (分隔符號)** 部分，然後選擇下列選項：
   + 在 **Decimal (小數)** 底下，選擇點或逗號做為小數分隔符號。預設為點。如果您改為選擇逗號，則使用點或空格做為千位分隔符號。
   + 在 **Thousands (千)** 底下，選取或清除 **Enabled (已啟用)**，指示您是否要要使用千位分隔符號。預設選取 **Enabled (已啟用)**。
   + 如果您使用千位分隔符號，請選擇要使用逗號、點或空格做為分隔符號。預設為逗號。如果您改為選擇點，則使用逗號做為小數分隔符號。

1. 展開 **Decimal Places (小數位數)** 部分，然後選擇下列選項：
   + 選擇**自動**讓 Amazon Quick 自動判斷適當的小數位數，或選擇**自訂**以指定小數位數。預設為 **Auto (自動)**。
   + 如果您選擇 **Custom (自訂)**，請輸入要使用的小數位數。欄位值會四捨五入為指定的小數位數。例如，如果您指定兩位小數位數，值 6.728 會四捨五入為 6.73。

1. 展開 **Negatives (負值)** 部分，並選擇是否使用負號或用括號括住來顯示負值。預設使用負號。

1. 展開 **Null 值**區段，然後選擇要將 Null 值顯示為 `null` 還是顯示為自訂值。預設值為使用 `null`。
**注意**  
使用資料表或樞紐分析表時，Null 值僅會針對放置在**資料列**、**資料欄**或**分組方式**欄位集中的欄位顯示。**值**欄位集中欄位的 Null 值在資料表或樞紐分析表中顯示為空。

# 格式化文字欄位
<a name="format-a-text-field"></a>

格式化文字欄位時，您可以選擇如何使用**欄位清單**窗格、視覺效果附帶編輯器或視覺效果欄位集來顯示 Null 值。

**若要選擇如何顯示文字欄位的 Null 值**

1. 請選擇下列其中一個選項：
   + 在**欄位清單**窗格中，選擇要設定格式之數字欄位右邊的選擇器圖示。
   + 在包含視覺效果編輯器 (而這些編輯器與您要格式化的百分比欄位相關聯) 的任何視覺化效果，選擇視覺化效果編輯器。展開**欄位集**窗格，然後再選擇與要變更之數字欄位關聯的欄位集。

1. 選擇 **Format (格式)**，然後選擇 **More Formatting Options (更多格式化選項)**。

   **格式資料**窗格隨即開啟。

1. 展開 **Null 值**區段，然後選擇要將 Null 值顯示為 `null` 還是顯示為自訂值。預設值為使用 `null`。

# 將欄位的格式回復為預設設定
<a name="set-field-format-to-default"></a>

使用下列程序將欄位的格式回復為預設設定。

**若要將欄位的格式回復為預設設定**

1. 在**欄位清單**窗格中，選擇要重設之欄位右邊的選擇器圖示。

1. 選擇 **Format (格式)**，然後選擇 **More Formatting options (更多格式化選項)**。

   **格式資料**窗格隨即開啟。

1. 選擇 **Reset to defaults (重設為預設)**。

# 在 Amazon Quick 中排序視覺化資料
<a name="sorting-visual-data"></a>

您可以對大多數視覺效果類型使用多種方法對資料進行排序。您可以使用快速排序選項或欄位集來選擇視覺資料的排序順序。您也可以使用欄位集依視覺效果之外的指標對資料進行排序。您可依據哪個視覺效果元素來排序，取決於視覺效果類型以及該視覺效果是否支援排序。如需有關哪些視覺類型支援排序的詳細資訊，請參閱 [Quick 中每種類型的分析格式](analytics-format-options.md)。

排序值時，樞紐分析表的行為與資料表不同。如需排序樞紐分析表的詳細資訊，請參閱[在快速中排序樞紐分析表](sorting-pivot-tables.md)。

對於 SPICE 資料集，您可以排序最大為下列限制值的文字字串：
+ 最多兩百萬 (2,000,000) 個單獨的值
+ 高達 16 個欄位

當您超過限制，視覺效果在右上角顯示通知。

您可以對任何支援排序的視覺類型進行排序。如果視覺類型支援排序，您可以使用快速排序選項或欄位集來排序。

**若要快速排序維度和量值**
+ 執行以下任意一項：
  + 請選擇顯示在任一軸上欄位名稱附近的排序圖示。在直接查詢中，此圖示會針對任何資料類型顯示。對於 SPICE，此圖示僅適用於日期時間、數值和小數資料類型。
  + 選擇欄位名稱，然後從選單中選擇排序選項。如果標籤未顯示在軸上，請檢查視覺效果格式以查看軸是否設定為顯示標籤。顯示標籤會自動在較小的視覺效果上隱藏。或者，您可能需要讓視覺效果大到足以顯示標籤。

**若要使用視覺效果外的指標排序**

1. 開啟含有要排序的視覺效果的分析。視覺效果窗格預設為開啟狀態。

1. 選擇一個支援排序的欄位集，然後選擇**排序方式**、**排序選項**。

1. 在**排序選項**窗格中，依特定欄位排序、選擇彙總、遞增或遞減排序，或者結合這些欄位執行操作。

1. 選擇 **Apply (套用)** 來儲存您的變更。或選擇**清除**重新開始，或選擇**取消**返回。

**若要使用欄位集來排序**

1. 開啟含有要排序的視覺效果的分析。視覺效果窗格預設為開啟狀態。

1. 選擇支援排序的欄位集。

1. 在欄位集功能表中，選擇 **Sort (排序)**，然後選擇遞增或遞減排序順序圖示。

# 在 Amazon Quick Sight 中使用佈景主題
<a name="themes-in-quicksight"></a>

在 Amazon Quick Sight 中，*佈景主題*是一組設定，您可以套用至多個分析和儀表板。Amazon Quick Sight 包含一些佈景主題，您可以使用佈景主題編輯器來新增自己的佈景主題。您可以將佈景主題的許可等級設定為使用者或擁有者，藉此分享佈景主題。有權存取佈景主題的任何人都可以將佈景主題套用至分析和儀表板，或使用 **Save as (另存新檔)** 來製作自己的佈景主題複本。佈景主題擁有者也可以編輯佈景主題並與其他人分享。

一個分析只能套用一個佈景主題。如果您將佈景主題套用至某個分析 (使用**套用**按鈕)，它會立即為每個人變更 - 分析和儀表板檢視器兩者。若要探索和儲存顏色選項而不套用它們，請避免編輯和儲存已套用的佈景主題。

所有顏色都會有成對的背景和前景顏色。前景顏色是要特別出現在相符背景顏色之上，因此請選擇對比較好的顏色。

下表定義不同的設定。


| Group | 設定 | 設定變更的內容 | 
| --- | --- | --- | 
|  主要   |  主要背景  | 用於視覺效果和其他高強調 UI 的背景顏色。  | 
|  主要   |  主要前景  | 出現在主要背景區域上 (例如格線、邊框、資料表區帶、圖示等) 的文字和其他前景元素的顏色。  | 
|  主要   |  次要背景  |  用於資料表背景和資料表控制項的背景顏色。  | 
|  主要   |  次要前景  | 顯示在次要背景上，用於任何資料表標題、資料表控制項文字或 UI 的前景顏色。 | 
|  主要   |  強調  | 此設定會用作下列項目的互動式提示：[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/themes-in-quicksight.html) | 
|  主要   |  強調前景  | 前景顏色會套用至顯示在強調顏色上的任何文字或其他元素。 | 
| 主要 | Font | 要用於所有文字的字型。您可以選擇 Amazon Quick Sight 支援的各種字型。 | 
|  資料   |  資料顏色  | 這些是為群組指派顏色時，圖表會輪替使用的資料顏色。您可以對此清單新增或移除顏色，或選擇某個顏色來加以變更。 | 
|  資料   |  最小最大漸層  | 使用漸層做為梯度 (例如在熱圖中) 時要使用的預設最小和最大漸層。 | 
|  資料   |  空白填色顏色  | 這是與資料顏色搭配使用的顏色，以表示缺乏資料。例如，此顏色會出現在關鍵效能指標 (KPI) 和規格表中顯示的進度列的空白部分，或用於空白的熱圖儲存格。 | 
|  版面配置   |  邊框  | 此設定會切換目前未選取之視覺效果周圍的邊框。選取的視覺效果的邊框仍會顯示強調顏色。 | 
|  版面配置   |  利潤  | 此設定可切換資料表邊界和視覺效果之間的間距。 | 
|  版面配置   |  Gutter (裝訂邊)  | 此設定會顯示或隱藏格線中視覺效果之間的空間。 | 
|  其他   |  成功  成功前景  | 這些顏色會用於成功的訊息，例如，成功下載的核取記號。 | 
|  其他   |  警告  警告前景  | 這些顏色用於警告和資訊訊息。 | 
|  其他   |  危險  危險前景  | 這些顏色用於錯誤訊息。 | 
|  其他   |  維度  前景尺寸  | 這些顏色用於被識別為維度的欄位名稱。此選項也會設定內嵌儀表板之篩選器面板中維度的顏色。 | 
|  其他   |  量值  量值前景  | 這些顏色用於被識別為量值的欄位名稱。這些顏色也套用於內嵌式儀表板之篩選器面板中量值的顏色。 | 

**佈景主題檢視器和編輯器的簡短導覽**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟分析，或建立新的分析。您必須開啟分析，才能使用佈景主題。不過，套用佈景主題時所看到的視圖只是預覽。

   佈景主題與分析是分開的。即使您儲存佈景主題，也不會對分析進行任何變更。

1. 從應用程式列選擇**編輯**，然後選擇**佈景主題**。佈景主題面板隨即開啟。

1. 佈景主題清單會顯示下列項目：
   + **Applied theme (套用的佈景主題)** 會顯示目前套用至此分析及其儀表板的佈景主題。
   + **My themes (我的佈景主題)** 會顯示您所建立的佈景主題，以及與您分享的佈景主題。
   +  **入門主題**顯示 Amazon Quick Sight 建立的主題。

1. 每個佈景主題都有內容選單，您可以從**…**圖示存取它。

   您可以在每個佈景主題上執行的動作取決於您的存取層級。
   + ****佈景主題擁有者**** - 如果您建立該佈景主題，或某人與您分享該佈景主題並讓您成為擁有者，您可以執行下列動作：
     + **編輯** - 變更佈景主題的設定，並儲存它們。
     + **儲存** - 儲存您對佈景主題所做的變更。如果您編輯套用的佈景主題並儲存變更，新的佈景主題設定會套用至使用它的所有分析和儀表板。在您覆寫套用的佈景主題之前，會顯示一則資訊訊息。
     + **分享** - 分享佈景主題，並將使用者或擁有者許可指派給其他人。
     + **刪除** - 刪除佈景主題。您無法復原此動作。確認刪除之前，會顯示一則資訊訊息。
   + ****佈景主題使用者**** – 如果有人與您共用佈景主題，或是 Amazon Quick Sight 佈景主題，您可以執行下列動作：
     + **套用** - 套用佈景主題至目前分析。此選項也會將佈景主題套用至從分析建立的儀表板。在您覆寫套用的佈景主題之前，會顯示一則資訊訊息。
     + **另存新檔** - 將目前的佈景主題儲存為其他名稱，以便您可以編輯它。
   + ****分析作者**** - 如果您有權存取分析，但無法存取佈景主題，您可以執行下列動作：
     + 您可以看到分析已套用佈景主題。
     + 您可以在 **Themes (佈景主題)** 面板中看到佈景主題。
     + 您可以使用 **Save as (另存新檔)** 來建立您自己的佈景主題複本。
   + ****儀表板檢視器**** - 如果您有權存取儀表板，但無法存取佈景主題，您可以執行下列動作：
     + 您可以看到儀表板已套用佈景主題。
     + 您看不到佈景主題或其設定。儀表板使用者看不到 **Theme (佈景主題)** 面板。

1. 若要探索佈景主題的設定，請選擇左側的圖示以查看顏色的設定。

下列程序會引導您完成佈景主題的建立。您可以從要用來預覽顏色的分析或分析複本開始。或者，您可以開始新的分析。儲存佈景主題後，您可以將佈景主題套用至目前的分析或其他分析。如果您分享它，則其他人也可以使用它。

**使用佈景主題編輯器**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟分析，或建立新的分析。從應用程式列選擇**編輯**，然後選擇**佈景主題**。**佈景主題**面板隨即開啟。

   您必須開啟分析，才能使用佈景主題。不過，套用佈景主題時所看到的視圖只是預覽。佈景主題與分析是分開的。即使您儲存佈景主題，也不會對分析進行任何變更。

1. 選擇 **Main (主要)**。每個設定中使用的顏色挑選器是在整個 Amazon Quick Sight 中使用的標準顏色挑選器。

   設定 **Primary background (主要背景)** 和 **Primary foreground (主要前景)** 的顏色，以在視覺效果和其他高影響 UI 中使用。

   設定 **Secondary background (次要背景)** 和 **Secondary foreground (次要前景)** 的顏色，以在資料表和資料表控制項中使用。

   設定 **Accent (強調)** 和 **Accent foreground (強調前景)** 的顏色，以便在互動式提示中使用，包括按鈕、選取的視覺效果周圍的邊框、載入指示器、旁白自訂、連結，以及內嵌儀表板中的篩選窗格。

1. 選擇**資料**。

   設定要用作資料顏色的 **Colors (顏色)**。指派顏色時，圖表會輪替使用這些顏色。您可以新增或刪除顏色，或藉由拖放來變更顏色的順序。若要變更現有顏色，請選取顏色以開啟顏色編輯器。

   設定使用漸層做為梯度 (例如在熱圖中) 時要使用的 **Min max gradient (最小最大漸層)** 的顏色。

   設定顯示缺乏資料時要使用的 **Empty fill (空白填色)** 顏色，例如，進度列的未填色部分。

1. 選擇 **Layout (版面配置)**。

   啟用或停用 **Border (邊框)** 核取方塊，以顯示或隱藏目前未選取的視覺效果周圍的邊框。

   啟用或停用 **Margin (邊界)** 核取方塊，以顯示或隱藏資料表邊界與視覺效果之間的間距。

   啟用或停用 **Gutter (裝訂邊)** 核取方塊，以顯示或隱藏格線中視覺效果之間的間距。

1. 選擇 **Other (其他)**。

   設定要在成功訊息中使用的 **Success (成功)** 顏色，例如當您成功下載 .csv 檔案時。目前未使用成功前景顏色。

   設定要在警告和資訊訊息中使用的 **Warning (警告)** 顏色。目前未使用警告前景顏色。

   設定要在錯誤訊息中使用的 **Danger (危險)** 顏色。目前未使用危險前景顏色。

   設定要用於被識別為維度的欄位名稱的 **Dimension (維度)** 的顏色。此選項也會設定內嵌儀表板之篩選器面板中維度的顏色。

   設定要用於被識別為量值的欄位名稱的 **Measure (量值)** 的顏色。此選項也會設定內嵌儀表板之篩選器面板中量值的顏色。

1. 若要儲存佈景主題，請選擇**主要**，並為新佈景主題命名，然後選擇瀏覽器右上角的**儲存**。

   儲存佈景主題並不會將它套用至分析，即使您可以看到使用目前分析的顏色預覽。

1. 若要分享佈景主題，請儲存或關閉您正在檢視的佈景主題。在您的佈景主題集合中尋找佈景主題。從內容選單 (…) 選擇**編輯**。

1. 若要套用佈景主題，請儲存或關閉您正在檢視的佈景主題。在您的佈景主題集合中尋找佈景主題。從內容選單 (…) 選擇**套用**。

# 使用鍵盤快速鍵存取 Amazon Quick Sight
<a name="quicksight-accessibility"></a>

您可以使用下列鍵盤快速鍵來導覽 Amazon Quick Sight 儀表板或分析：
+ 使用 `TAB` 鍵可在選單選項或視覺效果之間導覽。
+ 使用 `Shift+TAB` 鍵可向後移至上一個選取項。
+ 使用 `Enter` 鍵可選取視覺效果或選單選項。
+ 使用 `ESC` 鍵可清除視覺效果或選單項目中的選取項。

![\[alt_text\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/keyboard-shortcuts-1.gif)


## 在視覺效果中使用快速鍵
<a name="in-visual-shortcuts"></a>

可以使用 `TAB`、`Shift+TAB` 和 `Enter` 鍵在所選視覺效果中導覽和選取不同欄位。例如，假設您想要使用屬於視覺效果標題一部分的連結。若要執行此作業，請選取想要的視覺效果，然後使用 `TAB` 鍵直至正確選取連結為止。然後，使用 `Enter` 鍵按一下連結。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/keyboard-shortcuts-2.gif)


也可以使用這些鍵盤快速鍵來導覽並進入視覺效果右上角的視覺效果附帶選單。若要執行此作業，請選取想要的視覺效果，然後使用 `TAB` 鍵移至要選取的欄位。如果錯過想要的欄位，請使用 `Shift+TAB` 鍵返回一個欄位。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/keyboard-shortcuts-3.gif)


# 使用儀表板和報告共用和訂閱 Amazon Quick Sight 中的資料
<a name="working-with-dashboards"></a>

*儀表板*是分析的唯讀快照，您可以與其他 Amazon Quick Sight 使用者共用，以供報告之用。當您發布儀表板時，儀表板會保留分析的組態，包括篩選、參數、控制和排序順序。用於分析的資料不會擷取成為儀表板的一部分。當您檢視儀表板時，它會反映分析所使用的資料集的目前資料。

當您共用儀表板時，您可以指定哪些使用者有權存取此儀表板。作為儀表板檢視者的使用者可以檢視和篩選儀表板資料。使用者在檢視儀表板時套用到篩選條件、控制項或排序的任何選項，只存在於使用者檢視儀表板的那段期間，關閉儀表板後，選項並不會儲存下來。作為儀表板擁有的使用者可以編輯和共用儀表板，還可選擇編輯和共用分析。如果您希望他們也能編輯和共用資料集，您可以在分析中這樣設定。

如果使用 Enterprise Edition，您也可以將共用的儀表板內嵌於網站或應用程式。如需內嵌式儀表板的詳細資訊，請參閱 [Amazon Quick Sight 的內嵌分析](embedded-analytics.md)。

請參閱下列各章節，了解如何發布和共用儀表板、訂閱閾值提醒，以及傳送和訂閱儀表板電子郵件報告。

**Topics**
+ [

# 發布儀表板
](creating-a-dashboard.md)
+ [

# 共用 Amazon Quick Sight 儀表板
](sharing-a-dashboard.md)
+ [

# 在儀表板視覺效果中使用快速動作連接器
](action-connectors-in-dashboard-visuals.md)
+ [

# 共用 Amazon Quick Sight 儀表板的檢視
](share-dashboard-view.md)
+ [

# 透過電子郵件排程和傳送 Quick Sight 報告
](sending-reports.md)
+ [

# 在 Amazon Quick Sight 中訂閱電子郵件報告
](subscribing-to-reports.md)
+ [

# 在 Amazon Quick Sight 中使用閾值提醒
](threshold-alerts.md)
+ [

# 列印儀表板或分析
](printing1.md)
+ [

# 將 Amazon Quick Sight 分析或儀表板匯出為 PDFs
](export-dashboard-to-pdf.md)
+ [

# 失敗的 PDF 匯出工作的錯誤代碼
](qs-reports-error-codes.md)
+ [

# 將資產組織到 Amazon Quick Sight 的資料夾
](folders.md)

# 發布儀表板
<a name="creating-a-dashboard"></a>

當您發佈分析時，該分析會成為儀表板，可供 Amazon Quick 帳戶的使用者共用和互動，或在某些情況下與不在您帳戶中的匿名使用者互動。您可以選擇發布分析的一個工作表、多個分析中的所有工作表或您想要的任何其他工作表的組合。當您發布互動式工作表時，該工作表會成為使用者可以與之互動的互動式儀表板。當您發佈像素完美報告工作表時，工作表會成為像素完美報告，當您在 Amazon Quick Sight 中排程報告時，會產生並儲存報告資料的快照。您可以發佈儀表板，其中包含來自相同分析的任意互動式工作表和像素完美報告的組合。

如需關於排程報告的詳細資訊，請參閱 [透過電子郵件排程和傳送 Quick Sight 報告](sending-reports.md)。

如需檢視報告快照的詳細資訊，請參閱 [在 Amazon Quick Sight 中使用像素完美報告](qs-reports-consume-reports.md)。

使用下列程序來發布和選擇性地共用儀表板。您也可以使用此程序來重新命名已發布的儀表板。重新命名的儀表板會保留其安全性和以電子郵件傳送的報告設定。

1. 開啟您要使用的分析。選擇**發布**。

1. 執行以下任意一項：
   + 若要建立新的儀表板，請選擇**新建儀表板**，然後輸入儀表板名稱。
   + 若要取代現有的儀表板，請執行下列作業之一。取代儀表板會更新儀表板，但不變更安全性或以電子郵件傳送的報告設定。
     + 若要以您的變更來更新儀表板，請選擇 **Replace an existing dashboard (取代現有的儀表板)**，然後從清單中選擇儀表板。
     + 若要重新命名儀表板，請選擇**取代現有儀表板**，從清單中選擇儀表板，然後選取鉛筆圖示。輸入新名稱以重新命名現有儀表板，然後按一下核取記號或按下 Enter 鍵予以確認。儀表板重新命名並發布後，它也會儲存您對分析所做的任何變更。在您**發布**儀表板之前，對分析或儀表板所做的變更皆不會保存。必須先發布儀表板的初始版本，才能將其重新命名。

1. (選用) 在**工作表**下拉式清單中選擇要發布的工作表。當您選取要加入至新儀表板的工作表時，下拉式清單會顯示為發布而選取的工作表數目。預設選項為**已選取所有工作表**。

   如果要取代現有儀表板，則會在下拉式清單中預先選取已發布至現有儀表板的工作表 (從之前未發布過的分析進行發布的情況除外)。您可以透過從下拉式清單中選取或取消選取工作表來對此進行變更。

1. (選用) 在備註區段中新增對所做變更的註解，這些註解可在[版本歷史記錄](publishing-a-previous-dashboard-version.md)下檢視。

1. (選用) 若要允許儀表板讀者共用資料故事，請選擇**允許共用資料故事**。如需有關資料故事的詳細資訊，請參閱[在 Amazon Quick Sight 中使用資料案例](working-with-stories.md)。

1. (選用) 開啟**更多設定**。只有在新儀表板中至少有一個工作表是互動式工作表時，才能使用這些選項。
**注意**  
這是一個可捲動的視窗。在 **Publish a dashboard (發布儀表板)** 視窗中向下捲動來檢視所有可用選項。

   (選用) 您可以關閉幾個選項，以簡化此儀表板的使用體驗，如下所示：
   + 針對 **Dashboard options (儀表板選項)**：
     + 將 **Expand on-sheet controls by default (根據預設展開資料表上的控制項)** 保持在清除狀態，以顯示簡化後的檢視。此選項根據預設為停用。若要根據預設顯示控制項，請開啟此選項。
     + 清除 **左側窗格的 Enable advanced filtering (啟用進階篩選)** 移除儀表板檢視器自行篩選資料的功能。如果他們建立自己的篩選條件，篩選條件只會在使用者檢視儀表板時存在。篩選條件無法儲存或重複使用。
     + 清除**啟用懸停顯示型工具提示**以關閉工具提示。
   + 針對 **Visual options (視覺效果選項)**：
     + 清除**啟用視覺化選單**，來完全關閉視覺效果上的選單。
     + 如果您的儀表板檢視者不需要能夠從儀表板的視覺效果下載資料，請清除**啟用 CSV 下載**。CSV 檔案只包含他們下載當時，視覺效果中可見的內容。檢視者可在每個個別的視覺效果上使用視覺效果附帶功能表來下載資料。
     + 清除**啟用最大化視覺化選項**來關閉將視覺效果放大以填滿畫面的能力。
   + 針對 **Data point options (資料點選項)**：
     + 如果您的儀表板並未提供可切入的欄位階層，請清除 **Enable drill up/down (啟用向上/向下切入)**。
     + 清除**啟用點選顯示型工具提示**來關閉讀者選擇 (按一下) 資料點時出現的工具提示。
     + 清除**啟用排序選項**來關閉排序控制項。

1. 選擇**發布儀表板**。

   如已重新命名現有的儀表板，畫面頂端會重新整理以顯示新的名稱。

1. (選擇性) 執行下列操作：
   + 若要在不共用的情況下發布儀表板，請在顯示**與使用者共用儀表板**畫面時選擇右上角的 **x**。之後您可以隨時在應用程式列選擇**檔案 > 共用**，以共用儀表板。
   + 若要共用儀表板，請依照[共用 Amazon Quick Sight 儀表板](sharing-a-dashboard.md)中的程序進行。

   完成以下步驟後，您建立和共用儀表板也就完成。儀表板訂閱者會收到電子郵件，內含儀表板的連結。群組不會收到邀請電子郵件。

# 複製 Amazon Quick Sight 儀表板
<a name="copying-a-dashboard"></a>

如果您在現有儀表板上擁有共同擁有者存取權限或**另存新檔**權限，則可以複製它。若要執行此操作，請從儀表板建立新的分析，然後從您複製的分析建立新儀表板。

當您將原始儀表板另存為新的分析後，您可以與其他使用者共用新的分析，以便在儀表板上協作合作。例如，您可以使用此工作流程來保留儀表板的生產版本，同時還開發或測試其新版本。

**若要複製儀表板**

1. 登入快速，然後從首頁選擇**儀表板**。

1. 開啟您要複製的儀表板。

1. 在右上角，選擇**另存新檔**，然後輸入新分析的名稱。當您使用**另存新檔**儲存現有的儀表板時，將會根據儀表板建立分析。
**注意**  
如果看不到**另存新檔**，則請向您的管理員確認您擁有正確的許可。

1. (選用) 變更新的分析。

1. (選用) 您可以與其他使用者共用分析，以協同合作完成變更。所有具備存取權的使用者都可以變更新的分析。

   若要與其他使用者共用分析，請從頁面右上角選擇**共用**，然後選擇**共用分析**。

1. (選用) 選擇**共用**來以您對新分析所做的變更建立新儀表板，然後選擇**發布儀表板**。

如需詳細資訊，請參閱下列內容：
+ [共用 Amazon Quick Sight 儀表板](sharing-a-dashboard.md)
+ [共用 Quick Sight 分析](sharing-analyses.md)

# 刪除 Amazon Quick Sight 儀表板
<a name="deleting-a-dashboard"></a>

當您刪除 Amazon Quick Sight 儀表板時，儀表板會從您的帳戶和儀表板所屬的所有資料夾永久移除。您無法再存取已刪除的儀表板。您只能刪除您擁有或共同擁有的儀表板。使用以下程序來刪除儀表板。

**若要刪除儀表板**

1. 在 Amazon Quick 首頁的**儀表板**索引標籤上，選擇您要刪除之儀表板上的詳細資訊圖示 （垂直點 ⋮)。

1. 選擇 **刪除**。然後，再次選擇**刪除**，以確認您要刪除此儀表板。刪除儀表板的動作會從您的帳戶中永久刪除儀表板，並且儀表板將從其所屬的所有資料夾中消失。您仍然可以從中發布已刪除儀表板的分析存取和建立其他儀表板。

# 發佈舊版的 Amazon Quick Sight 儀表板
<a name="publishing-a-previous-dashboard-version"></a>

每次更新並發佈分析時，都會建立新的 Amazon Quick Sight 儀表板版本。若要還原至先前版本的儀表板，可以在儀表板的**版本歷史記錄**下進行搜尋，並發布您感興趣的先前版本。每個儀表板最多可存放 1,000 個版本，且這些版本會永久保存。請依下列程序，發布舊版本的儀表板。

**發布舊版本的儀表板**

1. 在 Amazon Quick 首頁的**儀表板**索引標籤上，選擇您要管理的儀表板。

1. 選擇右側工具列上的**版本歷史記錄**。目前發布的儀表板版本以及先前的可用版本將顯示在清單中。在備註區段中新增的任何註解都會與各版本一起顯示。

1. 選取您感興趣的儀表板版本。您可以查看此版本的發布時間，以及發布此版本的使用者。

1. 若要還原至此版本，請選取**發布**。按一下**確認**以發布版本。

# 共用 Amazon Quick Sight 儀表板
<a name="sharing-a-dashboard"></a>

根據預設，Amazon Quick Sight 中的儀表板不會與任何人共用，只有擁有者才能存取。不過，發佈儀表板之後，您可以與 Amazon Quick 帳戶中的其他使用者或群組共用儀表板。您也可以選擇與快速帳戶中的每個人共用儀表板，並讓該儀表板在您帳戶中所有使用者的快速首頁上可見。此外，您可以複製儀表板的連結，以便與具有存取權的其他人共用。

**重要**  
有權存取儀表板的使用者也可以查看用於關聯分析的資料。

共用儀表板之後，您可以檢閱有權存取此儀表板的其他使用者或群組，並其存取類型。您可以撤銷任何使用者對儀表板的存取權。您也可以從中將自己刪除。

您還可以複製儀表板或視覺內嵌程式碼並將其貼到您的應用程式中，將互動式儀表板和視覺效果嵌入網站和應用程式中。如需詳細資訊，請參閱[使用一鍵式內嵌程式碼為已註冊使用者內嵌 Amazon Quick Sight 視覺效果和儀表板](embedded-analytics-1-click.md)。

# 授予儀表板的存取權
<a name="share-a-dashboard"></a>

您可以與您帳戶中的特定使用者或群組，或與您 Amazon Quick 帳戶中的每個人共用儀表板和視覺效果。或者與網際網路上的任何人進行共用。您可以使用 Quick 主控台或 Quick Sight API 來共用儀表板和視覺效果。對共用視覺效果的存取權取決於為視覺效果所屬之儀表板設定的共用設定。若要將視覺效果共用和嵌入您的網站或應用程式，請調整其所屬儀表板的共用設定。如需詳細資訊，請參閱下列內容：
+ [授予個別 Amazon Quick Sight 使用者和群組對 Amazon Quick Sight 中儀表板的存取權](share-a-dashboard-grant-access-users.md)
+ [授予 Amazon Quick Sight 帳戶中的每個人存取儀表板的權限](share-a-dashboard-grant-access-everyone.md)
+ [授予網際網路上任何人存取 Amazon Quick Sight 儀表板的權限](share-a-dashboard-grant-access-anyone.md)
+ [使用 Quick Sight API 授予 Amazon Quick 帳戶中的每個人對儀表板的存取權](share-a-dashboard-grant-access-everyone-api.md)
+ .[使用 Quick Sight API 授予網際網路上任何人對 Amazon Quick Sight 儀表板的存取權](share-a-dashboard-grant-access-anyone-api.md)

# 授予個別 Amazon Quick Sight 使用者和群組對 Amazon Quick Sight 中儀表板的存取權
<a name="share-a-dashboard-grant-access-users"></a>

使用下列程序來授予使用者對儀表板的存取權。

**若要授予使用者或群組對儀表板的存取權**

1. 開啟已發布的儀表板，然後選擇右上角的**共用**。然後選擇**共用儀表板**。

1. 在開啟的**共用儀表板**頁面中，執行下列動作：

   1. 對於左側的**邀請使用者和群組到儀表板**，請在搜尋方塊中輸入使用者電子郵件或群組名稱。

      任何符合您查詢的使用者或群組，皆會在搜尋方塊下方的清單中顯示。只有作用中的使用者和群組會顯示在清單中。

   1. 對於您要授予儀表板存取權的使用者或群組，請選擇**新增**。然後選擇您希望他們擁有的許可層級。

      您可以根據使用者的快速角色選取**檢視器**或**共同擁有者**。每個角色的可用許可如下：
      + **讀者** – 快速讀者只能被授予**瀏覽**者存取儀表板的權限。他們可以對儀表板進行檢視、匯出和列印，但無法將儀表板儲存為分析。使用者可以檢視、篩選和排序儀表板資料。他們也可以使用儀表板上的任何控制項或自訂動作。他們對儀表板所做的任何變更，只存在於他們檢視儀表板的那段期間，關閉儀表板後，變更並不會儲存下來。
      + **作者** – 快速作者可以被授予**瀏覽者**或**共同擁有者**對儀表板的存取權。
        + 具有檢視者存取權的作者可以檢視、匯出和列印儀表板。使用者可以檢視、篩選和排序儀表板資料。他們也可以使用儀表板上的任何控制項或自訂動作。他們對儀表板所做的任何變更，只存在於他們檢視儀表板的那段期間，關閉儀表板後，變更並不會儲存下來。

          但是，除非儀表板擁有者另行指定，否則其可以將儀表板儲存為分析。此權限授予使用者對資料集的唯讀存取權，使其可以從資料集建立新的分析。擁有者可以選擇提供對於分析的相同許可給他們。如果擁有者希望他們也能編輯和共用資料集，則可以在分析內這樣設定。
        + 具有共同擁有者存取權的作者可以對儀表板進行檢視、匯出和列印。他們還可以對其進行編輯、公用和刪除。除非儀表板擁有者另行指定，否則他們還可以將儀表板另存為分析。此權限授予使用者對資料集的唯讀存取權，使其可以從資料集建立新的分析。擁有者可以選擇提供對於分析的相同許可給他們。如果擁有者希望他們也能編輯和共用資料集，可以在分析內這樣設定。
      + **群組** – 快速群組只能授予**檢視者**存取儀表板的權限。他們可以對儀表板進行檢視、匯出和列印，但無法將儀表板儲存為分析。

      將使用者或群組新增至儀表板後，您可以在**使用者和群組**底下的**管理許可**區段中查看使用者或群組的相關資訊。您可以查看他們的使用者名稱、電子郵件、許可層級和「另存新檔」權限。

      若要允許使用者或群組將儀表板另存新檔為分析，請在**另存新檔為分析**欄中開啟**允許「另存新檔」**。

   1. 若要將更多使用者新增至儀表板，請在搜尋方塊中輸入其他使用者電子郵件或群組名稱，並重複步驟 A 和 B。

# 授予 Amazon Quick Sight 帳戶中的每個人存取儀表板的權限
<a name="share-a-dashboard-grant-access-everyone"></a>

或者，您可以與帳戶中的每個人共用 Amazon Quick Sight 儀表板。執行此操作時，您帳戶中的每個人都可以存取儀表板，即使沒有對其單獨授予存取權和讓其取得分配的許可亦是如此。如果他們具有指向儀表板的連結 (由您共用) 或嵌入儀表板，則他們可以存取該儀表板。

與帳戶中的所有人共用儀表板不會影響電子郵件報告。例如，假設您選擇與帳戶中的所有人共用儀表板。還假設您在為相同儀表板設定電子郵件報告時，選擇 **Send email report to all users with access to dashboard**。在此情況下，電子郵件報告只會傳送給擁有儀表板存取權的人員。他們可以透過明確與其共用、透過群組或透過共用資料夾來接收存取權。

**若要授權您帳戶中的每個人都可以存取儀表板**

1. 開啟已發布的儀表板，然後選擇右上角的**共用**。然後選擇**共用儀表板**。

1. 在開啟的**共用儀表板**頁面中，針對左下角的**啟用存取**，開啟**此帳戶中的每個人**。使用 Active Directory 登入的帳戶無法存取**此帳戶中的每個人**開關。使用 Active Directory 的帳戶可以透過 `UpdateDashboardPermissions` API 呼叫啟用此設定。如需 的詳細資訊`UpdateDashboardPermissions`，請參閱《*Amazon Quick Sight API 參考*》中的 [UpdateDashboardPermissions](https://docs.aws.amazon.com//quicksight/latest/APIReference/API_UpdateDashboardPermissions.html)。

1. （選用） 在 **Quick Sight 中切換可探索**。

   當您與帳戶中的每個人共用儀表板時，擁有者也可以選擇在 Quick Sight 中探索儀表板。可探索的儀表板會出現在每個人的儀表板清單中的**儀表板**頁面上。開啟此選項後，帳戶中的每個人皆可查看和搜尋儀表板。關閉此選項後，他們只能在具有連結或嵌入儀表板的情況下對儀表板進行存取。儀表板不會顯示在**儀表板**頁面上，且使用者無法搜尋儀表板。

# 授予網際網路上任何人存取 Amazon Quick Sight 儀表板的權限
<a name="share-a-dashboard-grant-access-anyone"></a>


|  | 
| --- |
|  適用於：企業版  | 

您也可以從 Amazon Quick 主控台的共用功能表，與網際網路上的任何人**共用** Amazon Quick Sight 儀表板。當您這樣做時，當您共享儀表板連結或嵌入儀表板時，網際網路上的任何人都可以存取儀表板，即使他們不是您快速帳戶中的註冊使用者。

在您共用儀表板時，請使用下列區段授權網際網路上的任何人存取儀表板。

**Topics**
+ [

# 開始之前
](share-a-dashboard-grant-access-anyone-prerequisites.md)
+ [

# 授權網際網路上的任何人存取儀表板
](share-a-dashboard-grant-access-anyone-access.md)
+ [

# 更新公開共用的儀表板
](share-a-dashboard-grant-access-anyone-update.md)
+ [

# 關閉公開共用設定
](share-a-dashboard-grant-access-anyone-no-share.md)

# 開始之前
<a name="share-a-dashboard-grant-access-anyone-prerequisites"></a>

在與網際網路上的任何人共用儀表板之前，請務必執行下列動作：

1. 在帳戶上開啟工作階段容量定價。如果您尚未開啟帳戶的工作階段容量定價，則無法更新帳戶的公開共用設定。

1. 在 IAM 主控台中將公開共用許可指派給管理使用者。您可以使用新策略來新增這些許可，也可以將新許可新增至現有使用者。

   下列範例政策提供搭配 `UpdatePublicSharingSettings` 使用的許可。

------
#### [ JSON ]

****  

   ```
   {
   "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Action": "quicksight:UpdatePublicSharingSettings",
               "Resource": "*",
               "Effect": "Allow"
           }
       ]
   }
   ```

------

   不希望具有管理員存取權的使用者使用此功能的帳戶，可以新增拒絕公開共用許可的 IAM 政策。下列範例政策拒絕搭配 `UpdatePublicSharingSettings` 使用的許可。

------
#### [ JSON ]

****  

   ```
   {
   "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Action": "quicksight:UpdatePublicSharingSettings",
               "Resource": "*",
               "Effect": "Deny"
           }
       ]
   }
   ```

------

   如需搭配 Quick Sight 使用 IAM 的詳細資訊，請參閱 [使用 Quick 搭配 IAM](security_iam_service-with-iam.md)。

   如果您不希望組織中的任何帳戶具有公開共用功能，也可以使用「拒絕」策略作為服務控制政策 (SCP)。如需詳細資訊，請參閱《AWS Organizations 使用者指南》**中的[服務控制政策 (SCP)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html)。

1. 在您的 Amazon Quick 帳戶上開啟公開共用。

   1. 從 Amazon Quick 開始頁面，選擇瀏覽器視窗右上角的使用者圖示，然後選擇**管理快速**。

   1. 在開啟的頁面中，向下捲動至**許可**區段。

   1. 選擇對左側**儀表板的公開存取**。

   1. 在開啟的頁面上，選擇**網際網路上的任何人**。

      當您開啟此設定時，將出現一個快顯視窗，要求您確認您的選擇。確認選擇後，您可以授予公眾對特定儀表板的存取權，並透過連結或將儀表板嵌入到公用應用程式、Wiki 或入口網站中，與他們共用這些儀表板。

# 授權網際網路上的任何人存取儀表板
<a name="share-a-dashboard-grant-access-anyone-access"></a>

**若要授權網際網路上的任何人存取儀表板**

1. 在快速中，開啟您要共用的已發佈儀表板。您必須是儀表板的擁有者或共同擁有者。

1. 在已發布的儀表板中，選擇右上角的**共用**圖示，然後選擇**共用儀表板**。

1. 在開啟的**共用儀表板**頁面中，選擇左下角的**啟用存取**區段中的**網際網路上的任何人 (公有)**。

   此設定可讓您透過共用連結或內嵌方式，與網際網路上的任何人共用儀表板。開啟此切換也會自動開啟**此帳戶中的每個人**選項，這表示儀表板將與您快速帳戶中的任何人共用。如果您不想這樣，請關閉此選項。

1. 在出現的**允許公開存取**快顯視窗中，在方塊中輸入 `confirm` 以確認您的選擇，然後選擇**確認**。

確認儀表板的存取設定後，Amazon Quick 主控台中儀表板右上角會顯示橘色 **PUBLIC** 標籤。此外，Quick Sight 儀表板頁面的儀表板上會顯示眼睛圖示，包括並排和清單檢視。

請注意，開啟公開存取時，只能使用連結或使用內嵌程式碼嵌入方式存取儀表板。如需共用儀表板連結的詳細資訊，請參閱 [共享共用儀表板的連結](share-a-dashboard-share-link.md)。如需有關為網際網路上任何人嵌入儀表板的詳細資訊，請參閱 [使用一鍵式內嵌程式碼為匿名使用者內嵌 Amazon Quick Sight 視覺效果和儀表板](embedded-analytics-1-click-public.md)。

# 更新公開共用的儀表板
<a name="share-a-dashboard-grant-access-anyone-update"></a>

使用下列程序來更新網際網路上任何人皆可存取的共用儀表板。

**若要更新公有儀表板：**

1. 從 Amazon Quick Start 頁面中，選擇與您要更新之儀表板繫結的分析，並進行所需的變更。您必須是分析的擁有者或共同擁有者。

1. 在分析中，選擇**發布**。

1. 在出現的快顯視窗中，選擇**取代現有的儀表板**，然後選取您要更新的公有儀表板。

1. 若要確認您的選擇，請輸入 `confirm` 然後選擇**發布儀表板**。

   選擇**發布儀表板**後，您的公有儀表板就會更新以反映新的變更。

# 關閉公開共用設定
<a name="share-a-dashboard-grant-access-anyone-no-share"></a>

您可以隨時關閉儀表板的公開共用設定。您可以關閉個別儀表板或帳戶中所有儀表板的公開共用功能。視覺效果共用設定是在儀表板層級決定的。如果您關閉包含您正嵌入的視覺效果的儀表板的公開共用設定，則使用者將無法存取視覺效果。

下表說明儀表板何時可公開使用的不同案例。


| 帳戶層級的公開設定 | 儀表板層級的公開設定 | 公用存取 | 視覺效果指示器 | 
| --- | --- | --- | --- | 
|  關閉  |  關閉  |  關閉  |  無  | 
|  On  |  關閉  |  關閉  |  無  | 
|  On  |  On  |  是  |  儀表板上會顯示橙色徽章，且**儀表板**頁面的儀表板上會出現一個眼睛圖示。  | 
|  關閉  |  On  |  否  |  儀表板上會顯示灰色徽章，且**儀表板**頁面的儀表板上會出現一個帶有斜線的眼睛圖示。儀表板的公開存取權最多可能需要兩分鐘才會撤銷。  | 

**若要關閉單一儀表板的公開共用**

1. 在 Amazon Quick 中，開啟您不再想要共用的已發佈儀表板。您必須是儀表板的擁有者或共同擁有者。

1. 在已發布的儀表板中，選擇右上角的**共用**圖示，然後選擇**共用儀表板**。

1. 在開啟的**共用儀表板**頁面中，關閉左下角的**啟用存取**區段中的**網際網路上的任何人 (公有)** 開關。

   此動作將移除儀表板的公開存取權。現在只有共用的使用者才能存取它。

**若要關閉快速使用者帳戶中所有儀表板的公開共用設定**

1. 從 Amazon Quick 開始頁面，選擇瀏覽器視窗右上角的使用者圖示，然後選擇**管理快速**。

1. 在開啟的頁面中，向下捲動至**許可**區段。

1. 選擇對左側**儀表板的公開存取**。

1. 在開啟的頁面上，關閉**網際網路上的任何人**開關。

   當您從**公有共用**選單中停用公有共用設定時，會出現一個快顯視窗，要求您確認您的選擇。選取**我已閱讀並確認這項變更**，然後選擇**確認**以確認您的選擇。

   此動作將移除帳戶中所有儀表板的公開存取權。網際網路上任何人都可以看到的儀表板，現在只有每個儀表板共用的使用者才能存取。已開啟其公開設定的個別儀表板會有一個灰色徽章，而**儀表板** 頁面上顯示的眼睛圖示上會有劃線，表示帳戶層級的公有設定已停用，且無法檢視儀表板。儀表板的公開存取權最多可能需要兩分鐘才會撤銷。

如果您的工作階段容量定價訂閱已過期，則會自動從您的帳戶移除公開共用設定。續訂您的訂閱以恢復對公開共用設定的存取權。

# 使用 Quick Sight API 授予 Amazon Quick 帳戶中的每個人對儀表板的存取權
<a name="share-a-dashboard-grant-access-everyone-api"></a>


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

或者，您可以使用 `UpdateDashboardPermissions`操作，透過 Quick Sight API 授予帳戶中的每個人對儀表板的存取權。

下列範例 API 請求說明如何使用 AWS CLI 命令執行此操作。它會授予您帳戶中儀表板上的連結許可，並允許執行下列操作：`DescribeDashboard`、`QueryDashboard` 和 `ListDashboard`。

```
aws quicksight update-dashboard-permissions \
--aws-account-id account-id \
--region aws-directory-region \
--dashboard-id dashboard-id \
--grant-link-permissions 
	Principal="arn:aws:quicksight:aws-directory-region:account-id:namespace/default",
	Actions="quicksight:DescribeDashboard, quicksight:QueryDashboard, 
	quicksight:ListDashboardVersions"
```

上述請求的回應看起來類似以下內容。

```
{
		"Status": 200,
		"DashboardArn": "arn:aws:quicksight:AWSDIRECTORYREGION:ACCOUNTID:dashboard/
		DASHBOARDID",
		"DashboardId": "DASHBOARDID",
		"LinkSharingConfiguration": {
			"Permissions": [
				{
					"Actions": [
						"quicksight:DescribeDashboard",
						"quicksight:ListDashboardVersions",
						"quicksight:QueryDashboard"
					],
					"Principal": "arn:aws:quicksight:AWSDIRECTORYREGION:ACCOUNTID:namespace/default"
				}
			]
		},
		"Permissions": [
			// other dashboard permissions here
		],
		"RequestId": "REQUESTID"
	}
```

您也可以使用相同的 API 操作防止帳戶中的所有使用者存取儀表板。下列範例要求說明如何使用 CLI 命令。

```
aws quicksight update-dashboard-permissions \
--aws-account-id account-id \
--region aws-directory-region \
--dashboard-id dashboard-id \
--revoke-link-permissions 
	Principal="arn:aws:quicksight:aws-directory-region:account-id:namespace/default",
	Actions="quicksight:DescribeDashboard, quicksight:QueryDashboard, 
	quicksight:ListDashboardVersions"
```

如需詳細資訊，請參閱《*Amazon Quick API 參考*》中的 [UpdateDashboardPermissions](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_UpdateDashboardPermissions.html)。

當快速使用者帳戶中的所有使用者都獲得儀表板的存取權時，下列程式碼片段會新增至 AWS CloudTrail 日誌，做為 `eventName` `UpdateDashboardAccess`和 `eventCategory` 的一部分`Management`。

```
"linkPermissionPolicies": 
	[
		{
			"principal": "arn:aws:quicksight:AWSDIRECTORYREGION:ACCOUNTID:
							namespace/default",
			"actions": 
			[
				"quicksight:DescribeDashboard",
				"quicksight:ListDashboardVersions",
				"quicksight:QueryDashboard"
			]
		}
	]
```

# 使用 Quick Sight API 授予網際網路上任何人對 Amazon Quick Sight 儀表板的存取權
<a name="share-a-dashboard-grant-access-anyone-api"></a>

或者，您可以使用 `UpdateDashboardPermissions`操作，透過 Amazon Quick Sight API 授予網際網路上任何人對儀表板的存取權。

開始之前，請務必授權您帳戶中的所有人員存取儀表板。如需詳細資訊，請參閱[使用 Quick Sight API 授予 Amazon Quick 帳戶中的每個人對儀表板的存取權](share-a-dashboard-grant-access-everyone-api.md)。

下列範例 API 請求說明如何使用 CLI AWS 命令授予網際網路上任何人對儀表板的存取權。它會授予您帳戶中儀表板上的連結許可，並允許執行下列操作：`DescribeDashboard`、`QueryDashboard` 和 `ListDashboardVersions`。

```
aws quicksight update-dashboard-permissions 
--aws-account-id account-id 
--region aws-directory-region
--dashboard-id dashboard-id
--grant-link-permissions 
Principal="arn:aws:quicksight:::publicAnonymousUser/*",
Actions="quicksight:DescribeDashboard, quicksight:QueryDashboard, 
quicksight:ListDashboardVersions"
```

上述請求的回應看起來類似以下內容。

```
{
    "Status": 200,
    "DashboardArn": "arn:aws:quicksight:AWSDIRECTORYREGION:ACCOUNTID:dashboard/
    DASHBOARDID",
    "DashboardId": "DASHBOARDID",
    "LinkSharingConfiguration": {
        "Permissions": [
            {
                "Actions": [
                    "quicksight:DescribeDashboard",
                    "quicksight:ListDashboardVersions",
                    "quicksight:QueryDashboard"
                ],
                "Principal": "arn:aws:quicksight:AWSDIRECTORYREGION:ACCOUNTID:namespace/default"
            },
                "Principal": "arn:aws:quicksight:::publicAnonymousUser/*",
                "Actions": [
                    "quicksight:DescribeDashboard",
                    "quicksight:ListDashboardVersions",
                    "quicksight:QueryDashboard"
                ]
            }
        ]
    },
    "Permissions": [
        // other dashboard permissions here
    ],
    "RequestId": "REQUESTID"
}
```

您也可以使用相同的 API 操作防止網際網路上的任何人存取儀表板。下列範例要求說明如何使用 CLI 命令。

```
aws quicksight update-dashboard-permissions \
--aws-account-id account-id \
--region aws-directory-region \
--dashboard-id dashboard-id \
--revoke-link-permissions 
Principal="arn:aws:quicksight:::publicAnonymousUser/*",
Actions="quicksight:DescribeDashboard, quicksight:QueryDashboard, 
quicksight:ListDashboardVersions"
```

如需詳細資訊，請參閱《*Amazon Quick API 參考*》中的 [UpdateDashboardPermissions](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_UpdateDashboardPermissions.html)。

當網際網路上的任何人獲得儀表板的存取權時，下列程式碼片段會新增至 AWS CloudTrail 日誌，做為 `eventName` `UpdateDashboardAccess`和 `eventCategory` 的一部分`Management`。

```
"linkPermissionPolicies": 
	[
		{
			"principal": "arn:aws:quicksight:::publicAnonymousUser/*",
			"actions": 
			[
				"quicksight:DescribeDashboard",
				"quicksight:ListDashboardVersions",
				"quicksight:QueryDashboard"
			]
		}
	]
```

# 共享共用儀表板的連結
<a name="share-a-dashboard-share-link"></a>

授予使用者對儀表板的存取權後，您可以複製該儀表板的連結並傳送給他們。任何具有儀表板存取權的人都可以存取連結並查看儀表板。

**若要將儀表板連結傳送給使用者**

1. 開啟已發布的儀表板，然後選擇右上角的**共用**。然後選擇**共用儀表板**。

1. 在開啟的**共用儀表板**頁面中，選擇左上角的**複製連結**。

   儀表板連結已複製到您的剪貼簿。它應類似以下內容，

   `https://quicksight.aws.amazon.com/sn/accounts/accountid/dashboards/dashboardid?directory_alias=account_directory_alias`

   有權存取此儀表板的使用者和群組 （或您快速帳戶中的所有使用者） 可以使用連結來存取它。如果他們第一次存取 Quick，系統會要求他們使用其電子郵件地址或帳戶的 Quick 使用者名稱和密碼登入。登入後，他們便可存取儀表板。

# 檢視可存取共用儀表板的人員
<a name="view-users-dashboard"></a>

使用下列程序來查看哪些使用者或群組有權存取儀表板。

1. 開啟已發布的儀表板，然後選擇右上角的**共用**。然後選擇**共用儀表板**。

1. 在開啟的**共用儀表板**頁面中的**管理許可**下，檢閱使用者和群組及其角色和設定。

   您可以在右上角的搜尋方塊中輸入名稱或其中任何部分，以尋找特定的使用者或群組。搜尋區分大小寫，而且不支援萬用字元。刪除搜尋詞彙可傳回檢視給所有使用者。

# 撤銷共用儀表板的存取權
<a name="revoke-access-to-a-dashboard"></a>

使用下列程序來撤銷使用者對儀表板的存取權。

**若要撤銷使用者對儀表板的存取權**

1. 開啟儀表板，然後選擇右上角的**共用**。然後選擇**共用儀表板**。

1. 在開啟的**共用儀表板**頁面中的**管理許可**下，找出您要移除的使用者，然後選擇最右邊的刪除圖示。

# 在儀表板視覺效果中使用快速動作連接器
<a name="action-connectors-in-dashboard-visuals"></a>

## 先決條件
<a name="action-connectors-in-dashboards-prerequisites"></a>

開始之前，請務必[建立至少一個動作連接器](builtin-services-integration.md)。

連接器必須符合下列要求：
+ 使用**使用者身分驗證**驗證方法
+ 使用下列其中一個整合：
  + Atlassian Jira 雲端
  + Microsoft Outlook
  + Microsoft Teams
  + Salesforce
  + ServiceNow
  + Slack

## 在儀表板上啟用快速動作以使用動作連接器
<a name="enable-quick-actions-on-dashboards"></a>

**在儀表板上啟用快速動作以使用動作連接器**

1. 如果儀表板存在，請前往儀表板的來源分析。否則，[請建立新的分析](quickstart-createanalysis.md)。

1. 選擇**發布**。

1. 選擇**新增儀表板**或**取代現有儀表板**。

1. 選擇**儀表板選項**下的**啟用快速動作**核取方塊。

1. 選擇**發布儀表板**。

## 在視覺效果上使用動作連接器
<a name="use-action-connectors-on-visuals"></a>

**在視覺效果上使用動作連接器**

1. 在開啟**啟用快速動作**發佈選項的情況下開啟儀表板。

1. 將滑鼠游標移至視覺效果上。

1. 選擇閃電圖示。

1. 功能表隨即出現，其中包含所有支援的動作連接器和動作清單。

1. 從清單中選擇所需的動作。

1. 如果您之前沒有使用連接器，或者先前的登入憑證已過期，則會顯示身分驗證模式。為您的組織使用適當的登入資料登入。

1. **動作**表單會出現在右側窗格中。

1. 輸入您需要包含在 動作中的所有資訊。

1. 有些欄位允許包含自動填入值。選擇**自動填入**以開啟選單。選擇您需要的值，這些值會新增至您輸入的文字。
   + **今天的日期**：注入今天的日期
   + **視覺效果名稱**：注入視覺效果名稱
   + **全部**：注入上述兩者

1. 有些動作支援包含附件的功能。您可以選取視覺化影像核取方塊，選擇性地以這些動作連接**視覺化影像**。

1. 選取表單底部的動作按鈕以叫用動作。

## 安全性和自訂
<a name="dashboard-security-and-customizations"></a>

**自訂許可/功能自訂**
+ **動作**功能：如果您的使用者或角色受到使用動作功能的許可限制，則無法查看或使用動作

若要進一步了解自訂許可，請參閱[在 Amazon Quick 中建立自訂許可設定檔](create-custom-permissions-profile.md)。

**資料列層級安全性 (RLS)/資料欄層級安全性 (CLS)**
+ 您無法在以使用 RLS 或 CLS 的資料集為基礎的視覺效果上看到或使用動作。

若要進一步了解 RLS，請參閱[在 Amazon Quick 中使用資料列層級安全性](row-level-security.md)。

若要進一步了解 CLS，請參閱[使用資料欄層級安全性來限制對資料集的存取](row-level-security.md)。

**儀表板發佈選項**
+ 啟用快速動作
  + 在停用**啟用快速**動作發佈選項的情況下發佈的儀表板視覺效果上，您無法查看或使用動作。

若要進一步了解儀表板發佈選項，請參閱[發佈儀表板](creating-a-dashboard.md)。

## 限制
<a name="action-connectors-on-dashboard-limitations"></a>

**Visual Image 連接支援**

下列視覺效果類型不支援影像附件：
+ 高圖表 （使用 HTML 時）
+ ML Insights （使用 HTML 時）
+ 文字方塊和洞見 （使用 HTML 時）
+ 自訂內容

**注意**  
對於這些視覺效果，**視覺化影像**核取方塊不會出現在 UI 上。

# 共用 Amazon Quick Sight 儀表板的檢視
<a name="share-dashboard-view"></a>

與已發布的儀表板互動時，您可以選擇僅在您變更的情況下共用儀表板的唯一連結。例如，如果您篩選儀表板中的資料，您可以與有許可查看儀表板的其他人共用您所看到的內容。這樣，他們便可看到您所看到的內容，而無需建立新的儀表板。

當其他人使用您傳送給他們的連結存取您的儀表板檢視時，他們會看到與建立連結時完全相同的儀表板。它們會看到您變更的任何參數、篩選條件或控制項。

**若要共用您儀表板的檢視**

1. 開啟已發布的儀表板，然後進行所需的任何變更。

1. 選擇右上角的**共用**，然後選擇**共用此檢視**。

1. 在開啟的**使用連結共用**頁面上，選擇**複製連結**。

1. 將連結貼到電子郵件或 IM 訊息中，即可與其他人共用。

   只有具有在 Quick Sight 中查看儀表板許可的人員才能存取連結。

# 透過電子郵件排程和傳送 Quick Sight 報告
<a name="sending-reports"></a>

**重要**  
歐洲 （西班牙） (eu-south-2) 區域的 Amazon Quick Sight 使用歐洲 （愛爾蘭） (Amazon SES) 來傳送電子郵件給 Quick Sight 使用者。包含在排程報告、提醒和其他功能的客戶資料會在送達 Quick Sight 使用者之前，透過電子郵件從歐洲 （西班牙） 傳送到歐洲 （愛爾蘭）。  
作為隱私權保護措施，下列可在電子郵件中傳送客戶資料的功能已被限制或預設為停用。  
「已排程的報告」電子郵件中的檔案附件和工作表預覽。[下載連結選項](https://docs.aws.amazon.com/quicksuite/latest/userguide/email-reports-from-dashboard)為預設設定。
使用閾值提醒的電子郵件。
異常偵測提醒。
如需 AWS 隱私權功能的詳細資訊，請參閱 [服務的隱私權功能 AWS](https://aws.amazon.com/compliance/privacy-features/)。

在企業版，您可以用報告形式傳送儀表板一次或依排程傳送 (每日、每週、每月或每年)。您可以將報告透過電子郵件傳送給共用 Amazon Quick 訂閱的使用者或群組。若要收到電子郵件報告，使用者或群組成員必須符合以下條件：
+ 它們是您的快速訂閱的一部分。
+ 您已經與他們共用儀表板。
+ Amazon Quick Sight 無法傳送排程電子郵件給超過 5，000 名成員。

Amazon Quick Sight 會根據其在儀表板中定義的資料許可，為每個使用者或群組產生自訂電子郵件快照。電子郵件報告的資料列層級安全 (RLS)、資料欄層級安全 (CLS) 和動態預設參數適用於排程和臨機 (一次性) 電子郵件。

快速作者可以使用 Quick 主控台中的立即報告按鈕或使用 [https://docs.aws.amazon.com//quicksight/latest/APIReference/API_StartDashboardSnapshotJobSchedule.html](https://docs.aws.amazon.com//quicksight/latest/APIReference/API_StartDashboardSnapshotJobSchedule.html) API 來執行排程**報告**。

當儀表板有電子郵件報告可用時，作為讀者的訂閱者在該儀表板上會看到 **Reports (報告)** 的選項。他們可以使用**排程**選單，以訂閱或取消訂閱電子郵件。如需詳細資訊，請參閱[在 Amazon Quick Sight 中訂閱電子郵件報告](subscribing-to-reports.md)。

您可以為每個儀表板建立最多五個排程。

Quick Sight 儀表板檢視器也可以從 Quick Sight 儀表板自行排程報告。如需有關讀者產生報告的詳細資訊，請參閱[在 Amazon Quick Sight 中建立讀者產生的報告](reader-scheduling.md)。

參閱下列主題，進一步了解電子郵件報告設定與報告計費。

**Topics**
+ [

# 設定 Quick Sight 儀表板的電子郵件報告設定
](email-reports-from-dashboard.md)
+ [

# 電子郵件報告如何計費
](sending-reports-billing-info.md)

# 設定 Quick Sight 儀表板的電子郵件報告設定
<a name="email-reports-from-dashboard"></a>


|  | 
| --- |
|  適用於：企業版本  | 

在 Amazon Quick Enterprise Edition 中，您可以從儀表板中的任何工作表傳送電子郵件報告。您可以從互動式儀表板和像素完美報告表傳送報告。排程包括傳送時間、要包含的內容以及電子郵件接收人員的設定。您可以檢視範例報告和報告中使用的資料集清單。若要設定或變更從儀表板傳送的排程，請確定您是儀表板的擁有者或共同擁有者。

如果您可以存取儀表板，則可以透過開啟儀表板檢視對訂閱選項進行變更。如需此操作如何進行的詳細資訊，請參閱 [在 Amazon Quick Sight 中訂閱電子郵件報告](subscribing-to-reports.md)。

可用於電子郵件報告的排程選項包括下列項目：
+ **一次 (不重複)** – 只在您選擇的日期和時間傳送一次報告。
+ **每日** – 在您選擇的時間每天重複。
+ **每週** – 在您選擇的時間每週在同一天或同幾天重複。您也可以使用此選項以每週間隔傳送報告，例如，每隔一週或每三週傳送一次報告。
+ **每月** – 在您選擇的時間，在每月的同一天重複。您也可以使用此選項，在每月的特定日期 (例如，每個月的第二個週三或最後一個週五) 傳送報告。
+ **每年** – 每年在您選取月份的同一天的選定時間重複執行。您也可以使用此選項，在所選月份的特定日期或日期集傳送報告。例如，您可以將報告設定為在每年 1 月、3 月和 9 月的第一個星期一傳送，或在 7 月 14 日傳送，或每年 2 月、4 月和 6 月的第二天傳送。
+ **自訂** – 設定最符合您業務需求的排程報告。

您可以自訂報告的標題、選用的電子郵件主旨和內文。

雖然您可以設定報告，讓每個擁有存取權的人都收到副本，但這通常不是最佳方案。建議您限制自動化電子郵件，尤其是那些傳送給群組的電子郵件。您可以透過從存取清單中選擇特定人員，從少數訂閱用戶開始。在為任何人訂閱之前，請先驗證貴公司的政策。

您可以使用下列方式將人員直接新增至報告訂閱：
+ (建議) 從提供的存取清單中選擇收件人，以指定和維護您想以電子郵件將報告傳送到的人員清單。您可以使用搜尋方塊，依電子郵件或群組名稱來尋找人員。
+ 若要將報告傳送給儀表板的所有訂閱用戶，請在出現提示時選擇 **Send email report to all users with access to dashboard**。

任何想要接收電子郵件的人，都可以開啟儀表板並將自己的訂閱選項設定為選擇加入或退出。

**重要**  
當您與新的快速使用者名稱或群組共用儀表板時，他們會自動開始接收電子郵件報告。如果您不希望發生這種情況，則每次將人員新增至儀表板時，都必須編輯報告設定。

對於現有的電子郵件排程，您可以在進行變更時暫停 Amazon Quick Sight 中的排程。在**排程**窗格中，您可以使用每個報告下方顯示的切換開關來暫停或繼續排程報告。暫停報告不會從 Quick Sight 刪除報告的排程。

如果您的報告包含自訂視覺效果，請注意，即使您可以存取影像，也無法在電子郵件報告中包含私有網路中的影像。如果您想要包含影像，則請使用公開提供的影像。

開始之前，請確定您使用的是 Amazon Quick Enterprise 版本，而且您已與預期的收件人共用儀表板。

**若要建立或變更電子郵件報告**

1. 開啟快速並選擇左側導覽窗格上的**儀表板**。

1. 開啟儀表板，以設定其電子郵件報告。

1. 選擇右上角的**排程**，然後選擇**排程**。

1. 選擇**新增排程**。

1. 在出現的**新增排程**窗格中，輸入排程名稱。您可以選擇新增新排程描述。

1. 在**內容**索引標籤中，切換 **PDF**、**CSV** 或 **Excel **開關以選擇報告格式。CSV 和 Excel 格式目前支援像素完美報告。

1. 在**內容**索引標籤上的**工作表**下拉式清單中，選擇要為其排程報告的工作表。

   如果您選擇 **CSV** 或 **Excel**，則請從任何要包含在報告中的儀表板工作表中選擇資料表或樞紐分析表視覺效果。您可以為每個排程選取最多 5 種視覺效果。

   如果您選擇 **Excel**，則會產生一個 Excel 活頁簿作為最終輸出。

1. 在**日期**索引標籤中，從**重複**下拉式清單中選擇報告的頻率。如果不確定，請選擇**傳送一次 (不重複)**。

1. 在**開始日期**中，選擇您要傳送第一份報告的開始日期和執行期。

1. 對於**時區**，請從下拉式清單中選擇時區。

1. 在**電子郵件**索引標籤中，對於**電子郵件主旨行**，輸入自訂主旨行，或保留空白以使用報告標題。

1. 輸入您要接收報告之使用者或群組的快速群組名稱的電子郵件地址。您也可以選取**傳送給具有存取權的所有使用者**方塊，將報告傳送給擁有您帳戶儀表板存取權的所有使用者。

1. 在**電子郵件標頭**中，輸入您希望電子郵件報告顯示的標頭。

1. (選用) 對於**電子郵件內文文字**，請保留空白，或輸入要在電子郵件開頭顯示的自訂訊息。

1. (選用) 對於 PDF 附件，您可以選擇**在電子郵件內文中包含工作表**，在電子郵件內文中顯示 PDF 快照的第一頁。

1. 選擇您希望報告使用的附件方式。以下是可用的選項。
   + **檔案附件** – 將快照的附件上傳至電子郵件。電子郵件大小不能超過 10 MB。此限制包括所有附件。
   + **下載連結** – 將連結新增至電子郵件內文，使用者可以存取以下載快照報告。當使用者選擇下載連結時，系統會在報告開始下載之前提示使用者登入。連結會在報告傳送一年後到期。

1. (選用，建議使用) 若要在儲存變更前傳送報告樣本，請選擇**傳送測試報告**。此選項會顯示在儀表板擁有者的使用者名稱旁。

1. 執行以下任意一項：
   + (建議選擇) 選擇**儲存**以確認輸入。
   + 若要立即傳送報告，請選擇**儲存並立即執行**。即使排程的開始日期還沒有到，系統也會立即傳送報告。

# 電子郵件報告如何計費
<a name="sending-reports-billing-info"></a>

作者和管理員可以收到任意數量的電子郵件報告，無需額外付費。

對於讀者 (擔任讀者角色的使用者)，每個報告的成本是一個工作階段，最多到每月上限。收到電子郵件報告之後，讀者可以獲得工作階段積分，以存取儀表板，而同一個月內不需再支付額外成本。讀者工作階段積分不結轉到下一個計費月份。

對於讀者，電子郵件報告和互動式工作階段的費用會累積，最多到每月費用上限。對於達到每月費用上限的讀者，就不需要再付出費用，他們可以依需要接收更多的電子郵件報告。

# 在 Amazon Quick Sight 中訂閱電子郵件報告
<a name="subscribing-to-reports"></a>

在企業版中，Amazon Quick 作者可以在報告表單中設定儀表板的訂閱。如需詳細資訊，請參閱[透過電子郵件排程和傳送 Quick Sight 報告](sending-reports.md)。然後，快速讀者和作者可以訂閱儀表板並調整其報告設定。如需有關以讀者身分訂閱儀表板的詳細資訊，請參閱 [訂閱 Amazon Quick Sight 儀表板電子郵件和提醒](subscriber-alerts.md)。

使用下列程序來變更特定儀表板的訂閱和報告設定。

1. 首先，開啟已分享給您的儀表板，或您擁有或共同擁有的儀表板。

1. 選擇右上角的 **Reports (報告)** 圖示。

1. **Change report preferences (變更報告偏好設定)** 螢幕隨即顯示。除了訂閱和最佳化選項以外，此畫面會顯示目前的報告排程。

   對於 **Subscription (訂閱)**，選擇 **Subscribe (訂閱)** 以開始接收報告，或 **Unsubscribe (取消訂閱)** 以停止接收報告。

   在 **Optimize (最佳化)** 下，選擇您偏好檢視報告所在的裝置。
   + 如果您通常使用行動裝置或偏好以縱向格式檢視報告，請選擇 **Viewing on a mobile device (在行動裝置上檢視)**。收到報告時，視覺化效果即會以單一垂直欄顯示。
   + 如果您通常使用桌上型電腦或偏好以橫向格式檢視報告，請選擇 **Viewing on a mobile device (在桌面上檢視)**。收到報告時，視覺化效果會在您的桌面上的儀表板中以相同的版面配置顯示。

1. 選擇 **Update (更新)** 來確認您的選項，或選擇 **Cancel (取消)** 來捨棄變更。

# 在 Amazon Quick Sight 中使用閾值提醒
<a name="threshold-alerts"></a>


|  | 
| --- |
|  適用於：企業版  | 

若要隨時掌握資料的重要變更，您可以使用 Amazon Quick Sight 儀表板中的 KPI、量測計、資料表和樞紐分析表視覺效果來建立閾值提醒。透過這些提醒，您可以為資料設定閾值，並在資料超過閾值時收到電子郵件通知。您也可以隨時在 Quick Sight 支援的網頁瀏覽器中檢視和管理提醒。

例如，假設您是大型組織的客戶成功經理，並且您想知道支援佇列中的票證數量何時會超過特定數量。比方說，您有一個帶有 KPI、量測計、資料表或樞紐分析表視覺效果的儀表板，該儀表板跟蹤此隊列中的票證數量。在這種情況下，您可以建立提醒，並在數量超過您指定的閾值時收到電子郵件通知。如此一來，您便可在收到通知後立即採取行動。

您可以為單一視覺效果建立多個提醒。如果作者在建立提醒後更新或刪除視覺效果，您的提醒設定不會變更。當您建立提醒時，提醒會採用當時套用至視覺效果的任何篩選條件。如果您或作者變更篩選條件，您現有的提醒不會變更。不過，如果您建立新的提醒，則新的提醒會採用新的篩選條件設定。

例如，假設您有一個包含篩選條件控制項的儀表板，您可以使用該控制項將儀表板中每個視覺效果的資料從一個美國城市切換到另一個城市。您在儀表板上有一個 KPI 視覺效果，其可顯示平均航班延誤，以及您對從美國華盛頓州西雅圖出發的航班延誤感興趣。您將篩選條件控制項變更為西雅圖，並在視覺效果上設定提醒。此提醒會追蹤西雅圖出發的航班延誤。明天，假設您還想跟蹤來自俄勒岡州波特蘭的航班延誤，則您將篩選條件控制項變更為波特蘭，並建立另一個提醒。這項新提醒可追蹤波特蘭的航班延誤。您現在有兩個提醒，一個在西雅圖，一個在波特蘭，獨立運作。

`eu-central-2` 歐洲 (蘇黎世) 區域無法使用閾值提醒。

如需有關 KPI、量測計、資料表或樞紐分析表視覺效果的詳細資訊，請參閱[Amazon Quick Sight 中的視覺化類型](working-with-visual-types.md)。

**注意**  
您無法在內嵌儀表板中或從快速行動應用程式建立視覺效果的提醒。  
針對分析表視覺效果，無法為位於 `Group by` 欄位集的值建立閾值提醒。只能為位於 `Value` 欄位集的值建立提醒。  
此外，不使用日期時間欄位作為趨勢的 KPI 視覺效果不支援提醒。一個例子是一個 KPI 顯示運輸商 X 和 Y 之間的航班的差異，而不是顯示日期 A 和 B 之間的航班差異。

使用下列各節，在 Quick Sight 中建立和設定 KPI、量測計、資料表和樞紐分析表視覺效果的閾值提醒。

**Topics**
+ [

# 提醒許可
](threshold-alerts-permissions.md)
+ [

# 建立提醒
](threshold-alerts-creating.md)
+ [

# 管理閾值提醒
](threshold-alerts-managing.md)
+ [

# 調查提醒失敗
](threshold-alerts-failures.md)
+ [

# 提醒排程
](threshold-alerts-scheduling.md)
+ [

# 在閾值警示中使用快速動作連接器
](action-connectors-in-threshold-alerts.md)

# 提醒許可
<a name="threshold-alerts-permissions"></a>

如果您是管理員，您可以透過建立自訂許可政策，控制組織中的哪些人員可以在 Quick Sight 中設定閾值提醒。若要在快速中設定自訂許可，請選擇任何快速頁面右上角的使用者名稱，選擇**管理快速**，然後選擇**自訂許可**。

# 建立提醒
<a name="threshold-alerts-creating"></a>

使用下列步驟在儀表板中為 KPI 或量測計視覺效果建立閾值提醒。

**若要建立提醒**

1. 開啟快速並導覽至您想要的儀表板。

   如需在 Quick 中以儀表板訂閱者身分檢視儀表板的詳細資訊，請參閱 [與 Amazon Quick Sight 儀表板互動](exploring-dashboards.md)。

1. 在儀表板中，選取您要建立提醒的視覺效果，開啟右上角的選單，然後選擇**建立提醒**。

1. 在視覺效果右上角的選單上，選擇**建立提醒**圖示。

   或者，您可以在右上角的藍色工具列中選擇提醒圖標。然後，在開啟的**建立提醒**頁面中，選取您要建立提醒的 KPI、量測計、資料表或樞紐分析表視覺效果，然後選擇**下一步**。

   您也可以選取儲存格並選擇**建立提醒**，在資料表或樞紐分析表視覺效果上建立提醒。您只能為單一儲存格建立提醒。無法為整個資料欄或使用自訂彙總的值建立提醒。如需有關自訂彙總的詳細資訊，請參閱[彙總函數](calculated-field-aggregations.md)。

1. 在右側開啟的**建立提醒**頁面上，執行下列動作：

   1. 針對**名稱**，輸入提醒的名稱。

      依預設，視覺效果名稱會用於提醒名稱。若您希望的話，可以變更。

   1. 在**要追蹤的值**中，選擇您要設定閾值的值。顯示的資訊會根據您建立提醒的視覺效果類型而有所不同。

      此選項可用的值取決於視覺效果中儀表板作者設定的值。例如，假設您有一個 KPI 視覺效果，顯示兩個日期之間的百分比差異。鑑於此，您會看到兩個提醒值選項：百分比差異和實際值。

      如果視覺效果中僅一個值，則無法變更此選項。它是目前的值，並顯示在此處，以便您可以在選擇閾值時將其用作參考。例如，如果您要設定平均成本的提醒，此值會顯示目前的平均成本 (例如 \$15)。使用此參考值，您可以在設定閾值時做出更明智的決策。

   1. 在**條件**中，選擇閾值的條件。

      您可選擇以下條件。
      + **高於** – 設定提醒值超過您設定的閾值時，會觸發提醒的規則。
      + **低於** – 設定提醒值低於您設定的閾值時，會觸發提醒的規則。
      + **等於** – 設定提醒值等於您設定的閾值時，會觸發提醒的規則。

   1. 在**閾值**中，輸入值以發出提醒。

   1. 對於**通知偏好**，選擇您希望收到設定閾值超出通知的頻率。

      您可以從下列選項來選擇。
      + **盡可能頻繁** – 此選項會在超出閾值時向您發出提醒。如果您選擇此選項，您可能會一天多次收到提醒。
      + **每日最多** – 當超出閾值時，此選項每天提醒您一次。
      + **每週最多** - 當超出閾值時，此選項每週提醒您一次。

   1. (選用) 選擇**沒有資料時傳送電子郵件給我** - 當您選取此選項時，您會在沒有資料可檢查提醒規則時收到通知。

   1. 選擇**儲存**。

      右上角會出現訊息，指出提醒已儲存。如果您的資料超過您設定的閾值，您會在與快速帳戶相關聯的地址透過電子郵件收到通知。

# 管理閾值提醒
<a name="threshold-alerts-managing"></a>

您可以編輯現有提醒、開啟或關閉提醒，或檢視觸發提醒的時間記錄。若要完成此操作，請使用下列程序。

**若要編輯現有提醒**

1. 開啟快速，選擇**儀表板**，然後導覽至您要編輯提醒的儀表板。

1. 在「儀表板」頁面上，選擇右上角的**提醒**。

1. 在開啟的**管理提醒**頁面上，找到您要編輯的提醒，然後選擇提醒名稱下方的**編輯**。

   您可以編輯提醒名稱、條件和閾值。

1. 選擇**儲存**。

**若要檢視觸發提醒的歷史記錄**

1. 開啟快速，選擇**儀表板**，然後導覽至您要檢視提醒歷史記錄的儀表板。

1. 在「儀表板」頁面上，選擇右上角的**提醒**。

1. 在開啟的**管理提醒**頁面上，尋找您要檢視其歷史記錄的提醒，然後選擇提醒名稱下方的**歷史記錄**。

**若要開啟或關閉現有提醒**

1. 開啟快速，選擇**儀表板**，然後導覽至您要開啟或關閉提醒的儀表板。

1. 在「儀表板」頁面上，選擇右上角的**提醒**。

1. 在開啟的**管理提醒**頁面上，找到您要開啟或關閉的提醒，然後依提醒名稱選取或清除切換開關。

   當切換開關為藍色時，提醒會開啟，為灰色時則關閉。

**若要刪除現有的提醒**

1. 開啟快速，選擇**儀表板**，然後導覽至您要從中刪除提醒的儀表板。

1. 在「儀表板」頁面上，選擇右上角的**提醒**。

1. 在開啟的**管理提醒**頁面上，找到您要開啟或關閉的提醒，選擇提醒旁邊的三點選單，然後從下拉式清單中選擇**刪除**。

# 調查提醒失敗
<a name="threshold-alerts-failures"></a>

當提醒失敗時，Quick 會傳送失敗的電子郵件通知給您。提醒失敗的原因有很多，包括下列原因：
+ 提醒使用的資料集已刪除。
+ 提醒的擁有者失去資料集或資料集中特定資料列或資料欄的許可。
+ 提醒的擁有者失去了對儀表板的存取權。
+ 提醒所追蹤的資料沒有資料。

當失敗發生時，Quick 會傳送通知給您，並在失敗原因不太可能修正時停用提醒。例如，如果提醒因為無法存取儀表板或儀表板遭到刪除而失敗。否則，快速嘗試再次檢查資料是否有閾值違規。發生四次失敗後，Quick 會關閉提醒，並通知您提醒已關閉。如果可以再次檢查提醒，Quick 會傳送通知給您。

若要調查提醒失敗的原因，請檢查您是否仍可存取儀表板。同時檢查您是否擁有正確資料集以及資料集中正確資料列和資料欄的許可。如果您遺失了存取權或許可，請聯絡儀表板擁有者。如果您擁有必要的存取權和許可，您可能需要編輯提醒，以避免未來的提醒失敗。

# 提醒排程
<a name="threshold-alerts-scheduling"></a>

當您建立提醒時， 會根據您根據資料集排程重新整理的時間所設定的閾值，快速檢查資料是否有任何違規。提醒中顯示的資訊會根據您要建立提醒的視覺效果類型而有所不同。對於 SPICE 資料集，成功重新整理 SPICE 資料集後，會檢查提醒規則。對於直接查詢資料集，警示規則會在預設 AWS 區域 存放資料集的 中，於下午 6：00 到上午 8：00 之間隨機檢查。

如果您是資料集擁有者，您可以在資料集設定中設定提醒評估排程。參閱下列程序來了解方法。

**若要設定資料集的提醒評估排程**

1. 在快速中，選擇左側導覽列中的**資料**。

1. 選擇您要為其排程警示評估的資料集。

1. 選擇**設定提醒排程**。

1. 在開啟的**設定提醒排程**頁面中，執行下列動作。
   + 對於 **Time zone** (時區)，選擇時區。
   + 對於**重複**，請選擇您要評估資料的頻率。
   + 在**開始**中，輸入您希望提醒評估開始的時間。

# 在閾值警示中使用快速動作連接器
<a name="action-connectors-in-threshold-alerts"></a>

## 先決條件
<a name="action-connectors-in-threshold-alerts-prerequisites"></a>

開始之前，請務必[建立至少一個動作連接器](builtin-services-integration.md)。

連接器必須符合下列要求：
+ 使用**服務驗證**身分驗證方法
+ 使用以下其中一個整合：
  + Atlassian Jira 雲端
  + Microsoft Outlook
  + Salesforce
  + ServiceNow

## 在儀表板上啟用快速動作以使用動作連接器
<a name="enable-quick-actions-on-dashboards-for-threshold-alert"></a>

**在儀表板上啟用快速動作以使用動作連接器**

1. 如果儀表板存在，請前往儀表板的來源分析。否則，[請建立新的分析](quickstart-createanalysis.md)。

1. 選擇**發布**。

1. 選擇**新增儀表板**或**取代現有儀表板**。

1. 選擇**儀表板選項**下的**啟用快速動作**核取方塊。

1. 選擇**發布儀表板**。

## 在閾值提醒中使用動作連接器
<a name="use-action-connectors-in-threshold-alert"></a>

**在閾值提醒中使用動作連接器**

1. 在開啟**啟用快速動作**發佈選項的情況下開啟儀表板。

1. 將滑鼠暫留在支援閾值警示的視覺效果上。您可以[在這裡](threshold-alerts.md)找到支援提醒的視覺效果類型。

1. 選擇鈴鐺圖示。

1. **建立提醒**窗格會在右側開啟。

1. 選擇 **Add Action (新增動作)**。

1. 功能表隨即出現，其中包含所有支援的動作連接器和動作清單。

1. 從清單中選擇所需的動作。

1. **動作**表單會出現在右側窗格中。

1. 輸入您需要包含在 動作中的所有資訊。

1. 有些欄位允許包含自動填入值。選擇**自動填入**以開啟選單。選擇您需要的值，這些值會新增至您輸入的文字。
   + **值**：注入警示用來評估警示條件的目前值
   + **提醒名稱**：注入提醒名稱
   + **條件**：注入提醒條件
   + **閾值**：注入閾值
   + **全部**：注入上述所有項目

1. 有些動作支援包含附件的功能。您可以選擇將目前儀表板工作表的 PDF 與這些動作連接，方法是選取**包含此工作表為 PDF** 核取方塊。

1. 選擇**新增動作**，將動作新增至提醒。

1. 回到**建立提醒**窗格，設定的 動作會新增至底部的提醒。

1. 設定提醒的所有其他所需欄位，然後選擇**儲存**。

1. 違反設定的閾值時，應該會叫用此動作。若要進一步了解何時評估閾值警示，請參閱[警示排程](threshold-alerts-scheduling.md)。

## 安全性和自訂
<a name="threshold-alert-security-and-customizations"></a>

**自訂許可/功能自訂**
+ **動作**功能：如果您的使用者或角色受到使用動作功能的許可限制，則無法查看或使用動作
+ **匯出至 PDF** 功能：
  + 提醒的新動作：如果您的使用者或角色受到使用**匯出至 PDF 功能的許可限制，則在將新動作新增至提醒時，不會看到附加工作表 PDF** 的選項。
  + 提醒的現有動作：如果您現有的提醒具有包含 PDF 附件的動作，則當使用者或角色無法使用**匯出至 PDF** 功能時，這些動作將在沒有 PDF 附件的情況下送出。

若要進一步了解自訂許可，請參閱[在 Amazon Quick 中建立自訂許可設定檔](create-custom-permissions-profile.md)。

**資料列層級安全性 (RLS)/資料欄層級安全性 (CLS)**
+ 提醒的新動作：如果您的儀表板包含具有 RLS 或 CLS 的資料集，則
  + 您無法將動作新增至使用 RLS 或 CLS 追蹤資料集的新提醒
  + 您可以將動作新增至新的提醒，以追蹤沒有 RLS 或 CLS 的不同資料集，但您無法在這些動作中包含 PDF 附件
+ 警示的現有動作：如果您在建立具有動作的警示後，將 RLS 或 CLS 新增至資料集，則
  + 提醒追蹤資料集將完全停止運作的現有動作
  + 在相同儀表板上追蹤不同資料集的提醒上的現有動作，將沒有任何 PDF 連接而送出

若要進一步了解 RLS，請參閱[在 Amazon Quick 中使用資料列層級安全性](row-level-security.md)。

若要進一步了解 CLS，請參閱[使用資料欄層級安全性來限制對資料集的存取](row-level-security.md)。

**儀表板發佈選項**
+ 啟用互動式工作表的 PDF 產生
  + 提醒的新動作：如果您的儀表板已停用**啟用互動式工作表發佈的 PDF 產生**選項，則在提醒時新增新動作時，不會看到附加工作表 PDF 的選項。
  + 提醒的現有動作：如果您現有的提醒具有包含 PDF 附件的動作，則當**互動式工作表發佈的啟用 PDF 產生**選項在儀表板上停用時，這些動作將不使用 PDF 附件傳送。
+ 啟用快速動作
  + 提醒的新動作：如果您的儀表板已關閉**啟用快速**動作發佈選項，則不會看到將動作新增至提醒的選項。
  + 警示的現有動作：當儀表板上的**啟用快速**動作發佈選項停用時，您對警示的現有動作將完全停止運作。

若要進一步了解儀表板發佈選項，請參閱[發佈儀表板](creating-a-dashboard.md)。

# 列印儀表板或分析
<a name="printing1"></a>

您可以在 Amazon Quick Sight 中列印儀表板或分析。

請使用以下程序來列印。

1. 開啟您希望列印的儀表板或分析。

1. 選擇右上角的 **Print (列印)** 圖示。

1. 在 **Prepare for printing (準備列印)** 畫面上，選擇您希望使用的紙張大小和方向。

1. 選擇 **Go to Preview (前往預覽)**。

1. 執行以下任意一項：
   + 如要繼續列印，請選擇 **Print (列印)** 來開啟您作業系統的列印對話方塊。
   + 如要變更紙張大小或方向，請選擇 **Configure (設定)**。

1. 如要結束預覽畫面，請選擇 **Exit preview (結束預覽)**。

# 將 Amazon Quick Sight 分析或儀表板匯出為 PDFs
<a name="export-dashboard-to-pdf"></a>

您可以將內容從儀表板匯出到可攜文件格式檔 (PDF)。與列印輸出類似，此格式會提供下載時在螢幕上顯示的目前工作表的快照。

**若要將儀表板工作表匯出為 PDF**

1. 開啟快速並選擇左側導覽窗格上的**儀表板**。

1. 開啟您要匯出的儀表板。

1. 選擇右上角的**匯出**、**以 PDF 格式下載**。在後台準備下載。

   檔案準備好下載時，會出現一則訊息，說明 **Your PDF is ready.**。

1. 選擇**立即下載**以下載檔案。選擇**關閉**以關閉而不下載。

   如果您在未下載檔案的情況下關閉此對話方塊，並且想要重新建立檔案，則請重複上一個步驟。此外，可下載的檔案僅暫時可用五分鐘。如果等待時間太長而無法下載，則檔案會過期。如果發生這種情況，Quick Sight 會改為顯示錯誤訊息，指出請求已過期。

1. 針對要匯出的每個工作表重複上述步驟。

您也可以將 PDF 附加至儀表板電子郵件報告。如需詳細資訊，請參閱[透過電子郵件排程和傳送 Quick Sight 報告](sending-reports.md)。

# 失敗的 PDF 匯出工作的錯誤代碼
<a name="qs-reports-error-codes"></a>

當您在 Amazon Quick Sight 中產生 PDF 報告時，您可能會遇到請求產生 PDF 報告失敗的執行個體。可能會發生失敗的原因有很多。Quick Sight 提供錯誤代碼，可協助您了解發生錯誤的原因，並提供疑難排解問題的指引。下表列出當 PDF 匯出任務失敗時，Quick Sight 傳回的錯誤代碼。


| 錯誤碼 | 指引 | 
| --- | --- | 
| INVALID\$1DATAPREP\$1SYNTAX | 請檢查您計算欄位的語法，然後重試。 | 
| POST\$1AGGREGATED\$1METRIC\$1AS\$1DIMENSION | 彙總指標/運算元不能用作視覺效果的分組維度。選擇有效的視覺效果分組維度，然後重試。 | 
| SPICE\$1TABLE\$1NOT\$1FOUND | 已刪除資料集，或無法使用。請匯入有效的資料集，然後重試。 | 
| FIELD\$1NOT\$1FOUND | 無法再使用欄位。請更新或取代此資料集中遺失的欄位，然後重試。 | 
| FIELD\$1ACCESS\$1DENIED | 您無法存取此資料集中的某些欄位。請求存取權，然後重試。 | 
| PERMISSIONS\$1DATASET\$1INVALID\$1COLUMN\$1VALUE | 找到無效的資料列層級許可資料欄值。請檢查您的父資料集規則，然後重試。 | 
| COLUMN\$1NOT\$1FOUND | 請取代篩選條件或參數中遺失的資料欄，然後重試。 | 
| INVALID\$1COLUMN\$1TYPE | 已變更某些欄位的資料類型，無法自動更新。調整資料集中的此類欄位，然後重試。 | 
| PERMISSIONS\$1DATASET\$1USER\$1DENIED | 您無法存取此資料集。要求此資料集的存取權，然後重試。 | 
| DATA\$1SOURCE\$1TIMEOUT | 您的查詢已逾時。減少資料量，或將資料匯入 SPICE，然後重試。 | 
| MAX\$1PAGE\$1EXCEEDED\$1ERROR | 您的檔案已準備就緒，但內容不完整。PDF 的頁面限制為 1,000 頁。請選擇較短的 PDF，然後重試。 | 
| INSUFFICIENT\$1BODY\$1HEIGHT\$1ERROR | 將標頭和頁尾調整為小於頁面高度，然後重試。 | 
| FIRST\$1PAGE\$1HEIGHT\$1TOO\$1SMALL\$1ERROR | 調整區段，為您的資料表騰出空間，然後重試。 | 
| INTERNAL\$1ERROR | 我們目前無法為您建立 PDF。請等待幾分鐘後再試一次。 | 

# 將資產組織到 Amazon Quick Sight 的資料夾
<a name="folders"></a>


|  | 
| --- |
|  適用於：企業版  | 

在 Quick Enterprise Edition 中，您的團隊成員可以建立個人和共用資料夾，將階層結構新增至 Quick Sight 資產管理。藉助資料夾，使用者可以更輕鬆地整理、導覽和探索儀表板、分析、資料集、資料來源和主題。在資料夾中，您仍然可以使用常用工具來搜尋資產，或將資產新增至最愛資產清單。

您可以使用下列類型的資料夾搭配 Quick Sight：
+ 自己用於整理工作的個人資料夾。

  個人資料夾僅對其擁有者可見。您不能將個人資料夾的所有權轉讓給其他任何人。
+ 共用資料夾：
  + **共用資料夾**用於整理工作並簡化多人之間的共用。若要建立和管理共用資料夾，您必須是 Quick Sight 管理員。
  + **共用限制資料夾**是 Quick Sight 中的共用資料夾類型，可確保資產保留在共用資料夾中。從受限制共用資料夾中存在之資源所建立的資源，也必須保留在受限制的資料夾中。位於受限制資料夾中的資產無法移動到受限制資料夾之外，或在受限制資料夾之外共用。例如，如果您建立的資料集使用位於受限制共用資料夾中的資料來源，則該新資料集無法移出該受限制共用資料夾。

    位於受限資料夾中的資產可以在受限資料夾樹狀目錄中移至一個或多個子資料夾。受限資料夾的子資料夾行為類似於受限資料夾，但相依資產可以存在於同一根受限資料夾下的不同子資料夾中。根受限資料夾作為界限，只要所有子資料夾中的所有資產都保留在此根資料夾樹狀目錄中，便可在其中存在。例如，位於某個子資料夾中的資料集，可以使用位於同一資料夾樹狀目錄中另一個子資料夾內的資料來源，也可以使用位於根資料夾中的資料來源。可在根資料夾或其任何子資料夾中建立任何支援的資產類型。使用者可以在不同的子資料夾中擁有不同的角色。子資料夾許可繼承自其父資料夾。

    限制資料夾只能使用 Quick Sight [https://aws.amazon.com/quicksight/latest/APIReference/API_CreateFolder.html](https://aws.amazon.com/quicksight/latest/APIReference/API_CreateFolder.html) API 操作建立。
  + 使用者是資料夾上的檢視器，並在 Quick 中具有作者或管理員角色，可以檢視資料夾中的所有資產類型。屬於資料夾檢視器且在 Quick 中具有 Reader 角色的使用者只能查看資料夾中的儀表板和案例。

  所有共用資料夾對有權進行存取的人可見。

使用下列主題，進一步了解如何在 Quick Sight 中建立和設定資料夾或子資料夾。

**Topics**
+ [

# Quick Sight 資料夾的考量事項
](folders-limitations.md)
+ [

# Quick Sight 資料夾概觀
](folders-functionality.md)
+ [

# Quick Sight 共用資料夾的許可
](folders-security.md)
+ [

# 建立和管理 Quick Sight 共用資料夾的成員資格許可
](sharing-folders.md)
+ [

# 使用 Quick Sight APIs 建立 Quick Sight 擴展資料夾
](folders-scaled.md)

# Quick Sight 資料夾的考量事項
<a name="folders-limitations"></a>

在您開始在 Amazon Quick Sight 中建立和修改資料夾之前，請檢閱適用於 Quick Sight 資料夾的下列限制。
+ 您無法與其他 中的人員共用 AWS 帳戶中的資料夾 AWS 帳戶。
+ 對於具有快速讀取器許可的人員，適用下列限制：
  + 讀者不能擁有個人或共用資料夾。
  + 讀者無法建立或管理資料夾或資料夾內容。
  + 讀者不能擁有*參與者*存取層級。
  + 在共用資料夾中，讀者只能看到儀表板資產。

此外，以下限制會套用於共用資料夾：
+ 共用資料夾的名稱 （在樹狀目錄的最上層） 在您的 AWS 帳戶中必須是唯一的。
+ 在單一資料夾中，不同資源不能具有相同的名稱。例如，在最上層資料夾中，不能建立兩個同名的子資料夾。在同一資料夾中，不能新增兩個同名的資產，即使它們的資產 ID 不同。每個資產的路徑的行為類似於 Amazon S3 索引鍵名稱。它在您的帳戶中必須是唯一的 AWS 。
+ 限制的共用資料夾只能使用 Quick Sight CLI 建立。

請參閱 [Quick Sight 資料夾概觀](folders-functionality.md) 以進一步了解 Amazon Quick Sight 中可用的不同資料夾類型。

# Quick Sight 資料夾概觀
<a name="folders-functionality"></a>

在 Quick Sight 中，您可以建立個人和共用資料夾。您也可以透過選擇個人或共用資料夾旁邊的「加入我的最愛」圖示 (![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/favorite-icon.png))，將它們加入「我的最愛」，以便快速存取。

您可以針對個人資料夾執行下列操作：
+ 建立子資料夾。
+ 將資產新增至資料夾，包括分析、儀表板、資料集和資料來源。若要將資產新增至個人資料夾，您必須擁有相關資產的存取權限。多項資產可以使用相同的名稱。

**共用資料夾 (不受限制)**

快速管理員可以使用共用資料夾執行下列任務。
+ 建立或刪除共用資料夾及其內部的子資料夾。您可以在最上層資料夾中移動其中任何一個。
+ 新增或移除擁有者、參與者和檢視者。讓某人成為資料夾的*擁有者*時，便是授予其該資料夾中每個資產的擁有權。如需詳細資訊，請參閱[Quick Sight 共用資料夾的許可](folders-security.md)。

下表摘要說明快速使用者根據其角色使用不受限制的共用資料夾時可採取的動作。


****  

| Action | Owner | 作者群 | 觀眾 | 
| --- | --- | --- | --- | 
| 與無權存取資料夾的使用者共用資料夾中的資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 修改資料夾許可 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 在資料夾中建立資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 修改資料夾中的資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 刪除資料夾中的資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 將現有資產新增至資料夾 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 從共用資料夾中移除資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 檢視資料夾中的資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | 
| 在共用資料夾外部建立使用共用資料夾內部資產的下游資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是\$1 | 
| 在資料夾中建立使用資料夾外部資產的下游資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 建立子資料夾 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 刪除子資料夾 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 管理子資料夾許可 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 將現有資產新增至子資料夾 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 在子資料夾中建立新資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 刪除子資料夾中的資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 

\$1使用者必須獲指派管理員或作者角色才能建立資產。

**受限制的共用資料夾**

受限制的共用資料夾提供了額外的安全邊界，限製資料在資料夾外部共用。具有適當 IAM 許可的管理員可以針對受限制的共用資料夾執行下列任務。
+ 可以使用 `CreateFolder` API 操作建立受限制的資料夾。如需 `CreatFolder` API 操作的詳細資訊，請參閱 [CreateFolder](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_CreateFolder.html) 操作相關內容。
+ 參與者角色指派給可以在受限制的資料夾中建立和編輯資產的使用者。參與者無法管理受限制的資料夾或受限制的資料夾中資產的許可。
+ 管理員可以使用 `UpdateFolderPermissions` API 操作，向使用者指派資料夾參與者和檢視者許可。如需 `UpdateFolderPermissions` API 操作的詳細資訊，請參閱 [UpdateFolderPermissions](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_UpdateFolderPermissions.html) 操作相關內容。

下表摘要說明 Quick Sight 使用者根據其角色使用受限制共用資料夾時可採取的動作。


****  

| Action | 作者群 | 觀眾 | 
| --- | --- | --- | 
| 與無權存取資料夾的使用者共用資料夾中的資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 修改資料夾許可 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 在資料夾中建立資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 修改資料夾中的資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 從資料夾中刪除資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 將現有資產新增至資料夾 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 從共用資料夾中移除資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 檢視資料夾中的資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | 
| 在共用資料夾外部建立使用共用資料夾內部資產的下游資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 在資料夾中建立使用資料夾外部資產的下游資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 建立子資料夾 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 刪除子資料夾 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 管理子資料夾許可 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 將現有資產新增至子資料夾 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 在子資料夾中建立新資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 
| 從子資料夾中刪除資產 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是 | ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 | 

受限制的共用資料夾不支援擁有者角色。

選擇最適合自己使用案例的資料夾類型之後，請參閱 [Quick Sight 共用資料夾的許可](folders-security.md)和[建立和管理 Quick Sight 共用資料夾的成員資格許可](sharing-folders.md)，以建立資料夾並設定資料夾許可。

# Quick Sight 共用資料夾的許可
<a name="folders-security"></a>

共用資料夾具有三個許可層級。若要為使用者或群組設定資料夾層級許可，請參閱 [建立和管理 Quick Sight 共用資料夾的成員資格許可](sharing-folders.md)。
+ **擁有者**：資料夾*擁有者*擁有資料夾內所有內容 (資料夾、分析、儀表板、資料集、資料來源、主題)。擁有者可以建立、編輯和刪除資料夾中的資產，修改資料夾及其資產的許可，以及完全刪除資料夾。受限制的共用資料夾不支援擁有者角色。
+ **參與者**：參與者**可以像擁有者一樣在資料夾中建立、編輯和刪除資產。參與者無法刪除資料夾，也無法修改資料夾的許可，或修改其具有從資料夾繼承之參與者存取許可的資產的許可。
+ **檢視者**：*檢視者*只能檢視資料夾中的資產 (資料夾、儀表板、資料集、資料來源、主題)。檢視者無法編輯或共用資產。

以下規則也會套用於共用資料夾的安全：
+ 快速讀取器的資料夾共用狀態會與 資料夾共用。但是，讀者只能對資料夾進行讀取存取，並且只能透過儀表板存取視覺化效果。
+ AWS 會在資料夾中的每個物件上強制執行安全性。針對共用該資料夾的人員，該資料夾根據這些人員的存取層級 (管理員、作者或讀者) 對資產套用相同類型的安全。
+ 最上層資料夾**是所有子資料夾的根資料夾。在任何層級共用子資料夾時，共用該資料夾的人員都會在最上層資料夾檢視中看到根資料夾。
+ 資料夾許可是目前資料夾的許可，加上直至根資料夾的所有資料夾的許可。
+ *共用資產*從相應資料夾繼承其許可。當屬於資料夾擁有者的資產新增至共用資料夾時，就會建立共用資產。
+ 如果您擁有不受限制的共用資料夾，您可以將資料夾的擁有權轉移到另一個快速管理員。
+ 受限制的資料夾不支援擁有者角色。參與者角色指派給在受限制的資料夾中建立和編輯資產的作者。資料夾參與者無法管理受限制的資料夾或其資產的許可。
+ 需要正確的 IAM 許可才能使用 `UpdateFolderPermissions` API 更新受限制的共用資料夾的許可。

若要建立和管理共用資料夾的許可，請參閱[建立和管理 Quick Sight 共用資料夾的成員資格許可](sharing-folders.md)。

# 建立和管理 Quick Sight 共用資料夾的成員資格許可
<a name="sharing-folders"></a>

**共用資料夾 (不受限制)**

若要建立共用資料夾，並與 Quick 主控台中的一或多個群組共用資料夾，您必須是 Amazon QuickSight 管理員。您也可以使用 `CreateFolder` API 操作建立共用資料夾。請依下列程序，共用或修改共用資料夾的成員資格許可。

1. 從左側導覽中，選擇**資料夾**，然後選擇**共用資料夾**。尋找您要共用或管理許可的資料夾。

1. 若要開啟資料夾列的動作選單，請選擇省略符號 (三個點)。

1. 選擇**共用**。

1. 在**共用資料夾**強制回應中，新增要與之共用資料夾內容的群組和使用者。

1. 針對您新增的每個使用者和群組，從相應列的**許可**選單中選擇許可層級。

1. 若要更新現有使用者的許可類型，請選擇**管理資料夾存取權**。

1. 完成資料夾的使用者和群組許可設定後，選擇**共用**。使用者不會收到有關他們現在可以存取該資料夾的通知。

**受限制的共用資料夾** 

受限制的共用資料夾只能使用 `CreateFolder` API 操作建立。以下範例建立一個受限制的共用資料夾。

```
aws quicksight create-folder \
--aws-account-id AWSACCOUNTID \
--region us-east-1 \
--folder-id example-folder-name \
--folder-type RESTRICTED \
--name "Example Folder" \
```

建立受限制的共用資料夾後，透過 `UpdateFolderPermissions` API 呼叫指派資料夾參與者和檢視者許可。下列範例會更新受限共用資料夾的許可，以向使用者授予貢獻者許可。

```
aws quicksight update-folder-permissions \
--aws-account-id AWSACCOUNTID \
--region us-east-1 \
--folder-id example-folder-name \
--grant-permissions Principal=arn:aws:quicksight::us-east-
1::AWSACCOUNTID:user/default/:username,Actions=quicksight:CreateFolder
,quicksight:DescribeFolder, \
quicksight:CreateFolderMembership,quicksight:DeleteFolderMembership,qu
icksight:DescribeFolderPermissions \
```

傳遞給使用者的許可取決於您要向其授予的資料夾角色類型。使用下列清單來判斷要向其授予資料夾存取權的使用者需要哪些許可。

**資料夾擁有者**
+ quicksight:CreateFolder
+ quicksight:DescribeFolder
+ quicksight:UpdateFolder
+ quicksight:DeleteFolder
+ quicksight:CreateFolderMembership
+ quicksight:DeleteFolderMembership
+ quicksight:DescribeFolderPermissions
+ quicksight:UpdateFolderPermissions

**資料夾作者群**
+ quicksight:CreateFolder
+ quicksight:DescribeFolder
+ quicksight:CreateFolderMembership
+ quicksight:DeleteFolderMembership
+ quicksight:DescribeFolderPermissions

**資料夾檢視者**
+ quicksight:DescribeFolder

建立共用資料夾後，您可以開始使用 Quick Sight 中的 資料夾。

您也可以使用 Quick Sight APIs 來建立特殊擴展資料夾，最多可與 3000 個命名空間共用。若要進一步了解如何建立擴展資料夾，請參閱[使用 Quick Sight APIs 建立 Quick Sight 擴展資料夾](folders-scaled.md)。

# 使用 Quick Sight APIs 建立 Quick Sight 擴展資料夾
<a name="folders-scaled"></a>

您可以使用 Amazon Quick Sight APIs 建立可與最多 3000 個命名空間共用的特殊擴展資料夾。新增到資料夾的每個命名空間最多可以包含 100 個主體。*主體*是一個使用者或一組使用者。建立擴展資料夾並新增所需主體後，便可以將任何 QuickSight 資產新增至該資料夾。然後可以將其共用給資料夾主體被指派到的命名空間中的每個主體。這可簡化與數千名使用者共用 Quick Sight 資產的程序。

擴展資料夾只能使用 Quick Sight APIs 建立。建立擴展資料夾後，您可以與同一命名空間中最多 100 個主體共用該資料夾。您可以使用 `UpdateFolderPermissions` API 呼叫新增屬於不同命名空間的主體。建立資料夾之後，您可以使用 Quick Sight APIs 或 Quick 主控台從資料夾新增和移除資產。

每個 Amazon Quick Sight 帳戶最多可存放 100 個擴展資料夾。您最多可以將 100 個資源新增至一個擴展資料夾。若要與超過 3,000 個命名空間共用一個擴展資料夾，請聯絡 [AWS 支援](https://aws.amazon.com/contact-us/)。

## 範例
<a name="folders-scaled-examples"></a>

下列範例示範如何使用 Quick Sight APIs 建立擴展資料夾。

**先決條件**

開始之前，請確認您具有授予 API 使用者呼叫 Quick Sight API 操作之存取權的 AWS Identity and Access Management 角色。以下範例顯示了一個 IAM 政策，您可以將其新增至現有 IAM 角色，以建立、刪除或修改擴展資料夾。透過該範例政策，使用者可以將儀表板、分析和資料集新增至擴展資料夾。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
        "Effect": "Allow",
        "Action": [
            "quicksight:CreateFolder",
            "quicksight:CreateFolderMembership",
            "quicksight:DeleteFolderMembership",
            "quicksight:DeleteFolder",
            "quicksight:DescribeFolderPermissions",
            "quicksight:DescribeFolderResolvedPermissions",
            "quicksight:UpdateFolderPermissions",
            "quicksight:UpdateDashboardPermissions",
            "quicksight:UpdateAnalysisPermissions",
            "quicksight:UpdateDataSetPermissions"
        ],
        "Resource": "*"
        }
    ]
}
```

------

以下範例建立一個擴展資料夾。

```
aws quicksight create-folder \
--aws-account-id "AWSACCOUNTID" \
--region "us-east-1" \
--name "eastcoast-users" \
--sharing-model "NAMESPACE" \
--folder-id "eastcoast-users"
```

建立擴展資料夾後，與您帳戶中的某個主體共用該資料夾。在每個 API 呼叫中，您只能向位於相同命名空間內的使用者和群組授予或撤銷許可。以下是與資料夾所在帳戶中的使用者共用擴展資料夾的範例。

```
aws quicksight update-folder-permissions \
--aws-account-id "AWSACCOUNTID" \
--region "us-east-1" \
--folder-id "eastcoast-users" \
--grant-permissions \
    '[
        {"Actions":
            ["quicksight:DescribeFolder",
            "quicksight:UpdateFolder",
            "quicksight:DeleteFolder",
            "quicksight:DescribeFolderPermissions",
            "quicksight:UpdateFolderPermissions",
            "quicksight:CreateFolderMembership",
            "quicksight:DeleteFolderMembership",
            "quicksight:CreateFolder"
            ],
        "Principal":"arn:aws:quicksight:us-east-1:AWSACCOUNTID:user/default/my-user"
        }
    ]'
```

與新主體共用資料夾後，使用 `describe-folder-permissions` API 呼叫驗證新資料夾許可。

```
aws quicksight describe-folder-permissions \
--aws-account-id "AWSACCOUNTID" \
--region "us-east-1" \
--folder-id "eastcoast-users" \
--namespace "default"
```

驗證新資料夾許可後，在擴展資料夾中建立子資料夾。子資料夾繼承其所在擴展資料夾的許可。

```
aws quicksight create-folder \
--aws-account-id "AWSACCOUNTID" \
--region "us-east-1" \
--name "new-york-users" \
--sharing-model "NAMESPACE" \
--folder-id "new-york-users" \
--parent-folder-arn "arn:aws:quicksight:us-east-1:AWSACCOUNTID:folder/eastcoast-users"
```

以下範例驗證新子資料夾繼承的許可。

```
aws quicksight describe-folder-resolved-permissions \
--aws-account-id "AWSACCOUNTID" \
--region "us-east-1" \
--folder-id "new-york-users" \
--namespace "default"
```

驗證子資料夾的許可後，請將您要共用的 Quick Sight 資產新增至資料夾。將資產新增至子資料夾後，共用該子資料夾的每個主體將共用該資產。以下範例將儀表板新增至子資料夾。

```
aws quicksight create-folder-membership \
--aws-account-id "AWSACCOUNTID" \
--folder-id "new-york-users" \
--member-id "my-dashboard" \
--member-type "DASHBOARD" \
--region "us-east-1"
```

# 探索 Amazon Quick Sight 中的互動式儀表板
<a name="using-dashboards"></a>

****  
  **目標對象：**Amazon Quick Dashboard 訂閱者或瀏覽者 

在 Amazon Quick Sight 中，*資料儀表板*是圖表、圖形和洞見的集合。它就像一份報紙，裡面都是您感興趣的資訊，只不過它以數位的方式呈現。您不光是閱讀它，還可以與之互動。

儀表板有多種設計，取決於工作以及做好工作所需的分析。使用 Quick Sight，您可以在網頁或行動裝置上與資料互動。如果您還透過郵件訂閱，您可以看到它的靜態預覽。

資料講述的故事反映建立儀表板的分析師和資料科學家的專業知識。他們提煉資料，加入計算，把握故事的角度，並決定呈現方式。發布者設計儀表板，並在其中填入互動式資料視覺化效果和調整檢視的控制項。發布者可以自訂您擁有的互動級別，包括篩選和搜尋選項。您可以與螢幕上使用中的項目進行互動，以進行篩選、排序、向下切入或跳到另一個工具。

當您檢視儀表板時，您會看到最近接收的資料。當您與螢幕上的項目互動時，您所做的變更會改變您的儀表板檢視，但不會改變其他人的檢視。因此，儘管發布者可以知道您查看的內容，但您裝置的隱私得到了保證。關閉儀表板後，您的探索和資料都不會保留。一如往常，當您是 Quick Reader 時，儀表板的發佈者會免費為您提供每月訂閱。

如果您也是儀表板發布者 (我們稱發布者為作者，因為發布者需要編寫報告)，您也可以儲存儀表板的複本以供進一步分析。若要發布發現的新資料特徵，您可以與原作者合作更新。這樣，每個人看到的故事便會是同一個版本。另外，您也可以使用複本來了解其他人的設計，或獲取靈感，以開發出全新的東西。然後，您可以將製作完成的分析發布為新的儀表板。

若要了解如何設定儀表板，請參閱 [使用儀表板和報告共用和訂閱 Amazon Quick Sight 中的資料](working-with-dashboards.md)。

**Topics**
+ [與儀表板互動](exploring-dashboards.md)
+ [與像素完美報告互動](interacting-with-paginated-reports.md)
+ [訂閱電子郵件與提醒](subscriber-alerts.md)
+ [讀者產生報告](reader-scheduling.md)
+ [書籤](dashboard-bookmarks.md)

# 與 Amazon Quick Sight 儀表板互動
<a name="exploring-dashboards"></a>

若要存取您受邀共用的儀表板，請按照邀請電子郵件中的指示進行操作。如果儀表板內嵌到您已經有權存取的應用程式或網站中，您也可以存取儀表板。

若要將儀表板調整為適合螢幕，請開啟右上角的**檢視**選單，然後選取**調整成視窗大小**。

根據儀表板的設定方式，您可以看到以下全部或部分元素：
+ 選單列：顯示儀表板的名稱。此外，選單列顯示您可以對儀表板執行的操作，包括左側的**復原**、**取消復原**和**重設**。當您與儀表板互動時，您可以使用這些工具來協助您進行探索。在此過程中您無需擔心，因為變更檢視並不會導致遺失任何內容。在右側，您可以找到**列印**儀表板的選項，使用**資料**，選擇不同的 AWS **區域**，以及開啟**使用者設定檔**。使用者設定檔功能表具有選項，因此您可以選擇 Amazon Quick Sight 顯示的語言。它也有快速**社群**和線上文件 (**說明**) 的連結。
+ 儀表板工作表：如果儀表板有多個工作表，這些工作表將顯示為儀表板頂端的索引標籤。
+ **篩選**選單：如果儀表板發布者允許篩選，則此選項會顯示在儀表板左側。
+ **控制項**面板：如果儀表板包含控制項，您可以使用控制項來選擇要套用於儀表板的選項 (參數)。有時系統會自動選取一個控制項值，有時會設定為**全部**。
+ 儀表板標題：如果儀表板有標題，它通常是一個字型較大的標題。它下面可能有一些狀態資訊或說明。
+ 儀表板小工具：螢幕上的項目可以是圖表、圖形、洞見、敘述或影像。若要查看全部內容，您可能需要垂直或水平捲動。

# 在 Amazon Quick Sight 儀表板資料上使用篩選條件
<a name="filtering-dashboard-data"></a>

您可以使用篩選條件，以精簡視覺效果中顯示的資料。篩選條件會在任何彙總函數之前套用到資料。如果有多個篩選條件，則會使用 AND 一起套用所有最上層篩選條件。如果在最上層篩選條件分組，則群組中的篩選條件會使用 OR 來套用。

Amazon Quick Sight 會將所有啟用的篩選條件套用至 欄位。例如，假設有一個篩選條件為 `state = WA`，另一個篩選條件為 `sales >= 500`。在這種情況下，資料集只包含符合這兩個條件的記錄。如果您停用其中一個篩選條件，則只會套用一個篩選條件。請注意，套用至相同欄位的多個篩選條件不會互斥。

## 檢視篩選條件
<a name="subscriber-dashboards-viewing-filters"></a>

若要檢視現有篩選條件，請在元素設定選單上選擇**篩選條件**，然後選擇檢視篩選條件。篩選條件會依建立的順序顯示在**套用的篩選條件**窗格中，最舊的篩選條件在最上方。

### 了解 Amazon Quick Sight 儀表板中的篩選條件圖示
<a name="subscriber-dashboards-understanding-filter-icons"></a>

**套用的篩選條件**窗格中的篩選條件會顯示圖示，以指出其如何設定範圍，以及是否已啟用。

未啟用的篩選條件會顯示為灰色，且您無法選取其核取方塊。

篩選條件名稱右側會顯示其中一個範圍圖示，以指出該篩選條件上設定的範圍。範圍圖示類似一個方形中有四個方塊。如果所有方塊都填滿，則篩選條件會套用到分析工作表上的所有視覺效果。如果只填滿一個方塊，則篩選條件只套用到選取的視覺效果。如果填滿部分方塊，則篩選條件會套用到工作表上的部分視覺效果，包括目前選取的視覺效果。

當您選擇篩選條件的範圍時，這些範圍圖示會符合篩選功能表上所顯示的範圍。

### 在 Amazon Quick Sight 儀表板中檢視篩選條件詳細資訊
<a name="subscriber-dashboards-viewing-filter-details"></a>

若要查看篩選條件詳細資訊，請選擇左側的**篩選條件**。篩選條件檢視會保留您上次的選擇。因此，當您開啟 **Filter (篩選條件)** 時，您會看到 **Applied filters (套用的篩選條件)** 或 **Edit filter (編輯篩選條件)** 檢視。

在 **Applied filters (套用的篩選條件)** 檢視，您可以選擇任何篩選條件，以檢視其詳細資訊。此清單中的篩選條件可能變更，這取決於篩選條件的範圍，以及您目前選取的視覺效果。

您可以選擇右側的選取器，以關閉 **Edit filter (編輯篩選條件)** 檢視。這樣做會重設 **Filter (篩選條件)** 檢視。

# 在 Amazon Quick Sight 中篩選工作階段期間的資料
<a name="subscriber-dashboards-filtering-your-view-of-the-data"></a>

當儀表板工作階段處於使用中狀態時，您可以透過三種方式篩選資料：

1. 如果儀表板在螢幕頂端有控制項，您可以透過從預設值清單中進行選擇，使用它們來篩選資料。

1. 您可以使用每個小部件的設定選單上的篩選條件圖示。

1. 您可以使用頁面左側的篩選面板來建立自己的篩選條件。篩選條件圖示如下所示。

若要建立篩選條件，請選擇左側的**篩選**圖示。

第一步是選擇要篩選的儀表板元素。

按一下您選擇的項目，所選項目周圍會反白。此外，如果已有篩選條件，則會顯示在清單中。如果沒有任何篩選條件，您可以使用**篩選條件**旁邊的加號 (**\$1**) 新增一個篩選條件。

篩選選項會根據您要篩選的欄位的資料類型，以及您在篩選條件內選擇的選項而有所不同。以下螢幕擷取畫面顯示時間範圍日期篩選條件可用的一些選項。

針對每個篩選條件，您可以選擇將其套用於一個、部分或是全部儀表板元素。您也可以使用篩選條件名稱旁的核取方塊，來啟用或停用篩選條件。若要刪除篩選條件，請使用編輯動作並捲動到底部以查看選項。請記住，篩選條件不會儲存，從一個工作階段到另一個工作階段，篩選條件會重設。

如需有關建立篩選條件的詳細資訊，請參閱 [在 Amazon Quick Sight 中篩選資料](adding-a-filter.md)。

# 使用 Amazon Quick Sight 儀表板上的元素
<a name="using-visuals-on-a-dashboard"></a>

每個小工具都有一個設定選單，當您選取某個小工具時，選單便會出現。選單提供放大或縮小、篩選資料、匯出資料等選項。這些選項會根據元素的小部件類型而有所不同。

選擇資料點時，有數個動作可供使用。您可以在資料點上按一下或點選，例如，長條圖中的長條上，折線圖中彎曲線條上的點，以此類推。可用選項會根據項目類型而有所不同。

這些動作如下：
+ 聚焦於或排除。

  您可以聚焦於或排除欄位的特定資料，例如區域、指標或日期。
+ 向上切入或向下切入。

  如果您的儀表板包含您可以向上切入或向下切入的資料，則可以向上切入到更高層級，或向下切入以探索更深入的詳細資訊。
+ 自訂 URL 動作。

  如果您的儀表板包含自訂動作，則可以選擇資料點或在其上按一下滑鼠右鍵來啟用。例如，您可以直接從儀表板向某人傳送電子郵件。或者，您可以開啟另一個工作表、網站或應用程式，並向其傳送您從中選擇的值。
+ 變更圖表顏色或特定欄位顏色。

  您可以將所有圖表顏色變更為特定顏色。或者您可以選擇特定的欄位值來變更其所屬元素的顏色。

# 在 Amazon Quick Sight 中排序儀表板資料
<a name="sorting-dashboard-data"></a>

您可以以三種方式排序資料：

1. 您可以將游標暫留於您想要排序的欄位標籤，然後選擇排序圖示。

1. 您可以選擇儀表板元素之一右上角的篩選條件圖示。

1. 您可以按一下或點選欄位，並從快顯功能表選擇 **Sort (排序)**。

樞紐分析表的排序方式不同；您需要使用樞紐分析上的資料欄排序圖示，以指定排序依據。

# 匯出和列印互動式 Amazon Quick Sight 儀表板報告
<a name="export-or-print-dashboard"></a>

您可以匯出或列印互動式儀表板的 PDF 版本。您也可以將儀表板中的一些視覺化效果匯出到 CSV。互動式儀表板目前不支援將整個儀表板匯出到 CSV。

## 從儀表板將資料匯出至 PDF
<a name="export-dashboard-to-pdf"></a>

**將互動式儀表板報告匯出為 PDF**

1. 從要匯出的儀表板報告中，選擇右上角的**匯出**圖示。

1. 選擇**產生 PDF**。

1. 當您選擇**產生 PDF** 時，Quick Sight 會開始準備儀表板報告以供下載。在藍色快顯視窗中選擇**檢視下載**，開啟右側的**下載**窗格。

1. 有兩種方法可以下載報告：
   + 在綠色快顯視窗中選擇**立即下載**。
   + 選擇右上角的**匯出**圖示，然後選擇**檢視下載**以檢視和下載每個可立即下載的報告。

**列印互動式儀表板報告**

1. 從要列印的報告中，選擇右上角的**匯出**圖示，然後選擇**列印**。

1. 在出現的**準備列印**快顯視窗中，選擇所需的紙張大小和方向。您可以選取**列印背景顏色**以包含背景顏色。

1. 選擇**前往預覽**。

1. 在出現的預覽視窗中，選擇**列印**。

## 從儀表板上的資料匯出到 CSV
<a name="export-dashboard-to-csv"></a>

**注意**  
匯出檔案可以直接傳回資料集匯入的資訊。如果匯入的資料含公式或命令，這會使檔案受到 CSV 注入的攻擊。因此，匯出檔案會提示安全警告。若要避免惡意活動，請在讀取匯出檔案時關閉連結和巨集。

若要從分析或儀表板匯出資料至逗號分隔值 (CSV) 檔案，請使用小工具右上角的設定選單。匯出僅包括目前顯示在您選擇的項目中的資料。

在資料表和資料樞紐分析表中，您可以將資料匯出到逗號分隔值 (CSV) 檔案或 Microsoft Excel 檔案。您可以選擇僅匯出可見欄位或所有欄位。

若要僅將可見欄位匯出至 CSV 或 Excel 檔案，請選擇視覺化效果右上角的選單。選擇**匯出至 CSV** 或**匯出至 Excel**，然後選擇**將可見欄位匯出至 CSV** 或**將可見光欄位匯出至 Excel**。

若要將所有欄位匯出到 CSV 或 Excel 檔案，請選擇視覺化效果右上角的選單。選擇**匯出至 CSV** 或**匯出至 Excel**，然後選擇**將所有欄位匯出至 CSV** 或**將所有光欄位匯出至 Excel**。

# 產生 Amazon Quick Sight 儀表板的執行摘要
<a name="use-executive-summaries"></a>

儀表板讀者可以產生執行摘要，提供 Quick Sight 為儀表板產生的所有洞見摘要。執行摘要可讓讀者更輕鬆地快速找到有關儀表板的關鍵洞察與資訊。

當讀者檢視使用執行摘要的儀表板時，**執行摘要**選項可在儀表板頁面右上角的**建置**下拉式清單中使用。使用以下程序來產生可執行摘要。如果儀表板不使用執行摘要，**執行摘要**選項不會出現在**建置**下拉式清單中。

**產生執行摘要**

1. 在想要使用的儀表板中，選擇**建置**，然後選擇**執行摘要**。

1. 選擇**摘要**。系統會產生執行摘要，並顯示在左側。

執行摘要使用目前儀表板工作表和視覺化效果設定的資料。如果儀表板或視覺化效果設定皆已更新，則執行摘要頂端會顯示警告。若要重新整理更新後儀表板的執行摘要，請產生新的執行摘要。

產生執行摘要後，Amazon Quick 讀者可以將摘要複製到剪貼簿，以便與他人共用，或包含在 Quick Sight 故事中。如需 Quick Sight 案例的詳細資訊，請參閱 [在 Amazon Quick Sight 中使用資料案例](working-with-stories.md)。

# 在 Amazon Quick Sight 中與像素完美報告互動
<a name="interacting-with-paginated-reports"></a>

若要存取您受邀共用的像素完美報告，請遵循邀請電子郵件中的指示。如果像素完美報告內嵌至您已存取的應用程式或網站，您也可以存取該報告。

若要將像素完美報告符合您的畫面，請開啟右上角的**檢視**功能表，然後選取**符合視窗**。您也可以使用報告左上角的加號 (\$1) 和減號 (-) 圖示放大和縮小報告。

# 匯出和列印 Amazon Quick Sight 報告
<a name="interacting-with-paginated-reports-export"></a>

像素完美報告旨在從特定時間點檢視。這些報告或快照可以列印或以 PDF 或 CSV 格式下載。

**將像素完美報告匯出為 PDF**

1. 從您要匯出的像素完美報告中，選擇右上角的**匯出**圖示。

1. 選擇**產生 PDF**。

1. 當您選擇**產生 PDF** 時，Quick Sight 會開始準備要下載的像素完美報告。報告準備好後，將出現一個綠色快顯視窗，顯示 **PDF 已準備好**。

1. 有兩種方法可以下載報告：
   + 在綠色快顯視窗中選擇**立即下載**。
   + 選擇右上角的**匯出**圖示，然後選擇**檢視下載**以檢視和下載每個可立即下載的報告。

**將像素完美報告匯出為 CSV**

1. 從要匯出的報告中，選擇右上角的**排程**圖示，然後選擇**最新快照**。

1. 在右側出現的**最新快照**選單中，快照會依照從最晚產生到最早產生的順序排序。快照最多可儲存 1 年。找到您要下載的報告，然後選擇報告右側的下載圖示。

1. 在出現的報告快顯視窗中，選擇您要下載的報告版本旁的下載圖示。您可以選擇以 CSV 格式下載報告，也可以以 PDF 格式下載報告。

**列印像素完美報告**

1. 從要列印的報告中，選擇右上角的**匯出**圖示，然後選擇**列印**。

1. 在您選擇**列印**後，將出現瀏覽器的印表機快顯視窗。之後您便可以在瀏覽器上像列印其他任何內容一樣列印 PDF 檔案。

# 訂閱 Amazon Quick Sight 儀表板電子郵件和提醒
<a name="subscriber-alerts"></a>

使用 Amazon Quick Sight，您可以訂閱特定事件的更新，例如儀表板更新和異常提醒。

**Topics**
+ [

## 註冊儀表板電子郵件
](#subscribing-to-a-dashboard-report-for-readers)
+ [

## 註冊以獲取異常提醒
](#anomaly-alerts)

## 註冊儀表板電子郵件
<a name="subscribing-to-a-dashboard-report-for-readers"></a>

您可以進行註冊以報告格式取得儀表板，並在電子郵件中接收它。您也可以進行報告設定。

**變更儀表板的訂閱和報告設定**

1. 開啟與您共用的儀表板。

1. 選擇右上角的**排程**圖示，然後在下拉式清單中選擇**排程**。

1. **排程**窗格顯示在右側。此窗格顯示您已訂閱或可訂閱的所有不同的排程報告。導覽至所需的報告，然後切換開關，以訂閱或取消訂閱報告。

## 註冊以獲取異常提醒
<a name="anomaly-alerts"></a>

在具有設定了異常偵測的敘述洞見的儀表板上，您可以進行註冊以取得異常和貢獻分析提醒。當異常更新時，您會收到異常提醒。提醒電子郵件會顯示異常的總數，並根據您的個人提醒組態，提供前五項的詳細資訊。若貢獻分析設定為與異常偵測一起執行，您會在主要驅動因素貢獻分析更新時收到更新的內容。

**設定異常提醒**

1. 開啟與您共用的儀表板。

1. 您可以從兩個畫面的其中一個設定提醒。選擇以下其中一項，然後進行下一個步驟：
   + 在儀表板中，找到您感興趣的異常小工具。選取它，以反白方塊包圍它。
   + 如果您在儀表板中並開啟了**探索異常**頁面，則無需返回儀表板檢視即可設定提醒。

1. 在右上方，選擇**設定提醒**。**Alert (提醒)** 組態畫面隨即出現。

1. 針對**嚴重性**，選擇您想要查看的重要性最低層級。

   針對 **Direction (方向)**，選擇取得 **Higher than expected (高於預期)** 或 **Lower than expected (低於預期)** 的異常提醒。您也可以選擇 **[ALL] (全部)** 收到所有異常的提醒。

1. 選擇 **OK (確定)** 來確認您的選擇。

1. 若要停止接收異常提醒，請在儀表板中找到異常小工具，然後使用鐘圖示取消訂閱。您也可以使用提醒電子郵件底部的 **To manage this alert (管理此提醒)** 連結。

# 在 Amazon Quick Sight 中建立讀者產生的報告
<a name="reader-scheduling"></a>

如果 Amazon Quick 作者已設定 Quick Sight 像素完美報告的提示報告，Quick Sight 儀表板檢視器可以使用提示自行排程報告。如需像素完美報告的提示詳細資訊，請參閱 [設定分頁報告的提示](paginated-reports-prompts.md)。

參閱以下各節，了解如何建立和修改讀者產生報告。

**Topics**
+ [

## 建立讀者產生報告
](#reader-scheduling-create)
+ [

## 載入 Quick Sight 讀取器產生的報告的已儲存檢視
](#reader-scheduling-load-view)
+ [

## 更新排程讀者產生之報告的檢視
](#reader-scheduling-update-view)
+ [

## 更新讀者產生報告排程
](#reader-scheduling-update-schedule)

## 建立讀者產生報告
<a name="reader-scheduling-create"></a>

依照下列程序來建立讀者產生報告。

**建立讀者產生報告**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟想要為其建立報告的儀表板。

1. 選擇儀表板頁面頂端的**排程**。

1. 排程窗格將開啟。若要新增報告排程，請選擇**新增**。如果您沒有看到**新增**按鈕、儀表板不包含像素完美工作表，或您的快速帳戶沒有新增像素完美報告。如需有關分頁報告附加元件的詳細資訊，請參閱[開始使用](qs-reports-getting-started.md)。

1. 在**排程名稱**中，輸入新排程的名稱。排程名稱長度上限可為 100 個字元。

1. 對於**描述**，選擇您想要報告使用的檢視選項。您可以選擇下列檢視：
   + **自訂檢視**：儀表板的目前檢視。
   + **原始檢視**：儀表板的 作者發布檢視。

1. 針對**內容**，選擇您要產生 PDF 報告的像素完美報告表。

1. 對於**日期**，選擇您想要接收報告的頻率。可用於電子郵件報告的排程選項包括下列項目：
   + **一次 (不重複)** – 只在您選擇的日期和時間傳送一次報告。
   + **每日** – 在您選擇的時間每天重複。
   + **每週** – 在您選擇的時間每週在同一天或同幾天重複。您也可以使用此選項以每週間隔傳送報告，例如，每隔一週或每三週傳送一次報告。
   + **每月** – 在您選擇的時間，在每月的同一天重複。您也可以使用此選項，在每月的特定日期 (例如，每個月的第二個週三或最後一個週五) 傳送報告。
   + **每年** – 每年在您選取月份的同一天的選定時間重複執行。您也可以使用此選項，在所選月份的特定日期或日期集傳送報告。例如，您可以將報告設定為在每年 1 月、3 月和 9 月的第一個星期一傳送，或在 7 月 14 日傳送，或每年 2 月、4 月和 6 月的第二天傳送。
   + **自訂** – 設定最符合您業務需求的排程報告。

   排程報告會在指定時間的 1 小時內傳送。在尖峰時段可能發生延遲。

1. 在**電子郵件**索引標籤中，對於**電子郵件主旨行**，輸入自訂主旨行，或保留空白以使用報告標題。

1. 輸入您要接收報告之使用者或群組的快速群組名稱的電子郵件地址。

1. 在**電子郵件標頭**中，輸入您希望電子郵件報告顯示的標頭。

1. (選用) 對於**電子郵件內文文字**，請保留空白，或輸入要在電子郵件開頭顯示的自訂訊息。

1. (選用，建議使用) 若要在儲存變更前傳送報告樣本，請選擇**傳送測試報告**。

1. 執行以下任意一項：
   + (建議選擇) 選擇**儲存**以確認輸入。
   + 若要立即傳送報告，請選擇**儲存並立即執行**。即使排程的開始日期還沒有到，系統也會立即傳送報告。

儲存報告排程後，排程會顯示在**排程**窗格中。讀者產生報告僅供建立該報告的使用者使用，且無法共用。

## 載入 Quick Sight 讀取器產生的報告的已儲存檢視
<a name="reader-scheduling-load-view"></a>

Amazon Quick Readers 可以使用**排程**窗格，載入已建立或接收之任何排程像素完美報告的已儲存檢視。依照下列程序載入排程報告的已儲存檢視。

**載入排程報告的已儲存檢視**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟包含您要變更之報告的儀表板。

1. 選擇儀表板頁面頂端的**排程**。

1. 排程窗格將開啟。找到您要變更的排程，然後選擇報告旁邊的省略符號 (三個點) 圖示，以開啟排程選單，然後選擇**詳細資訊**。

1. 選擇**載入已儲存的檢視**。用於所選排程的儀表板已儲存檢視已轉譯。拍攝儀表板快照時處於作用中狀態的所有篩選條件值都會套用至儀表板。載入儀表板的已儲存檢視後，讀者目前的儀表板檢視就會遺失。

## 更新排程讀者產生之報告的檢視
<a name="reader-scheduling-update-view"></a>

在 Quick Sight 中建立報告之後，他們可以使用**排程**窗格來更新排程報告中所使用的儀表板檢視。依照下列程序來更新排程報告的儀表板檢視。

**變更排程報告的儀表板檢視**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟包含您要變更之報告的儀表板。

1. 選擇儀表板頁面頂端的**排程**。

1. 排程窗格將開啟。找到您要變更的排程，然後選擇報告旁邊的省略符號 (三個點) 圖示，以開啟排程選單，然後選擇**詳細資訊**。

1. 選擇**載入已儲存的檢視**。用於所選排程的儀表板已儲存檢視已轉譯。拍攝儀表板快照時處於作用中狀態的所有篩選條件值都會套用至儀表板。載入儀表板的已儲存檢視後，讀者目前的儀表板檢視就會遺失。

1. 更新您想要變更的儀表板篩選條件。

1. 選擇儀表板頁面頂端的**排程**。

1. 排程窗格將開啟。找到您要變更的排程，然後選擇報告旁邊的省略符號 (三個點) 圖示，以開啟排程選單，然後選擇**編輯**。

1. 導覽至**儀表板檢視**區段，然後選擇**自訂檢視**。您更新的新篩選條件值會套用到儀表板報告。

1. 選擇**儲存**以更新排程。

## 更新讀者產生報告排程
<a name="reader-scheduling-update-schedule"></a>

建立讀取器產生的報告後，Amazon Quick 讀取器可以使用**排程**窗格將報告排程設為作用中或非作用中。依照下列程序來更新讀者產生報告排程的作用中狀態。

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟包含您要變更之報告的儀表板。

1. 選擇在儀表板頁面頂端的**排程**，以開啟**排程**窗格。

1. 選擇**排程**。

1. 導覽至**我的排程**區段，並尋找您想要更新的排程。

1. 使用切換，將報告排程設定為**作用中**或**非作用中**。

1. 完成報告排程的變更後，請關閉**排程**窗格。

# Amazon Quick Sight 儀表板的書籤檢視
<a name="dashboard-bookmarks"></a>

當您將儀表板載入為 Amazon Quick 讀取器或作者時，您可以建立書籤來擷取您感興趣的特定檢視。例如，您可以針對特定篩選條件設定與原始發布的儀表板不同的儀表板建立書籤。這樣，您便可以快速找回您需要的資料。

建立書籤後，您可以將其設定為在新工作階段中開啟的儀表板的預設檢視。這不會影響其他人的儀表板檢視。

您可以為儀表板建立最多 200 個書籤，並透過 URL 連結與該儀表板的其他訂閱用戶共用書籤。

儀表板書籤可在 Quick 主控台上取得。

目前不支援像素完美報告的儀表板書籤。如需像素完美報告的詳細資訊，請參閱 [在 Amazon Quick Sight 中使用像素完美報告](working-with-reports.md)。

參閱下方主題了解如何使用書籤。

**Topics**
+ [

# 在 Amazon Quick Sight 中建立書籤
](dashboard-bookmarks-create.md)
+ [

# 在 Amazon Quick Sight 中更新書籤
](dashboard-bookmarks-update.md)
+ [

# 在 Amazon Quick Sight 中重新命名書籤
](dashboard-bookmarks-rename.md)
+ [

# 將書籤設為 Amazon Quick Sight 中的預設檢視
](dashboard-bookmarks-default.md)
+ [

# 在 Amazon Quick Sight 中共用書籤
](dashboard-bookmarks-share.md)
+ [

# 在 Amazon Quick Sight 中刪除書籤
](dashboard-bookmarks-delete.md)

# 在 Amazon Quick Sight 中建立書籤
<a name="dashboard-bookmarks-create"></a>

通過以下程序建立儀表板書籤。

**建立儀表板書籤**

1. 開啟您要檢視的已發布儀表板並變更篩選條件或參數，或選取所需的工作表。例如，您可以篩選到您感興趣的區域，也可以使用儀表板上的工作表控制項來選取特定的日期範圍。

1. 選擇右上角的書籤圖示，然後選擇**新增書籤**。

1. 在開啟的**新增書籤**窗格中，輸入書籤的名稱，然後選擇**儲存**。

   書籤已儲存，儀表板名稱將更新並顯示書籤名稱 (位於左上角)。

   您可以隨時透過選取右側**書籤**窗格中的**原始儀表板**，返回作者發布的原始儀表板檢視。

# 在 Amazon Quick Sight 中更新書籤
<a name="dashboard-bookmarks-update"></a>

您可以隨時變更書籤儀表板檢視，並更新書籤以永遠反映相關變更。

**更新書籤**

1. 開啟已發布的儀表板並對篩選條件或參數進行所需的變更，或選取一個工作表。

1. 選擇右上角的書籤圖示。

1. 在開啟的**書籤**窗格中，選擇要更新的書籤的內容選單 (三個垂直排列的點)，然後選擇**更新**。

   將出現一則表示更新已完成的訊息。

# 在 Amazon Quick Sight 中重新命名書籤
<a name="dashboard-bookmarks-rename"></a>

使用以下程序來重新命名書籤。

**重新命名書籤**

1. 在已發布的儀表板中，選擇右上角的書籤圖示以開啟**書籤**窗格。

1. 在**書籤**窗格中，選擇要重新命名的書籤的內容選單 (三個垂直排列的點)，然後選擇**重新命名**。

1. 在**重新命名書籤**窗格中，輸入書籤的名稱，然後選擇**儲存**。

# 將書籤設為 Amazon Quick Sight 中的預設檢視
<a name="dashboard-bookmarks-default"></a>

根據預設，當您更新儀表板時，Quick Sight 會記住這些變更，並在您關閉儀表板後保留這些變更。這樣，當您再次開啟儀表板時，便可以從上次中斷的地方繼續。您可以將某個書籤設定為儀表板的預設檢視。如果您這樣做，則無論您在上次工作階段期間進行的變更如何，只要您開啟儀表板，都會向您顯示該書籤檢視。

**將書籤設定為儀表板的預設檢視**

1. 在已發布的儀表板中，選擇右上角的書籤圖示以開啟**書籤**窗格。

1. 在**書籤**窗格中，選擇要設定為預設檢視的書籤的內容選單 (三個點)，然後選擇**設定為預設**。

# 在 Amazon Quick Sight 中共用書籤
<a name="dashboard-bookmarks-share"></a>

建立書籤後，您可以與有權檢視儀表板的其他人共用檢視的 URL 連結。然後其他人可以將相應檢視儲存為自己的書籤。

**與其他儀表板訂閱用戶共用書籤**

1. 在已發布的儀表板中，選擇右上角的書籤圖示以開啟**書籤**窗格。

1. 在**書籤**窗格中，選擇要共用的書籤，以便將儀表板更新至相應檢視。

1. 選擇右上角的共用圖示，然後選擇**共用此檢視**。

   您可以複製 Quick Sight 提供的 URL 連結，並將其貼到電子郵件或 IM 訊息中，以與其他人共用。然後，URL 連結的接收者可以將相應檢視儲存為自己的書籤。如需共用儀表板檢視的詳細資訊，請參閱 [共用 Amazon Quick Sight 儀表板的檢視](share-dashboard-view.md)。

# 在 Amazon Quick Sight 中刪除書籤
<a name="dashboard-bookmarks-delete"></a>

使用以下程序來刪除書籤 。

**刪除書籤**

1. 在已發布的儀表板中，選擇右上角的書籤圖示以開啟**書籤**窗格。

1. 在**書籤**窗格中，選擇要刪除的書籤的內容選單 (三個垂直排列的點)，然後選擇**刪除**。

1. 在開啟的**刪除書籤**窗格中，選擇**是，刪除書籤**。

# 在 Amazon Quick Sight 中使用機器學習 (ML) 取得洞見
<a name="making-data-driven-decisions-with-ml-in-quicksight"></a>

Amazon Quick Sight 使用機器學習來協助您發現資料中的隱藏洞見和趨勢、識別關鍵驅動因素，以及預測業務指標。您也可以使用內嵌於儀表板中採用自然語言敘述的這些洞見。

使用機器學習 (ML) 和自然語言功能，Amazon Quick Sight Enterprise Edition 可讓您超越描述性和診斷分析，並啟動預測和決策。您可以一看便知資料的意涵、共享您的發現，以及探索達成目標的最佳決策。無須培養團隊和開發科技，即可建立所需的機器學習模型和演算法，達成此目標。

您可能已建置視覺效果，來回答發生什麼情況、何時發生、在哪裡發生等相關問題，並提供向下鑽研資訊，以便調查和辨識模式。藉由 ML 洞見，您可以避免耗費數小時的時間來手動分析和調查。您可以從自訂的上下文相關敘述清單 (稱為*自動敘述*) 選取上下文相關敘述，然後新增至您的分析中。除了選擇自動敘述之外，您還可以選擇檢視預測、異常，以及造成這些情況的因素。您也可以新增以純語言解釋關鍵要點的自動敘述，為貴公司提供單一的資料導向事實。

隨著時間經過且資料流經系統，Amazon Quick Sight 會持續學習，以便提供更相關的洞見。您可以決定要以其提供的資訊進行哪些動作，而不是決定資料代表哪些意義。

有了以機器學習為基礎的共享基礎，您的所有分析師和利害關係人都可以看到立基於數百萬指標的趨勢、異常、預測和自訂敘述。他們可以看到根本原因、考量預測、評估風險，以及制定明智、合理的決策。

您可以建立像這樣的儀表板，無需手動分析、無需自訂開發技能，也無需了解機器學習模型或演算法。所有此功能都內建於 Amazon Quick Sight Enterprise Edition 中。

**注意**  
機器學習功能於產品內根據需要使用。主動採用機器學習的功能正是如此標示。

透過 ML Insights，Amazon Quick Sight 提供三個主要功能：
+ **採用 ML 技術的異常偵測** – Amazon Quick Sight 使用 Amazon 經過驗證的機器學習技術，持續分析所有資料以偵測異常 （極端值）。您可以辨識造成您業務指標出現重大變化的主要驅動因素，例如高於預期的銷售量或網站流量滑落。Amazon Quick Sight 在數百萬個指標和數十億個資料點上使用 Random Cut Forest 演算法。這樣做可讓您取得常埋藏於彙總資料中，無法透過手動分析存取的深入洞見。
+ **採用 ML 技術的預測** – Amazon Quick Sight 可讓非技術使用者自信地預測其關鍵業務指標。內建 ML Random Cut Forest 演算法自動處理複雜的真實情境，例如偵測季節性和趨勢，排除極端值並推算遺漏值。您可以利用簡單的點選式介面與資料互動。
+ **自動敘述** – 透過在 Amazon Quick Sight 中使用自動敘述，您可以建置具有內嵌敘述的豐富儀表板，以純語言說出您資料的故事。這樣做可讓您省下細細篩選圖表和資料表的時數，就能擷取用於報告的關鍵洞見。它也會在您的組織內對於資料凝聚共識，以便您更快制定決策。您可以使用建議的自動敘述，或自訂運算和語言，以符合您的特有需求。Amazon Quick Sight 就像提供個人資料分析師給您的所有使用者一樣。

**Topics**
+ [

# 了解 Amazon Quick Sight 使用的 ML 演算法
](concept-of-ml-algorithms.md)
+ [

# 搭配 Amazon Quick Sight 使用 ML 洞察的資料集需求
](ml-data-set-requirements.md)
+ [

# 在 Amazon Quick Sight 中使用洞見
](computational-insights.md)
+ [

# 使用 Amazon Quick Sight 建立自動敘述
](narratives-creating.md)
+ [

# 透過採用 ML 技術的異常偵測來偵測極端值
](anomaly-detection.md)
+ [

# 使用 Amazon Quick Sight 預測和建立假設案例
](forecasts-and-whatifs.md)

# 了解 Amazon Quick Sight 使用的 ML 演算法
<a name="concept-of-ml-algorithms"></a>


|  | 
| --- |
|  您不需要任何機器學習技術經驗，即可在 Amazon Quick Sight 中使用 ML 功能。如果讀者想仔細了解此演算法的詳細資訊，本節探討此演算法的技術層面。使用其中功能不需要閱讀本資訊。  | 

Amazon Quick Sight 使用內建版本的隨機剪切森林 (RCF) 演算法。下列各節說明 Amazon Quick Sight 的意義及其使用方式。

首先，我們看一下其中涉及的一些術語：
+ 異常：以相同樣本中異於其他多數為特點來描繪的事物。也稱為極端值、例外、偏差等。
+ 資料點：資料集中的一個離散單元，或者簡單地說，即一個資料列。不過，如果您對不同的維度使用量值，則一個資料列可以有多個資料點。
+ 決策樹：將評估資料模式的演算法決策過程視覺化的方式。
+ 預測：會根據目前和過去行為來預測未來行為。
+ 模型：演算法或演算法所學習結果的數學表示法。
+ 季節性：時間序列資料中週期性發生的重複行為模式。
+ 時間序欄：一個欄位或資料欄中一組已排序的日期或時間資料。

**Topics**
+ [

# 異常偵測與預測之間有何差異？
](difference-between-anomaly-detection-and-forecasting.md)
+ [

# 什麼是 RCF？
](what-is-random-cut-forest.md)
+ [

# RCF 如何套用到異常偵測上
](how-does-rcf-detect-anomalies.md)
+ [

# 如何套用 RCF 來產生預測
](how-does-rcf-generate-forecasts.md)
+ [

# 機器學習和 RCF 的參考
](learn-more-about-machine-learning-and-rcf.md)

# 異常偵測與預測之間有何差異？
<a name="difference-between-anomaly-detection-and-forecasting"></a>

異常偵測可識別極端值及其貢獻驅動因素以回答這個問題：「發生了什麼通常不會發生的事？」 預測則會解答像是「如果每件事持續如預期發生，未來會出現什麼情況？」之類的問題。允許預測的數學也可讓我們提問「如果有些事改變了，到時出現什麼情況？」 

異常偵測和預測一開始時都會檢查目前已知的資料點。Amazon Quick Sight 異常偵測從已知項目開始，因此可以建立已知集合以外的項目，並將這些資料點識別為異常 （極端值）。Amazon Quick Sight 預測會排除異常資料點，並遵循已知模式。預測專注於已建立的資料分佈模式。反之，異常偵測專注於偏離預期情況的資料點。每種方法從不同的方向來制定決策。

# 什麼是 RCF？
<a name="what-is-random-cut-forest"></a>

*隨機切割森林* (RCF) 是一種特殊類型的*隨機森林* (RF) 演算法，是機器學習中廣泛採用的成功技巧。它需要一組隨機資料點、切削成相同數量的點，然後建立一組模型。反之，模型對應到決策樹，所以稱為森林。由於 RF 無法以遞增方式輕鬆更新，因此在樹狀建構中以變數發明 RCF，目的是允許遞增更新。

RCF 為非監督演算法，使用叢集分析來偵測時間序列資料的峰值、週期性或季節性中斷，以及資料點例外。隨機切割森林可以做為動態資料串流 (或以時間編製索引的數字序列) 的概要或草圖運作。對於串流的問題，該概要可以回答。以下特點解釋串流及我們如何銜接到異常偵測和預測：
+ *串流演算法*是佔用較少記憶體的線上演算法。在線上演算法看見第 **(t\$11)-** 個點之前，會對依時間 **t** 編製索引的輸入點制定決策。佔用較少的記憶體時，靈活的演算法即能在低延遲下產生解答，並讓使用者與資料互動。
+ 在異常偵測和預測中，必須如同在*線上*演算法中，顧及時間加諸的順序。如果我們已經知道大後天將會發生什麼情況，那麼預測明天會發生什麼情況就不算是預測，而就只是插補未知的遺漏值。同樣地，今天推出的新產品可以是異常，但在下一季結束時不必然是異常。

# RCF 如何套用到異常偵測上
<a name="how-does-rcf-detect-anomalies"></a>

人類可以輕鬆區別異於其餘資料的資料點。RCF 會建置決策樹的「樹系」，然後監控新的資料點如何改變樹系，藉此跟人類做同樣的動作。

*異常*是把您的注意力從正常資料點吸引過來的資料點，想像一下在滿佈黃花田野中出現一朵紅花的影像。此「注意力轉移」編碼於樹中 (也就是 RCF 中的模型) 可能會被輸入點佔用的 (預期) 位置。此概念是建立樹系，其中每個決策樹源自於為了訓練演算法而取樣的資料分割。以更技術性的用語來說，每個決策樹會在樣本上建置特定類型的二元空間分割樹。當 Amazon Quick Sight 取樣資料時，RCF 會為每個資料點指派異常分數。它會給看來異常的資料點打更高的分數。分數大致與此樹中所產生的資料點深度成反比。隨機切割森林演算法會藉由計算出每個組成樹的平均分數，並根據樣本大小來擴充結果，以指派異常分數。

由於各模型本身即是較弱的預測器，因此會彙總不同模型的投票或分數。當資料點的分數與最近的分數明顯不同時，Amazon Quick Sight 會將資料點識別為異常。什麼情況稱得上異常，這取決於應用程式。

[在串流使用穩健的以 Random Cut Forest 為基礎的異常偵測](http://proceedings.mlr.press/v48/guha16.pdf)一文提供此先進線上異常偵測的多種範例 (時間序列異常偵測)。RCF 用於資料的接續區段或「瓦片」，其中鄰近區段中的資料會做為最近資料的內容。上一版採用 RCF 技術的異常偵測演算法會給整塊瓦片打分數。Amazon Quick Sight 中的演算法也提供目前延伸內容中異常的大致位置。在異常偵測出現延遲的情境下，此約略位置相當實用。由於任一演算都都需要將「之前察覺到的偏差」描述成「異常偏差」，因而會發生延遲，而此延遲會隨著時間發生。

# 如何套用 RCF 來產生預測
<a name="how-does-rcf-generate-forecasts"></a>

若要預測固定時間序列中的下一個值，RCF 演算法則會解答「在我們有候選值之後，最有可能完成哪些事情？」的問題。它會使用 RCF 中的單一樹來搜尋最佳候選值。由於每個樹本身即是較弱的預測器，因此會彙總不同樹的候選值。彙總值也可用於產生分位數誤差。此流程會反覆執行 **t** 次，以預測未來的第 **t** 個值。

Amazon Quick Sight 中的演算法稱為 *BIFOCAL*。它使用兩條 RCF 來建立 CALibrated BI-FOrest 架構。第一條 RCF 用於篩選出異常，並提供較弱的預測，然後以第二條 RFC 修正。整體而言，此方法提供比如 ETS 等其他廣泛可用之演算法更健全的預測。

Amazon Quick Sight 預測演算法中的參數數目遠低於其他廣泛可用的演算法。這可讓該演算法立即發揮功效，無需人工調整更龐大的時間序列資料點。隨著特定時間序列中累積更多資料，Amazon Quick Sight 中的預測可以根據資料偏離和模式變更進行調整。對於顯示趨勢的時間序列而言，會先執行趨勢偵測，以使序列固定。使用趨勢回推固定序列的預測。

由於演算法仰賴有效率的線上演算法 (RCF)，因此可支援「模擬」查詢。在這些之中，部分預測可以修改並視為假設處理，以提供有條件的預測。這是在分析時探索「模擬」情境之能力的起源。

# 機器學習和 RCF 的參考
<a name="learn-more-about-machine-learning-and-rcf"></a>

若要進一步了解機器學習和此演算法，我們建議使用以下資源：
+ [強健的 Random Cut Forest (RRCF)：不用數學解說](https://www.linkedin.com/pulse/robust-random-cut-forest-rrcf-math-explanation-logan-wilt/)文章提供清楚易懂的解說，沒有數學方程式。
+ [*《The Elements of Statistical Learning: Data Mining, Inference, and Prediction*, Second Edition (Springer Series in Statistics)》](https://www.amazon.com/Elements-Statistical-Learning-Prediction-Statistics/dp/0387848576)一書提供徹底的機器學習概論。
+ [http://proceedings.mlr.press/v48/guha16.pdf](http://proceedings.mlr.press/v48/guha16.pdf) 是學術性論文，深入探討異常偵測和預測的技術，並附上範例。

其他服務中會出現不同的 RCF 方法 AWS 。若要探索如何在其他服務中使用 RCF，請參閱下列各項：
+ *Amazon Managed Service for Apache Flink SQL 參考：*[RANDOM\$1CUT\$1FOREST](https://docs.aws.amazon.com/kinesisanalytics/latest/sqlref/sqlrf-random-cut-forest.html) 和 [RANDOM\$1CUT\$1FOREST\$1WITH\$1EXPLANATION](https://docs.aws.amazon.com/kinesisanalytics/latest/sqlref/sqlrf-random-cut-forest-with-explanation.html)
+ *Amazon SageMaker 開發人員指南：*[Random Cut Forest (RCF) 演算法](https://docs.aws.amazon.com/sagemaker/latest/dg/randomcutforest.html)。[Machine Learning for Business](https://www.amazon.com/Machine-Learning-Business-Doug-Hudgeon/dp/1617295833/ref=sr_1_3) (2018 年 10 月) 中的 [The Random Cut Forest Algorithm](https://freecontent.manning.com/the-randomcutforest-algorithm/) 一章對這種方法作了解釋。

# 搭配 Amazon Quick Sight 使用 ML 洞察的資料集需求
<a name="ml-data-set-requirements"></a>

若要開始使用 Amazon Quick Sight 的機器學習功能，您需要連線到或匯入資料。您可以使用現有的 Amazon Quick Sight 資料集或建立新的資料集。您可以值接查詢您的 SQL 相容來源，或將資料擷取到 SPICE。

資料必須擁有下列屬性：
+  至少一個指標 (例如，銷售、訂單、出貨單位、註冊等等)。
+  至少一個類別維度 (例如，產品類別、通路、區隔、產業等)。NULL 值的類別會遭到忽略。
+ 異常偵測至少需要 15 個資料點來進行訓練。例如，如果資料的粒紋是每日，則至少需要 15 天的資料。例如，如果資料的粒紋是每月，則至少需要 15 個月的資料。
+ 預測最適合處理更多資料。請確定您的資料集擁有足夠的歷史資料，以取得最佳結果。例如，如果資料的粒紋是每日，則至少需要 38 天的資料。例如，如果資料的粒紋是每月，則至少需要 43 個月的資料。以下為時間粒紋的要求：
  + 年：32 個資料點
  + 季：35 個資料點
  + 月：43 資料點
  + 週：35 個資料點
  + 天：38 個資料點
  + 小時：39 個資料點
  + 分鐘：46 資料點
  + 秒：46 個資料點
+ 若要分析異常或預測，至少也需要一個日期維度。

如果您沒有可以開始著手的資料集，可以下載此範例資料集：[ML Insights 範例資料集 VI](samples/ml-insights.csv.zip)。備妥資料集後，即可從該資料集建立新分析。

# 在 Amazon Quick Sight 中使用洞見
<a name="computational-insights"></a>

在 Amazon Quick Sight 中，您可以將ready-to-use分析運算新增至分析，做為小工具。您可以透過兩種方式使用洞見：
+ **建議的洞見**

  Amazon Quick Sight 會根據對您放入視覺效果中的資料的解釋，建立建議的洞見清單。此清單會根據內容改變。換言之，您可以看到根據您新增至視覺效果的欄位，以及您所選擇的視覺效果類型而出現的不同建議。例如，如果您有的是時間序列視覺效果，您的洞見可能包括逐個期間變化、異常及預測的洞見。隨著您新增更多視覺效果至分析中，就會產生更多建議的洞見。
+ **自訂洞見**

  自訂洞見可讓您用自己的文字提供 widget 中欄位內容，建立自己的運算方式。當您建立自訂洞見時，您會將該洞見新增至分析中，然後選擇您要使用的計算類型。然後您可以新增文字和格式，使外觀變成您想要的風格。您也可以新增更多欄位、計算和參數。

您可以將任何建議和自訂洞見的組合新增至分析之中，以建立最符合您用途的決策制定環境。

**Topics**
+ [

# 新增建議的洞見
](adding-suggested-insights.md)
+ [

# 將自訂洞見新增至您的分析
](adding-insights.md)

# 新增建議的洞見
<a name="adding-suggested-insights"></a>

請使用下列步驟，將建議的洞見新增到您的分析之中。

開始之前，請確定您的資料集符合 [搭配 Amazon Quick Sight 使用 ML 洞察的資料集需求](ml-data-set-requirements.md)中概述的準則。

1. 從新增一些欄位至視覺效果的分析開始。

1. 在左側，選擇 **Insights (洞見)**。**Insights (洞見)** 面板隨即開啟，並顯示即時可用的建議洞見清單。

   每個視覺效果也會在上邊界顯示小方塊，以顯示該視覺效果有多少洞見可用。您可以選擇此方塊，來開啟 **Insights (洞見)** 面板，然後就會開啟至您最近開啟的任何檢視。

   向下捲動，以預覽更多洞見。

   顯示的洞見取決於您選擇加入視覺效果中的欄位的資料類型。每次變更視覺效果時，就會產生此清單。如果您進行變更，請查看 **Insights (洞見)**，以了解最新動向。若要取得特定的洞見，請參閱[將自訂洞見新增至您的分析](adding-insights.md)。

1. (選用) 開啟內有更多選項的內容選單，查看其中一項洞見。若要執行此操作，請選擇洞見右上方的省略符號 (**…**)。

   每種洞見類型的選項不同。您可以互動的選項包括以下選項：
   + **變更時間序列彙總**：變更為年、季、月、週、天、小時或分鐘。
   + **分析對於指標的貢獻**：選擇要分析的貢獻因子和時間範圍。
   + **顯示全部異常**：瀏覽此時間範圍中的異常。
   + **編輯預測**：選擇預測長度、預測間隔和季節性。
   + **專注於**或**排除**：放大或縮小您的維度資料。
   + **顯示詳細資訊**：來查看更多最近的異常 (極端值) 資訊。
   + 對於洞見在您的分析中的實用性提供意見回饋。

1. 選擇洞見標題旁的加號 (**\$1**)，將建議的洞見新增至您的分析。

1. (選用) 新增洞見至您的分析後，請自訂您想要顯示的敘述。若要執行此操作，請選擇 **v** 型視覺效果選單，然後選擇**Customize narrative (自訂敘述)**。如需詳細資訊，請參閱[使用 Amazon Quick Sight 建立自動敘述](narratives-creating.md)。

   如果您的洞見適用於異常 (極端值) ，您也可以變更異常偵測任務的設定。若要執行此操作，請選擇**Configure anomaly (設定異常)**。如需詳細資訊，請參閱[設定採用 ML 技術的異常偵測以進行極端值分析](anomaly-detection-using.md)。

1. (選用) 若要從您的分析中移除洞見，請從視覺效果右上方的 **v** 型視覺效果選單。然後選擇**刪除**。

# 將自訂洞見新增至您的分析
<a name="adding-insights"></a>

如果您不想要使用任何建議的洞見，您可以建立自己的自訂洞見。透過以下程序，建立自訂運送洞見。

1. 使用現有分析開始著手。在上層選單列上，選擇**新增\$1**。然後選擇 **Add Insight (新增洞見)**。

   新洞見的容器即新增至分析。

1. 執行以下任意一項：
   + 從清單中選擇要使用的運算。選擇每個項目時，即顯示該洞見輸出的範例。當您找到要使用的洞見時，請選擇 **Select (選取)**。
   + 離開此畫面，手動自訂洞見。尚未設定的洞見具有 **Customize insight (自訂洞見)** 按鈕。選擇此按鈕開啟 **Configure narrative (設定敘述)** 畫面。如需有關使用表達式編輯器的詳細資訊，請參閱[使用 Amazon Quick Sight 建立自動敘述](narratives-creating.md)。

   由於您正在開始建立洞見，因此它不是以現有的視覺效果為基礎。當新增洞見至分析時，就會顯示筆記，指出需要哪種資料才能完成您的請求。例如，可能會要求**1 dimension in Time (1 維時間)**。在此情況下，您會新增維度至 **Time (時間)** 欄位集。

1. 擁有正確資料後，請依照任何其餘的畫面提示，完成建立自訂洞見的作業。

1. (選用) 若要從您的分析中移除洞見，請從視覺效果右上方的 **v** 型視覺效果選單。然後選擇**刪除**。

# 使用 Amazon Quick Sight 建立自動敘述
<a name="narratives-creating"></a>

*自動敘述*是自然語言摘要 widget，會顯示描述性文字，而非圖表。您可以在分析中各處內嵌這些 widget，以強調關鍵洞見和標註。您無需篩檢視覺效果、向下切入、比較數值，以及重新檢查想法，就能得出結論。您也無需嘗試了解資料的意涵，或與您的同事討論不同的解釋。您反而能夠從資料推斷結論，並在分析中顯示結論，平淡地陳述。任何人都可共享單一解釋。

Amazon Quick Sight 會自動解譯儀表板中的圖表和資料表，並以自然語言提供許多建議的洞見。您可以選擇的建議洞見皆為現成，並附上文字、計算和函數。但您也可以變更建議的洞見。您也可以設計自己的洞見。身為儀表板的作者，您擁有根據自身需求全權自訂運算和語言的彈性。您可以使用敘述，以純語言有效地述說資料的真相。

**注意**  
敘述獨立於機器學習。只有在敘述中加入預測或異常 (極端值) 運算時，才會使用 ML。

**Topics**
+ [

# 包含自動敘述的洞見
](auto-narratives.md)
+ [

# 使用敘述表達式編輯器
](using-narratives-expression-editor-step-by-step.md)
+ [

# 表達式編輯器工作區
](using-narratives-expression-editor-menus.md)
+ [

# 新增 URL
](using-narratives-expression-editor-urls.md)
+ [

# 使用自動敘述運算
](auto-narrative-computations.md)

# 包含自動敘述的洞見
<a name="auto-narratives"></a>

當您將洞見 (也稱為自動敘述) 新增至您的分析時，您可以選擇以下範本。在以下清單中，它們以範例來定義。每個定義包含讓自動敘述發揮作用所至少需要的欄位清單。如果您只使用 **Insights (洞見)** 索引標籤中建議的洞見，請選擇適當的欄位，讓洞見出現在建議的洞見清單中。

如需有關自訂自動敘述的詳細資訊，請參閱[使用自動敘述運算](auto-narrative-computations.md)。
+ **底端排名**：例如，依銷售營收列出位居底端的三個州。您在**類別**欄位集至少需要有一個維度。
+ **底端移動工具**：例如，依銷售營收列出位居底端的三項產品。您在**時間**欄位集至少需要有一個維度，在**類別**欄位集至少需要有一個維度。
+ **預測** *(採用 ML 技術的洞見)：*例如，「2016 年 1 月的總銷售額預測為 58,613 美元」。此外，他們還擁有至少一項維度，您需要在**時間**欄位。
+ **成長率**：例如，「3 個月的銷售複合成長率為 22.23%」。此外，他們還擁有至少一項維度，您需要在**時間**欄位。
+ **最大值**：例如，「最高的月份是 2014 年 11 月，銷售額為 112,326 美元」。此外，他們還擁有至少一項維度，您需要在**時間**欄位。
+ **指標比較**：例如，「2014 年 12 月的總銷售額為 90,474 美元，比 81,426 美元的目標高 10%」。您在 **Time (時間)** 欄位集至少需要有一個維度，在 **Values (值)** 欄位集至少需要有兩個量值。
+ **最小值**：例如，「最低的月份是 2011 年 2 月，銷售額為 4,810 美元」。此外，他們還擁有至少一項維度，您需要在**時間**欄位。
+ **異常偵測** *(採用 ML 技術的洞見)*：例如，2019 年 1 月 3 日總銷售的前三項極端值及其貢獻驅動因素。您在 **Time (時間)** 欄位集至少需要有一個維度，在 **Values (值)** 欄位集至少需要有一個量值，在 **Categories (類別)** 欄位集至少需要有一個維度。
+ **逐個期間**：例如，「2014 年 11 月的總銷售額增加 44.39% (34,532 美元)，從 77,793 美元增加到 112,326 美元」。此外，他們還擁有至少一項維度，您需要在**時間**欄位。
+ **期間至今**：例如「2014 年 11 月 30 日年初至今的銷售額增加 25.87% (132,236 美元)，從 511,236 美元增加到 643,472 美元」。此外，他們還擁有至少一項維度，您需要在**時間**欄位。
+ **頂端排名**：例如，依銷售營收列出位居頂端的三個州。您在**類別**欄位集至少需要有一個維度。
+ **頂端移動工具**：例如，依銷售營收列出 2014 年 11 月位居頂端的產品。您在**時間**欄位集至少需要有一個維度，在**類別**欄位集至少需要有一個維度。
+ **彙整總和**：例如，「總營收為 2,297,200 美元。」 您在 **Time (時間)** 欄位集至少需要有一個維度，在 **Values (值)** 欄位集至少需要有一個量值。
+ **不重複的值**：例如，「在 `Customer_IDs` 中有 793 個不重複的值」。您在**類別**欄位集至少需要有一個維度。

# 使用敘述表達式編輯器
<a name="using-narratives-expression-editor-step-by-step"></a>

以下逐步解說顯示如何自訂敘述的範例。在此範例中，我們使用逐個期間運算類型。

1. 使用現有分析開始著手。新增 **逐個期間**洞見至現有分析。最簡單的方法是選擇 \$1 圖示、選擇**Add insight (新增洞見)**，然後從清單中選擇洞見類型。若要了解何種運算洞見可新增為自動敘述，請參閱[包含自動敘述的洞見](auto-narratives.md)。

   選擇洞見的類型後，選擇 **Select (選取)** 來建立小工具。若要建立空白敘述，請關閉此畫面，不要選擇範本。若要依照此範例進行，請選擇 **Period over period (逐個期間)**。

   如果您在新增洞見時已選取視覺效果，欄位集會有預先設定的日期、指標和類別欄位。這些設定是在建立洞見時所選擇的視覺效果。您可以視需要自訂欄位。

   您僅可為新的或現有洞見 (文字型) widget 自訂敘述。由於現有的視覺效果 (圖表型) 是不同類型的 widget，因此您無法新增至現有的視覺效果。

1. 選擇視覺效果附帶選單，然後選擇 **Customize narrative (自訂敘述)**，來編輯表達式編輯器中的敘述。

   在此情況下，**Computations (運算)** 是預先定義的計算 (逐個期間、期間至今、成長率、最大值、最小值、頂端移動工具等)；您可以在範本中參考這些計算，以描述您的資料。目前，Amazon Quick Sight 支援 13 種不同類型的運算，您可以將這些運算新增至洞見。在此範例中，預設為新增 **PeriodOverPeriod**，這是因為我們從建議的洞見面板中選擇 **Period Over Period (逐個期間)** 範本。

1. 選擇右下方的 **Add computation (新增運算)**，以新增新的運算，然後從清單中選擇一個運算。針對此演練，請選擇 **Growth rate (成長率)**，然後選擇 **Next (下一步)**。

1. 選擇要計算的期間數量，來設定運算。預設值為四，且適用於我們的範例。或者，您可以變更位於畫面頂端的運算名稱。然而，就我們的目的而言，請沿用此名稱。
**注意**  
您建立的運算名稱在洞見中是唯一的名稱。您可以參考敘述範本中相同類型的多個運算。例如，假設您有兩個指標、銷售營收及售出的單元。如果各指標的名稱不同，您就能建立各指標的成長率運算。  
不過，異常運算不相容於相同 widget 中的任何其他運算類型。異常偵測本身必須存在於洞見中。若要在相同分析中使用其他運算，請與異常分開放入洞見。

   選擇 **Add (新增)** 繼續操作。

1. 展開右側的 **Computations (運算)**。屬於敘述一部分的運算則在清單中顯示。在此情況下，運算是 **PeriodOverPeriod** 和 **GrowthRate**。

1. 在工作空間中，請在最終句點後方新增下列文字：**Compounded growth rate for the last**，接著新增空格。

1. 接下來，如果要新增運算，請將您的游標放在單字 **last** 後方的空格。在右側 **GrowthRate** 下方，選擇名為 **timePeriods** 的表達式 (按一下即可新增)。

   這麼做會插入表達式 **GrowthRate.timePeriods**，這是您在 **GrowthRate** 組態中設定的期間數量。

1. 以 ** days is ** (前後空格) 完成句子，並新增表達式 **GrowthRate.compoundedGrowthRate.formattedValue**，後面接著句點 (`.`)。請清單選擇表達式，而不要輸入進去。不過，您可以在新增表達式後編輯其中的內容。  
![\[開啟了表達式清單的表達式編輯器。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/narrative-add-expression.png)
**注意**  
**formattedValue** 表達式會傳回根據適用於欄位上指標的格式進行格式化的字串。若要執行指標數學運算，請使用 **value**，即可傳回整數或十進位的原始值。

1. 新增有條件的陳述式和格式。請將游標放在範本最後，在 `formattedValue` 表達示之後。您可以視需要新增空格。在 **Edit narrative (編輯敘述)** 選單列上，選擇 **Insert code (插入程式碼)**，然後從清單選擇 **Inline IF (內嵌 IF)**。即開啟表達式區塊。

1. 在表達式區塊開啟後，請從表達式清單選擇 **GrowthRate**、**compoundedGrowthRate**、**value**。在表達式最後輸入 **>0**。選擇**儲存**。目前先不要移動游標。

   針對條件式內容會顯示提示；請輸入 **better than expected\$1** 然後選取您剛輸入的文字，並使用頂端的格式工具列，使文字變為綠色粗體。

1. 成長率不夠好時，請重複上一步，新增另一個表達式區塊。但這次請改成 **<0**，然後輸入文字 **worse than expected**。讓文字變成紅色，而非綠色。

1. 選擇**儲存**。我們剛建立的自訂敘述看起來應如下所示。  
![\[自訂敘事。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/narrative-example-result.png)

表達式編輯器提供自訂敘述的複雜的工具。您也可以參考為分析或儀表板建立的參數，並使用一組內建函數，以進一步自訂。

**提示**  
若要建立空白敘述，請使用 **\$1** 圖示新增洞見，然後 **Add insights (新增洞見)**。但不要選擇範本，只要關閉畫面。  
想開始自訂敘述時，最好的方法是使用現有的範本來學習語法。

# 表達式編輯器工作區
<a name="using-narratives-expression-editor-menus"></a>

使用表達式編輯器來自訂最符合您業務需求的敘述。下方資訊提供表達式編輯器工作區的概覽，並列出可為您的敘述設定的所有選單選項。如需說明如何建立自訂敘述的逐步說明，請參閱[使用敘述表達式編輯器](using-narratives-expression-editor-step-by-step.md)。

在畫面的右側上，您可以找到可新增到敘述的項目清單：
+ **運算**：您可以使用此項目，來從此洞見中可用的運算進行選擇。您可以展開此清單。
+ **參數**：您可以使用此項目，來從分析中存在的參數進行選擇。您可以展開此清單。
+ **函數**：您可以使用此項目，來從可新增到敘述中的函數進行選擇。您可以展開此清單。
+ **新增運算**：您可以使用此按鈕建立另一個運算。新的運算會出現在 **Computations (運算)** 清單中，並準備好新增到洞見。

您可以在敘述表達式編輯器的底部，找到隨著您作業而更新的敘述預覽。如果您在敘述中導入錯誤，或是敘述為空白，則此區域也會顯示提醒。若要查看機器學習技術的洞見預覽 (例如異常偵測或預測)，請在自訂敘述前至少執行洞見計算一次。

編輯工具位在畫面的頂端。這些工具提供以下選項：
+ **插入程式碼**：您可以從此選單插入以下程式碼區塊：
  + **表達式**：新增自由格式的表達式。
  + **內嵌 IF**：新增會與現有文字區塊同步顯示的 IF 陳述式。
  + **內嵌 FOR**：新增會與現有文字區塊同步顯示的 FOR 陳述式。
  + **區塊 IF**：新增會在個別文字區塊中顯示的 IF 陳述式。
  + **區塊 FOR**：新增會在個別文字區塊中顯示的 FOR 陳述式。

  IF 和 FOR 陳述式可讓您建立有條件格式化的內容。舉例來說，您可以新增 **block IF (區塊 IF)** 陳述式，接著加以設定來將整數與運算的值比較。若要執行此作業，請使用以下步驟，此外也可參考[使用敘述表達式編輯器](using-narratives-expression-editor-step-by-step.md) 中的示範：

  1. 開啟右側的運算選單，並從其中一個運算選擇其中一個以藍色反白的項目。這麼做會將項目新增到敘述。

  1. 在項目上按一下即可開啟。

  1. 輸入您要進行的比較。表達式看起來像這樣：`PeriodOverPeriod.currentMetricValue.value>0`。

  1. 在快顯編輯器中儲存此表達式，此編輯器會提示您輸入**條件式內容**。

  1. 輸入您想要在洞見中顯示的內容，並依照您想要的方式設定它的格式。或者，如果您願意，您可以新增影像或 URL，或向影像新增 URL。
+ **段落**：此選單提供讓您變更字型大小的選項：
  + **H1 Large header (H1 大型標題)**
  + H2 Header (H2 標題)
  + H3 Small header (H3 小型標題)
  + ¶1 大型段落
  + ¶2 段落
  + ¶3 小型段落
+ **字型**：您可以使用此選單匣來選擇文字格式化的選項。這些選項包含粗體、斜體、底線、刪除線、文字的前景顏色 (文字本身) 和文字的背景顏色。您可以選擇圖示來開啟選項，以及再次選取來將選項切換為關閉。
+ **格式化**：您可以使用此選單匣來選擇段落格式化的選項，包括項目符號清單、向左對齊、置中或向右對齊。您可以選擇圖示來開啟選項，以及再次選取來將選項切換為關閉。
+ **影像**：您可以使用此圖示來新增影像 URL。如果提供的連結可供存取，影像就會顯示在您的洞見中。您可以調整影像的大小。如果要根據條件顯示影像，請將影像放在 IF 區塊內。
+ **URL**：您可以使用此圖示來新增靜態或動態 URL。您也可以將 URL 新增至影像。舉例來說，您可以針對執行儀表板新增交通號誌指標影像到洞見，並附上根據紅色、琥珀色和綠色條件連結至新的表單。

# 新增 URL
<a name="using-narratives-expression-editor-urls"></a>

您可以使用敘述表達式編輯器編輯選單上的 **URL** 按鈕，來新增靜態和動態 URL (超連結) 到敘述。您也可以使用下列鍵盤快速鍵：⌘\$1⇧\$1L 或 Ctrl\$1⇧\$1L。

靜態 URL 是不會變更的連結，一律會開啟相同的 URL。動態 URL 是會根據您在設定時提供的表達式或參數，而變更的連結。動態 URL 使用動態評估的表達式或參數建立。

以下是您在敘述中新增靜態連結的範例：
+ **在 IF 陳述式中，您可以在條件式內容中使用 URL。**如果您這麼做，但指標無法滿足預期的值，則連結可能會向使用者傳送具有最佳實務清單的 Wiki，來改善指標。
+ **您可以使用靜態 URL 來建立相同儀表板中另一個工作表的連結，方法是使用下列步驟：**

  1. 前往您要建立連結的表單。

  1. 複製該表單的 URL。

  1. 返回敘述編輯器，並使用剛剛複製的 URL 來建立連結。

以下是您在敘述中新增動態連結的範例：
+ **若要使用查詢搜尋網站，請使用下列步驟。**

  1. 使用以下連結建立 URL。

     ```
     https://google.com?q=<<formatDate(now(),'yyyy-MM-dd')>>
     ```

     此連結會以下列項目評估值的搜尋文字，向 Google 傳送查詢。

     ```
     formatDate(now(), 'yyyy-MM-dd')
     ```

     如果 `now()` 的值為 `02/02/2020`，則敘述上的連結會包含 `https://google.com?q=2020-02-02`。
+ **建立更新參數的連結。**若要執行此作業，請建立連結，並對目前的儀表板或分析 URL 設定 URL。接著，在結尾新增會設定參數值的表達式，例如 `#p.myParameter=12345`。

  假設以下是您開始使用的儀表板連結。

  ```
  https://us-east-1.quicksight.aws.amazon.com/sn/analyses/00000000-1111-2222-3333-44444444
  ```

  如果您對其新增參數值指派，則會如下所示。

  ```
  https://us-east-1.quicksight.aws.amazon.com/sn/analyses/00000000-1111-2222-3333-44444444#p.myParameter=12345
  ```

  如需 URL 中參數的詳細資訊，請參閱[在 URL 中使用參數](parameters-in-a-url.md)。

# 使用自動敘述運算
<a name="auto-narrative-computations"></a>

依照本節協助您了解在自訂自動敘述時可用的函數。若要變更預設預算或以預設運算建置，僅需自訂敘述。

建立自動敘述後，表達式編輯器便會開啟。您也可以選擇視覺效果選單，然後選擇 **Customize Narrative (自訂敘述)**，啟用表達式編輯器。若要在使用表達式編輯器時新增運算，請選擇 **\$1 Add computation (\$1 新增運算)**。

您可以使用下列程式碼表達式，來建置您的自動敘述。這些可以從標示為 **Insert code (插入程式碼)** 的清單中取得。代碼陳述式可以顯示內嵌 (在句子中) 或做為區塊 (在清單中) 顯示。
+ 表達式：建立您自己的程式碼表達式。
+ IF：在評估條件後包括表達式的 IF 陳述式。
+ FOR：循環使用值的 FOR 陳述式。

您可以使用下列運算，來建置您的自動敘述。您無需編輯任何語法，即可使用表達式編輯器，但您也可自訂。若要與語法互動，請在自動敘述表達式編輯器中開啟運算 widget。

**Topics**
+ [

# 採用 ML 技術的異常偵測極端值
](anomaly-detection-function.md)
+ [

# 底端移動工具運算
](bottom-movers-function.md)
+ [

# 底端排名運算
](bottom-ranked-function.md)
+ [

# 採 ML 技術的預測
](forecast-function.md)
+ [

# 成長率運算
](growth-rate-function.md)
+ [

# 最大值運算
](maximum-function.md)
+ [

# 指標比較運算
](metric-comparison-function.md)
+ [

# 最小值運算
](minimum-function.md)
+ [

# 逐個期間運算
](period-over-period-function.md)
+ [

# 期間至今運算
](period-to-date-function.md)
+ [

# 頂端移動工具運算
](top-movers-function.md)
+ [

# 頂端排名運算
](top-ranked-function.md)
+ [

# 彙整總和運算
](total-aggregation-function.md)
+ [

# 唯一值運算
](unique-values-function.md)

# 採用 ML 技術的異常偵測極端值
<a name="anomaly-detection-function"></a>

採用 ML 技術的異常偵測運算會搜尋您的資料是否出現極端值。例如，您可以偵測 2019 年 1 月 3 日總銷售的前三項極端值。若啟用貢獻分析，您也可以偵測每個極端值的主要驅動因素。

若要使用此函數，您在 **Time (時間)** 欄位集至少需要有一個維度，在 **Values (值)** 欄位集至少需要一個量值，在 **Categories (類別)** 欄位集至少需要有一個維度。組態畫面提供了一個選項來分析促成主要驅動因素的其他欄位，即使這些欄位不在欄位集中也無妨。

如需詳細資訊，請參閱[透過採用 ML 技術的異常偵測來偵測極端值](anomaly-detection.md)。

**注意**  
您無法將採用 ML 技術的異常偵測新增至另一個運算，而且也無法將另一個運算新增至異常偵測。

## 運算輸出
<a name="anomaly-detection-computation-outputs"></a>

每個函數會產生一組輸出參數。您可以將這些輸出新增到自動敘述以自訂其顯示內容。您也可以新增自己的自訂文字。

若要尋找輸出參數，請開啟右側的**運算**標籤，並找出您想要使用的運算。運算的名稱是來自您建立洞見時所提供的名稱。選擇輸出參數 (僅按一下即可)。如果您按了兩下，您將新增兩次相同的輸出。您可以在敘述中後續使用 **`bold monospace font`** 中顯示的項目。
+ `timeField`：為**時間**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `timeGranularity`：時間欄位精細程度 (**DAY**、**YEAR** 等)。
+ `categoryFields`：為**分類**欄位集。
  + `name`：欄位的格式化顯示名稱。
+ `metricField`：為**數值**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `aggregationFunction`：用於指標 (**SUM**、**AVG** 等) 的彙總。
+ `itemsCount`：此運算中包含的項目數量。
+ `items`：異常項目。
  + `timeValue`：日期維度中的值。
    + `value`：異常點 (極端值) 的日期/時間欄位。
    + `formattedValue`：異常點日期/時間欄位中的格式化值。
  + `categoryName`：類別的實際名稱 (cat1、cat2 等)。
  + `direction`：識別為異常的 x 軸或 y 軸方向：`HIGH` 或 `LOW`。`HIGH` 表示「高於預期」。`LOW`表示「低於預期」。

    逐一查看項目時，`AnomalyDetection.items[index].direction` 可以包含 `HIGH` 或 `LOW`。例如，`AnomalyDetection.items[index].direction='HIGH'` 或 `AnomalyDetection.items[index].direction=LOW`。`AnomalyDetection.direction` 針對 `ALL` 可以有一個空字串。例如，`AnomalyDetection.direction=''`。
  + `actualValue`：異常點或極端值的指標實際值。
    + `value`：原始值。
    + `formattedValue`：由指標欄位格式化的值。
    + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。
  + `expectedValue`：異常點 (極端值) 的指標預期值。
    + `value`：原始值。
    + `formattedValue`：由指標欄位格式化的值。
    + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。

# 底端移動工具運算
<a name="bottom-movers-function"></a>

排名最低運算會依日期計算請求的類別數量 (在自動敘述資料集排名最低)。例如，您可以建立運算，依銷售營收尋找位居底端的三項產品。

若要使用此函數，您在 **Time (時間)** 欄位集至少需要有一個維度，在 **Categories (類別)** 欄位集至少需要有一個維度。

## Parameters
<a name="bottom-movers-function-parameters"></a>

*name*   
您指派或變更的唯一描述名稱。如果您未建立自己的名稱，則會指派一個名稱。您稍後可以編輯此名稱。

*日期*   
您想要排名的日期維度。

*類別*   
您想要排名的類別維度。

*Value*   
以此為基礎來運算的彙總度量。

*排名數量*   
您要顯示的排名結果數量。

*排序依據*   
您想要使用的順序；百分比差異或絕對差異。

## 運算輸出
<a name="bottom-movers-computation-outputs"></a>

每個函數會產生一組輸出參數。您可以將這些輸出新增到自動敘述以自訂其顯示內容。您也可以新增自己的自訂文字。

若要尋找輸出參數，請開啟右側的**運算**標籤，並找出您想要使用的運算。運算的名稱是來自您建立洞見時所提供的名稱。選擇輸出參數 (僅按一下即可)。如果您按了兩下，您將新增兩次相同的輸出。以**粗體**顯示的項目為敘述中可用的項目。

**注意**  
這些輸出參數與最高移動器運算傳回的輸出參數相同。
+ `timeField`：為**時間**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `timeGranularity`：時間欄位精細程度 (**DAY**、**YEAR** 等)。
+ `categoryField`：為**分類**欄位集。
  + `name`：欄位的格式化顯示名稱。
+ `metricField`：為**數值**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `aggregationFunction`：用於指標 (**SUM**、**AVG** 等) 的彙總。
+ `startTimeValue`：日期維度的值。
  + `value`：原始值。
  + `formattedValue`：日期時間欄位格式化的值。
+ `endTimeValue`：日期維度的值。
  + `value`：原始值。
  + `formattedValue`：由日期時間欄位格式化的絕對值。
+ `itemsCount`：此運算中包含的項目數量。
+ `items`：底部移動項目。
  + `categoryField`：類別欄位。
    + `value`：類別欄位的值 (內容)。
    + `formattedValue`：類別欄位格式化的值 (內容)。如果欄位為 null，這會顯示 '`NULL`'。如果欄位為，它會顯示 '`(empty)`'。
  + `currentMetricValue`：目前值欄位的指標。
    + `value`：原始值。
    + `formattedValue`：指標欄位格式化的值
    + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。
  + `previousMetricValue`：指標欄位的之前值。
    + `value`：原始值。
    + `formattedValue`：指標欄位格式化的值
    + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。
  + `percentDifference`：指標欄位目前和之前值的百分比差異。
    + `value`：百分比差異運算的原始值。
    + `formattedValue`：百分比差異的格式化值 (例如，-42%)。
    + `formattedAbsoluteValue`：百分比差異的格式化絕對值 (例如，42%)。
  + `absoluteDifference`：指標欄位目前和之前值之間的絕對差異。
    + `value`：絕對差異運算的原始值。
    + `formattedValue`：指標欄位格式偏好設定格式化的絕對差異。
    + `formattedAbsoluteValue`：由指標欄位格式化的差異絕對值。

# 底端排名運算
<a name="bottom-ranked-function"></a>

底端排名運算會依數值計算請求的類別數量 (在自動敘述資料集底端排名)。例如，您可以建立運算，依銷售營收尋找位居底端的三個州。

若要使用此函數，您在**類別**欄位集至少需要有一個維度。

## Parameters
<a name="bottom-ranked-function-parameters"></a>

*name*   
您指派或變更的唯一描述名稱。如果您未建立自己的名稱，則會指派一個名稱。您稍後可以編輯此名稱。

*類別*   
您想要排名的類別維度。

*Value*   
以此為基礎來運算的彙總度量。

*結果數量*   
您要顯示的排名結果數量。

## 運算輸出
<a name="bottom-ranked-computation-outputs"></a>

每個函數會產生一組輸出參數。您可以將這些輸出新增到自動敘述以自訂其顯示內容。您也可以新增自己的自訂文字。

若要尋找輸出參數，請開啟右側的**運算**標籤，並找出您想要使用的運算。運算的名稱是來自您建立洞見時所提供的名稱。選擇輸出參數 (僅按一下即可)。如果您按了兩下，您將新增兩次相同的輸出。以**粗體**顯示的項目為敘述中可用的項目。

**注意**  
這些輸出參數與最高排名運算傳回的輸出參數相同。
+ `categoryField`：為**分類**欄位集。
  + `name`：欄位的格式化顯示名稱。
+ `metricField`：為**數值**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `aggregationFunction`：用於指標 (**SUM**、**AVG** 等) 的彙總。
+ `itemsCount`：此運算中包含的項目數量。
+ `items`：底部排名項目。
  + `categoryField`：類別欄位。
    + `value`：類別欄位的值 (內容)。
    + `formattedValue`：類別欄位格式化的值 (內容)。如果欄位為 null，這會顯示 '`NULL`'。如果欄位為，它會顯示 '`(empty)`'。
  + `metricValue`：指標欄位。
    + `value`：原始值。
    + `formattedValue`：由指標欄位格式化的值。
    + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。

## 範例
<a name="bottom-ranked-function-example"></a>

以下螢幕擷取畫面顯示底端排名運算的預設組態。

![\[底端排名運算的預設組態。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/bottom-ranked-computation.png)


# 採 ML 技術的預測
<a name="forecast-function"></a>

採用 ML 技術的預測運算會依季節性，根據之前指標的模式預測未來指標。例如，您可以建立一項運算，來預測未來六個月的總營收。

若要使用此函數，您在**時間**欄位集至少需要有一個維度。

如需有關使用預測的詳細資訊，請參閱[使用 Amazon Quick Sight 預測和建立假設案例](forecasts-and-whatifs.md)。

## Parameters
<a name="forecast-function-parameters"></a>

*name*   
您指派或變更的唯一描述名稱。如果您未建立自己的名稱，則會指派一個名稱。您稍後可以編輯此名稱。

*日期*   
您想要排名的日期維度。

*Value*   
以此為基礎來運算的彙總度量。

*向前期間*   
您想要預測的未來時間期間數量。範圍從 1 到 1,000。

*向後期間*   
您想要據此預測的過去時間期間數量。範圍從 0 到 1,000。

*​季節性*   
日曆年中包括的季節數量。預設設定 **automatic** 會為您偵測。範圍從 1 到 180。

## 運算輸出
<a name="forecast-computation-outputs"></a>

每個函數會產生一組輸出參數。您可以將這些輸出新增到自動敘述以自訂其顯示內容。您也可以新增自己的自訂文字。

若要尋找輸出參數，請開啟右側的**運算**標籤，並找出您想要使用的運算。運算的名稱是來自您建立洞見時所提供的名稱。選擇輸出參數 (僅按一下即可)。如果您按了兩下，您將新增兩次相同的輸出。以**粗體**顯示的項目為敘述中可用的項目。
+ `timeField`：為**時間**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `timeGranularity`：時間欄位精細程度 (**DAY**、**YEAR** 等)。
+ `metricField`：為**數值**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `aggregationFunction`：用於指標 (**SUM**、**AVG** 等) 的彙總。
+ `metricValue`：指標維度中的值。
  + `value`：原始值。
  + `formattedValue`：由指標欄位格式化的值。
  + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。
+ `timeValue`：日期維度的值。
  + `value`：原始值。
  + `formattedValue`：由日期欄位格式化的值。
+ `relativePeriodsToForecast`：在最新的日期時間記錄和上次預測記錄之間的相對期間數目。

# 成長率運算
<a name="growth-rate-function"></a>

成長率運算會比較時間期間內的數個值。例如，您可以建立一項運算，找出銷售的三個月複合成長率，以百分比表示。

若要使用此函數，您在**時間**欄位集至少需要有一個維度。

## Parameters
<a name="growth-rate-function-parameters"></a>

*name*   
您指派或變更的唯一描述名稱。如果您未建立自己的名稱，則會指派一個名稱。您稍後可以編輯此名稱。

*日期*   
您想要排名的日期維度。

*Value*   
以此為基礎來運算的彙總度量。

*期間數*   
您想要用來計算成長率的未來期間數。

## 運算輸出
<a name="growth-rate-computation-outputs"></a>

每個函數會產生一組輸出參數。您可以將這些輸出新增到自動敘述以自訂其顯示內容。您也可以新增自己的自訂文字。

若要尋找輸出參數，請開啟右側的**運算**標籤，並找出您想要使用的運算。運算的名稱是來自您建立洞見時所提供的名稱。選擇輸出參數 (僅按一下即可)。如果您按了兩下，您將新增兩次相同的輸出。以**粗體**顯示的項目為敘述中可用的項目。
+ `timeField`：為**時間**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `timeGranularity`：時間欄位精細程度 (**DAY**、**YEAR** 等)。
+ `metricField`：為**數值**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `aggregationFunction`：用於指標 (**SUM**、**AVG** 等) 的彙總。
+ `previousMetricValue`：指標維度中的之前值。
  + `value`：原始值。
  + `formattedValue`：由指標欄位格式化的值。
  + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。
+ `previousTimeValue`：日期時間維度中的之前值。
  + `value`：原始值。
  + `formattedValue`：日期時間欄位格式化的值。
+ `compoundedGrowthRate`：指標欄位目前和之前值的百分比差異。
  + `value`：百分比差異運算的原始值。
  + `formattedValue`：百分比差異的格式化值 (例如，-42%)。
  + `formattedAbsoluteValue`：百分比差異的格式化絕對值 (例如，42%)。
+ `absoluteDifference`：指標欄位目前和之前值之間的絕對差異。
  + `value`：絕對差異運算的原始值。
  + `formattedValue`：指標欄位格式偏好設定格式化的絕對差異。
  + `formattedAbsoluteValue`：由指標欄位格式化的差異絕對值。

# 最大值運算
<a name="maximum-function"></a>

最大值運算會依值尋找最大值維度。例如，您可以建立一項運算，尋找最高營收的月份。

若要使用此函數，您在**時間**欄位集至少需要有一個維度。

## Parameters
<a name="maximum-function-parameters"></a>

*name*   
您指派或變更的唯一描述名稱。如果您未建立自己的名稱，則會指派一個名稱。您稍後可以編輯此名稱。

*日期*   
您想要排名的日期維度。

*Value*   
以此為基礎來運算的彙總度量。

## 運算輸出
<a name="maximum-computation-outputs"></a>

每個函數會產生一組輸出參數。您可以將這些輸出新增到自動敘述以自訂其顯示內容。您也可以新增自己的自訂文字。

若要尋找輸出參數，請開啟右側的**運算**標籤，並找出您想要使用的運算。運算的名稱是來自您建立洞見時所提供的名稱。選擇輸出參數 (僅按一下即可)。如果您按了兩下，您將新增兩次相同的輸出。以**粗體**顯示的項目為敘述中可用的項目。

**注意**  
這些輸出參數與最小運算傳回的輸出參數相同。
+ `timeField`：為**時間**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `timeGranularity`：時間欄位精細程度 (**DAY**、**YEAR** 等)。
+ `metricField`：為**數值**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `aggregationFunction`：用於指標 (**SUM**、**AVG** 等) 的彙總。
+ `metricValue`：指標維度中的值。
  + `value`：原始值。
  + `formattedValue`：由指標欄位格式化的值。
  + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。
+ `timeValue`：日期時間維度中的值。
  + `value`：原始值。
  + `formattedValue`：日期時間欄位格式化的值。

# 指標比較運算
<a name="metric-comparison-function"></a>

指標比較運算會比較不同度量中的值。例如，您可以建立一項運算，比較兩個值 (如實際銷售比較銷售目標)。

若要使用此函數，您在 **Time (時間)** 欄位集至少需要有一個維度，在 **Values (值)** 欄位集至少需要有兩個量值。

## Parameters
<a name="metric-comparison-function-parameters"></a>

*name*   
您指派或變更的唯一描述名稱。如果您未建立自己的名稱，則會指派一個名稱。您稍後可以編輯此名稱。

*日期*   
您想要排名的日期維度。

*Value*   
以此為基礎來運算的彙總度量。

*目標值*   
您要與數值比較的欄位。

## 運算輸出
<a name="metric-comparison-computation-outputs"></a>

每個函數會產生一組輸出參數。您可以將這些輸出新增到自動敘述以自訂其顯示內容。您也可以新增自己的自訂文字。

若要尋找輸出參數，請開啟右側的**運算**標籤，並找出您想要使用的運算。運算的名稱是來自您建立洞見時所提供的名稱。選擇輸出參數 (僅按一下即可)。如果您按了兩下，您將新增兩次相同的輸出。以**粗體**顯示的項目為敘述中可用的項目。
+ `timeField`：為**時間**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `timeGranularity`：時間欄位精細程度 (**DAY**、**YEAR** 等)。
+ `fromMetricField`：為**數值**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `aggregationFunction`：用於指標 (**SUM**、**AVG** 等) 的彙總。
+ `fromMetricValue`：指標維度中的值。
  + `value`：原始值。
  + `formattedValue`：由指標欄位格式化的值。
  + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。
+ `toMetricField`：為**數值**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `aggregationFunction`：用於指標 (**SUM**、**AVG** 等) 的彙總。
+ `toMetricValue`：指標維度中的目前值。
  + `value`：原始值。
  + `formattedValue`：由指標欄位格式化的值。
  + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。
+ `timeValue`：日期時間維度中的值。
  + `value`：原始值。
  + `formattedValue`：日期時間欄位格式化的值。
+ `percentDifference`：指標欄位目前和之前值的百分比差異。
  + `value`：百分比差異運算的原始值。
  + `formattedValue`：百分比差異的格式化值 (例如，-42%)。
  + `formattedAbsoluteValue`：百分比差異的格式化絕對值 (例如，42%)。
+ `absoluteDifference`：指標欄位目前和之前值之間的絕對差異。
  + `value`：絕對差異運算的原始值。
  + `formattedValue`：指標欄位格式偏好設定格式化的絕對差異。
  + `formattedAbsoluteValue`：由指標欄位格式化的差異絕對值。

# 最小值運算
<a name="minimum-function"></a>

最小值運算會依值尋找最小值維度。例如，您可以建立一項運算，尋找最低營收的月份。

若要使用此函數，您在**時間**欄位集至少需要有一個維度。

## Parameters
<a name="minimum-function-parameters"></a>

*name*   
您指派或變更的唯一描述名稱。如果您未建立自己的名稱，則會指派一個名稱。您稍後可以編輯此名稱。

*日期*   
您想要排名的日期維度。

*Value*   
以此為基礎來運算的彙總度量。

## 運算輸出
<a name="maximum-computation-outputs"></a>

每個函數會產生一組輸出參數。您可以將這些輸出新增到自動敘述以自訂其顯示內容。您也可以新增自己的自訂文字。

若要尋找輸出參數，請開啟右側的**運算**標籤，並找出您想要使用的運算。運算的名稱是來自您建立洞見時所提供的名稱。選擇輸出參數 (僅按一下即可)。如果您按了兩下，您將新增兩次相同的輸出。以**粗體**顯示的項目為敘述中可用的項目。

**注意**  
這些輸出參數與最大運算傳回的輸出參數相同。
+ `timeField`：為**時間**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `timeGranularity`：時間欄位精細程度 (**DAY**、**YEAR** 等)。
+ `metricField`：為**數值**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `aggregationFunction`：用於指標 (**SUM**、**AVG** 等) 的彙總。
+ `metricValue`：指標維度中的值。
  + `value`：原始值。
  + `formattedValue`：由指標欄位格式化的值。
  + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。
+ `timeValue`：日期時間維度中的值。
  + `value`：原始值。
  + `formattedValue`：日期時間欄位格式化的值。

# 逐個期間運算
<a name="period-over-period-function"></a>

逐個期間運算會比較兩個不同時間期間的值。例如，您可以建立一項運算算，了解自上一個時間期間起增加或減少的銷售額。

若要使用此函數，您在**時間**欄位集至少需要有一個維度。

## Parameters
<a name="period-over-period-function-parameters"></a>

*name*   
您指派或變更的唯一描述名稱。如果您未建立自己的名稱，則會指派一個名稱。您稍後可以編輯此名稱。

*日期*   
您想要排名的日期維度。

*Value*   
以此為基礎來運算的彙總度量。

## 運算輸出
<a name="period-over-period-computation-outputs"></a>

每個函數會產生一組輸出參數。您可以將這些輸出新增到自動敘述以自訂其顯示內容。您也可以新增自己的自訂文字。

若要尋找輸出參數，請開啟右側的**運算**標籤，並找出您想要使用的運算。運算的名稱是來自您建立洞見時所提供的名稱。選擇輸出參數 (僅按一下即可)。如果您按了兩下，您將新增兩次相同的輸出。以**粗體**顯示的項目為敘述中可用的項目。
+ `timeField`：為**時間**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `timeGranularity`：時間欄位精細程度 (**DAY**、**YEAR** 等)。
+ `metricField`：為**數值**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `aggregationFunction`：用於指標 (**SUM**、**AVG** 等) 的彙總。
+ `previousMetricValue`：指標維度中的之前值。
  + `value`：原始值。
  + `formattedValue`：由指標欄位格式化的值。
  + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。
+ `previousTimeValue`：日期時間維度中的之前值。
  + `value`：原始值。
  + `formattedValue`：日期時間欄位格式化的值。
+ `currentMetricValue`：指標維度中的目前值。
  + `value`：原始值。
  + `formattedValue`：由指標欄位格式化的值。
  + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。
+ `currentTimeValue`：日期時間維度中的目前值。
  + `value`：原始值。
  + `formattedValue`：日期時間欄位格式化的值。
+ `percentDifference`：指標欄位目前和之前值的百分比差異。
  + `value`：百分比差異運算的原始值。
  + `formattedValue`：百分比差異的格式化值 (例如，-42%)。
  + `formattedAbsoluteValue`：百分比差異的格式化絕對值 (例如，42%)。
+ `absoluteDifference`：指標欄位目前和之前值之間的絕對差異。
  + `value`：絕對差異運算的原始值。
  + `formattedValue`：指標欄位格式偏好設定格式化的絕對差異。
  + `formattedAbsoluteValue`：由指標欄位格式化的差異絕對值。

## 範例
<a name="period-over-period-computation-example"></a>

**建立逐個期間運算**

1. 在要變更的分析中，選擇**新增洞見**。

1. 對於**運算類型**，選取**逐個期間**，然後選擇**選取**。

1. 在您建立的新洞見中，新增您要比較的時間維度和值維度欄位。在下面的螢幕擷取畫面中，`Order Date` 和 `Sales (Sum)` 已新增到洞見中。選取這兩個欄位後，Quick Sight 會顯示上個月的年初至今銷售額，以及與上個月相比的百分比差異。  
![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/periodOverPeriod1.png)

1. (選用) 若要進一步自訂洞見，請開啟視覺化效果選單並選擇**自訂敘述**。在出現的**編輯敘述**視窗中，從**運算**清單中拖曳所需的欄位，然後選擇**儲存**。

# 期間至今運算
<a name="period-to-date-function"></a>

指定期間到目前為止，日期運算期間評估的值。例如，您可以建立一個運算，以瞭解您年初迄今獲得的銷售。

若要使用此函數，您在**時間**欄位集至少需要有一個維度。

## Parameters
<a name="period-to-date-function-parameters"></a>

*name*   
您指派或變更的唯一描述名稱。如果您未建立自己的名稱，則會指派一個名稱。您稍後可以編輯此名稱。

*日期*   
您想要排名的日期維度。

*Value*   
以此為基礎來運算的彙總度量。

*時間精細程度*   
您想要用於運算的日其精細程度，例如年初至今。

## 運算輸出
<a name="period-to-date-computation-outputs"></a>

每個函數會產生一組輸出參數。您可以將這些輸出新增到自動敘述以自訂其顯示內容。您也可以新增自己的自訂文字。

若要尋找輸出參數，請開啟右側的**運算**標籤，並找出您想要使用的運算。運算的名稱是來自您建立洞見時所提供的名稱。選擇輸出參數 (僅按一下即可)。如果您按了兩下，您將新增兩次相同的輸出。以**粗體**顯示的項目為敘述中可用的項目。
+ `timeField`：為**時間**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `timeGranularity`：時間欄位精細程度 (**DAY**、**YEAR** 等)。
+ `metricField`：為**數值**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `aggregationFunction`：用於指標 (**SUM**、**AVG** 等) 的彙總。
+ `previousMetricValue`：指標維度中的之前值。
  + `value`：原始值。
  + `formattedValue`：由指標欄位格式化的值。
  + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。
+ `previousTimeValue`：日期時間維度中的之前值。
  + `value`：原始值。
  + `formattedValue`：日期時間欄位格式化的值。
+ `currentMetricValue`：指標維度中的目前值。
  + `value`：原始值。
  + `formattedValue`：由指標欄位格式化的值。
  + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。
+ `currentTimeValue`：日期時間維度中的目前值。
  + `value`：原始值。
  + `formattedValue`：日期時間欄位格式化的值。
+ `periodGranularity`：此運算的期間精細程度 (**MONTH**、**YEAR** 等)。
+ `percentDifference`：指標欄位目前和之前值的百分比差異。
  + `value`：百分比差異運算的原始值。
  + `formattedValue`：百分比差異的格式化值 (例如，-42%)。
  + `formattedAbsoluteValue`：百分比差異的格式化絕對值 (例如，42%)。
+ `absoluteDifference`：指標欄位目前和之前值之間的絕對差異。
  + `value`：絕對差異運算的原始值。
  + `formattedValue`：指標欄位格式偏好設定格式化的絕對差異。
  + `formattedAbsoluteValue`：由指標欄位格式化的差異絕對值。

## 範例
<a name="period-to-date-computation-example"></a>

**建立期間至今運算**

1. 在要變更的分析中，選擇**新增洞見**。

1. 對於**運算類型**，選擇**期間至今**，然後選擇**選取**。

1. 在您建立的新洞見中，新增要比較的時間維度和價值維度欄位。在下面的螢幕擷取畫面中，`Order Date` 和 `Sales (Sum)` 已新增到洞見中。選取這兩個欄位後，Quick Sight 會顯示上個月的年初至今銷售額，以及與上個月相比的百分比差異。  
![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/periodOverPeriod1.png)

1. (選用) 若要進一步自訂洞見，請開啟視覺化效果選單並選擇**自訂敘述**。在出現的**編輯敘述**視窗中，從**運算**清單中拖曳所需的欄位，然後選擇**儲存**。

# 頂端移動工具運算
<a name="top-movers-function"></a>

排名最高運算會依日期計算請求的類別數量 (在自動敘述資料集排名最高)。例如，您可以建立運算，依銷售營收尋找一段時間期間內位居頂端的產品。

若要使用此函數，您在 **Time (時間)** 欄位集至少需要有一個維度，在 **Categories (類別)** 欄位集至少需要有一個維度。

## Parameters
<a name="top-movers-function-parameters"></a>

*name*   
您指派或變更的唯一描述名稱。如果您未建立自己的名稱，則會指派一個名稱。您稍後可以編輯此名稱。

*類別*   
您想要排名的維度類別。

*Value*   
以此為基礎來運算的彙總度量。

*結果數量*   
您想要尋找的前幾項排名物品數量。

## 運算輸出
<a name="top-movers-computation-outputs"></a>

每個函數會產生一組輸出參數。您可以將這些輸出新增到自動敘述以自訂其顯示內容。您也可以新增自己的自訂文字。

若要尋找輸出參數，請開啟右側的**運算**標籤，並找出您想要使用的運算。運算的名稱是來自您建立洞見時所提供的名稱。選擇輸出參數 (僅按一下即可)。如果您按了兩下，您將新增兩次相同的輸出。以**粗體**顯示的項目為敘述中可用的項目。

**注意**  
這些輸出參數與底部移動器運算傳回的輸出參數相同。
+ `timeField`：為**時間**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `timeGranularity`：時間欄位精細程度 (**DAY**、**YEAR** 等)。
+ `categoryField`：為**分類**欄位集。
  + `name`：欄位的格式化顯示名稱。
+ `metricField`：為**數值**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `aggregationFunction`：用於指標 (**SUM**、**AVG** 等) 的彙總。
+ `startTimeValue`：日期維度的值。
  + `value`：原始值。
  + `formattedValue`：日期時間欄位格式化的值。
+ `endTimeValue`：日期維度的值。
  + `value`：原始值。
  + `formattedValue`：由日期時間欄位格式化的絕對值。
+ `itemsCount`：此運算中包含的項目數量。
+ `items`：頂端移動項目。
  + `categoryField`：類別欄位。
    + `value`：類別欄位的值 (內容)。
    + `formattedValue`：類別欄位格式化的值 (內容)。如果欄位為 null，這會顯示 '`NULL`'。如果欄位為，它會顯示 '`(empty)`'。
  + `currentMetricValue`：目前值欄位的指標。
    + `value`：原始值。
    + `formattedValue`：由指標欄位格式化的值。
    + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。
  + `previousMetricValue`：指標欄位的之前值。
    + `value`：原始值。
    + `formattedValue`：由指標欄位格式化的值。
    + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。
  + `percentDifference`：指標欄位目前和之前值的百分比差異。
    + `value`：百分比差異運算的原始值。
    + `formattedValue`：百分比差異的格式化值 (例如，-42%)。
    + `formattedAbsoluteValue`：百分比差異的格式化絕對值 (例如，42%)。
  + `absoluteDifference`：指標欄位目前和之前值之間的絕對差異。
    + `value`：絕對差異運算的原始值。
    + `formattedValue`：指標欄位格式偏好設定格式化的絕對差異。
    + `formattedAbsoluteValue`：由指標欄位格式化的差異絕對值。

# 頂端排名運算
<a name="top-ranked-function"></a>

頂端排名運算會依值尋找頂端排名維度。例如，您可以建立運算，依銷售營收尋找位居頂端的三個州。

若要使用此函數，您在**類別**欄位集至少需要有一個維度。

## Parameters
<a name="top-ranked-function-parameters"></a>

*name*   
您指派或變更的唯一描述名稱。如果您未建立自己的名稱，則會指派一個名稱。您稍後可以編輯此名稱。

*類別*   
您想要排名的類別維度。

*Value*   
以此為基礎來運算的彙總度量。

*結果數量*   
您想要尋找的排名最高項目數量。

## 運算輸出
<a name="top-ranked-computation-outputs"></a>

每個函數會產生一組輸出參數。您可以將這些輸出新增到自動敘述以自訂其顯示內容。您也可以新增自己的自訂文字。

若要尋找輸出參數，請開啟右側的**運算**標籤，並找出您想要使用的運算。運算的名稱是來自您建立洞見時所提供的名稱。選擇輸出參數 (僅按一下即可)。如果您按了兩下，您將新增兩次相同的輸出。以**粗體**顯示的項目為敘述中可用的項目。

**注意**  
這些輸出參數與底部排名運算傳回的輸出參數相同。
+ `categoryField`：為**分類**欄位集。
  + `name`：欄位的格式化顯示名稱。
+ `metricField`：為**數值**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `aggregationFunction`：用於指標 (**SUM**、**AVG** 等) 的彙總。
+ `itemsCount`：此運算中包含的項目數量。
+ `items`：頂端排名項目。
  + `categoryField`：類別欄位。
    + `value`：類別欄位的值 (內容)。
    + `formattedValue`：類別欄位格式化的值 (內容)。如果欄位為 null，這會顯示 '`NULL`'。如果欄位為，它會顯示 '`(empty)`'。
  + `metricValue`：指標欄位。
    + `value`：原始值。
    + `formattedValue`：由指標欄位格式化的值。
    + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。

# 彙整總和運算
<a name="total-aggregation-function"></a>

彙整總和運算會建立數值的總計。例如，您可以建立一項運算，尋找總營收。

若要使用此函數，您在 **Time (時間)** 欄位集至少需要有一個維度，在 **Values (值)** 欄位集至少需要有一個量值。

## Parameters
<a name="total-aggregation-function-parameters"></a>

*name*   
您指派或變更的唯一描述名稱。如果您未建立自己的名稱，則會指派一個名稱。您稍後可以編輯此名稱。

*Value*   
以此為基礎來運算的彙總度量。

## 運算輸出
<a name="total-aggregation-computation-outputs"></a>

每個函數會產生一組輸出參數。您可以將這些輸出新增到自動敘述以自訂其顯示內容。您也可以新增自己的自訂文字。

若要尋找輸出參數，請開啟右側的**運算**標籤，並找出您想要使用的運算。運算的名稱是來自您建立洞見時所提供的名稱。選擇輸出參數 (僅按一下即可)。如果您按了兩下，您將新增兩次相同的輸出。以**粗體**顯示的項目為敘述中可用的項目。
+ `categoryField`：類別欄位。
  + `name`：類別欄位的顯示名稱。
+ `metricField`：為**數值**欄位集。
  + `name`：欄位的格式化顯示名稱。
  + `aggregationFunction`：用於指標 (**SUM**、**AVG** 等) 的彙總。
+ `totalAggregate`：指標彙總的總值。
  + `value`：原始值。
  + `formattedValue`：由指標欄位格式化的值。
  + `formattedAbsoluteValue`：由指標欄位格式化的絕對值。

# 唯一值運算
<a name="unique-values-function"></a>

唯一值運算會計數類別欄位中的唯一值。例如，您可以建立一項運算，來計數維度中的唯一值數量，例如您有多少位客戶

若要使用此函數，您在**類別**欄位集至少需要有一個維度。

## Parameters
<a name="unique-values-function-parameters"></a>

*name*   
您指派或變更的唯一描述名稱。如果您未建立自己的名稱，則會指派一個名稱。您稍後可以編輯此名稱。

*類別*   
您想要排名的類別維度。

## 運算輸出
<a name="unique-values-computation-outputs"></a>

每個函數會產生一組輸出參數。您可以將這些輸出新增到自動敘述以自訂其顯示內容。您也可以新增自己的自訂文字。

若要尋找輸出參數，請開啟右側的**運算**標籤，並找出您想要使用的運算。運算的名稱是來自您建立洞見時所提供的名稱。選擇輸出參數 (僅按一下即可)。如果您按了兩下，您將新增兩次相同的輸出。以**粗體**顯示的項目為敘述中可用的項目。
+ `categoryField`：類別欄位。
  + `name`：類別欄位的顯示名稱。
+ `uniqueGroupValuesCount`：包含在此運算鐘的唯一值數量。

# 透過採用 ML 技術的異常偵測來偵測極端值
<a name="anomaly-detection"></a>

Amazon Quick Sight 使用經過驗證的 Amazon 技術，持續跨數百萬個指標執行採用 ML 技術的異常偵測，以探索資料中的隱藏趨勢和極端值。此工具可讓您取得埋藏於彙總值，無法使用手動分析擴展的深入洞見。藉由採用 ML 技術的異常偵測，您無須進行手動分析、自訂開發或 ML 網域專業知識，即可在資料中找到極端值。

如果 Amazon Quick Sight 偵測到您可以分析異常或對資料進行一些預測，則會在視覺效果中通知您。

異常偵測功能在 `eu-central-2` 歐洲 (蘇黎世) 區域不可用。

**重要**  
採用 ML 技術的異常偵測是一項需要密集運算的工作。開始使用之前，您可以分析想要使用的資料量，了解成本的概念。我們提供根據您每個月處理的指標數量的分層定價模型。

**Topics**
+ [

# 異常或極端值偵測的概念
](anomaly-detection-outliers-and-key-drivers.md)
+ [

# 設定採用 ML 技術的異常偵測以進行極端值分析
](anomaly-detection-using.md)
+ [

# 透過採用 ML 的異常偵測和貢獻分析來探索極端值和主要驅動因素
](anomaly-exploring.md)

# 異常或極端值偵測的概念
<a name="anomaly-detection-outliers-and-key-drivers"></a>

Amazon Quick Sight 使用*異常*一詞來描述超出整體分佈模式的資料點。還有許多其他形容異常的用詞，這是科學術語，包括極端值、偏差、奇異、例外、不規則、突變等等。您使用的術語可能取決於您執行的分析類型，或是您使用的資料類型，甚或是群組的偏好設定。這些外圍資料點代表一個實體 (人、地點、事物或時間) 在某種程度上是特殊的。

人類的過人之處在於很容易就可以辨識出模式並發現事物。我們的感官為我們提供這些資訊。如果模式很簡單，並且只有少量資料，很輕鬆就可以製作圖表來突顯資料中的極端值。一些簡單的範例包括如下：
+ 一組藍色氣球中的一顆紅色氣球
+ 遠遠領先於其他賽馬的一匹賽馬
+ 一個在課堂上沒有認真上課的孩童
+ 當線上訂單增加，但出貨減少的一天
+ 一個恢復健康但其他人沒有的人

一些資料點代表一個重要事件，而其他資料點則代表隨機發生的事件。視何種驅動因素 (主要驅動因素) 促成事件而定，分析可揭露哪些資料值得調查。問題對於資料分析至關重要。發生的原因？ 與何有關？ 只發生一次或多次？ 您可以採取什麼動作來鼓勵或阻止更多類似的情況？ 

了解變化的存在方式和原因，以及變化中是否存在模式，都需要進一步思考。在不借助機器學習下，每個人可能會得到不同的結論，因為他們有不同的經驗和資訊。因此，每個人可能做出稍微不同的業務決策。如果有大量的資料或變數需要考慮，可能需要大量分析。

採用 ML 技術的異常偵測可識別因果關係和相關性，讓您能夠做出資料驅動的決策。您仍然可以控制如何定義您希望任務處理資料的方式。您可以指定自己的參數，並選擇其他選項，例如識別貢獻分析中的主要驅動因素。您也可以使用預設設定。下一節將引導您完成設定程序，並提供可用選項的說明。

# 設定採用 ML 技術的異常偵測以進行極端值分析
<a name="anomaly-detection-using"></a>

透過以下各章節中的程序開始偵測極端值和異常，並識別導致這些狀況的主要驅動因素。

**Topics**
+ [

# 檢視異常和預測通知
](anomaly-detection-adding-from-visuals.md)
+ [

# 增加 ML 洞見來偵測極端值和主要驅動因素
](anomaly-detection-adding-anomaly-insights.md)
+ [

# 使用主要驅動因素的貢獻分析
](anomaly-detection-adding-key-drivers.md)

# 檢視異常和預測通知
<a name="anomaly-detection-adding-from-visuals"></a>

Amazon Quick Sight 會在偵測到異常、關鍵驅動因素或預測機會的視覺效果上通知您。您可以根據該視覺化效果中的資料按照提示設定異常偵測或預測。

1. 在現有折線圖中，在視覺化效果小工具的選單中尋找洞察通知。

1. 選擇燈泡圖示以顯示通知。

1. 如需進一步了解 ML 洞見，可以按照螢幕提示新增 ML 洞見。

# 增加 ML 洞見來偵測極端值和主要驅動因素
<a name="anomaly-detection-adding-anomaly-insights"></a>

您可以新增 ML 洞見來偵測*異常* (看起來很重要的極端值)。首先，您需要為洞見建立一個小工具 (也稱為*自動敘述*)。設定選項時，您可以在螢幕右側的**預覽**窗格中，檢視洞見的有限螢幕擷取畫面。

在洞見小工具中，您最多可以新增五個非計算欄位的維度欄位。在欄位集內，**類別**的值代表 Amazon Quick Sight 用來分割指標的維度值。例如，假設您正在分析跨所有產品類別和產品 SKU 的營收。有 10 個產品類別，每個類別有 10 個產品 SKU。Amazon Quick Sight 會將指標分割為 100 個唯一組合，並對分割的每個組合執行異常偵測。

以下程序展示如何執行此操作，以及如何新增貢獻分析以偵測導致每個異常的主要驅動因素。您可以稍後新增貢獻分析，如 [使用主要驅動因素的貢獻分析](anomaly-detection-adding-key-drivers.md) 中所述。

**設定極端值分析 (包括驅動因素)**

1. 開啟您的分析，然後在工具列中，選擇**洞察**，然後選擇**新增**。從清單選擇 **Anomaly detection (異常偵測)** 和 **Select (選取)**。

1. 遵循新的小工具上的螢幕提示，這會告訴您為洞見選擇欄位。至少新增一個日期、一個度量和一個維度。

1. 在小工具上選擇 **Get started (開始使用)**。組態畫面隨即出現。

1. 在**運算選項**下，選擇下列選項的值。

   1. 針對**要分析的組合**，選擇以下選項之一：

      1. **階層**

         若要按階層分析欄位，請選擇此選項。例如，如果您選擇日期 (T)、度量 (N) 和三個維度類別 (C1、C2 和 C3)，Quick Sight 會階層分析欄位，如下所示。

         ```
         T-N, T-C1-N, T-C1-C2-N, T-C1-C2-C3-N
         ```

      1. **精確**

         若只要分析「類別」欄位集中列出的欄位的確切組合，請選擇此選項。例如，如果您選擇日期 (T)、度量 (N) 和三個維度類別 (C1、C2 和 C3)，Quick Sight 只會依列出的順序分析類別欄位的確切組合，如下所示。

         ```
         T-C1-C2-C3-N
         ```

      1. **全部**

         若要分析「類別」欄位集中的所有欄位組合，請選擇此選項。例如，如果您選擇日期 (T)、度量 (N) 和三個維度類別 (C1、C2 和 C3)，Quick Sight 會分析欄位的所有組合，如下所示。

         ```
         T-N, T-C1-N, T-C1-C2-N, T-C1-C2-C3-N, T-C1-C3-N, T-C2-N, T-C2-C3-N, T-C3-N
         ```

      如果您只選擇日期和量值，Quick Sight 會依日期和量值來分析欄位。

      在**要分析的欄位**區段中，您可以看到欄位集的欄位清單 (供參考用)。

   1. 對於**名稱**，輸入不含空白的描述性字母數字名稱，或選擇預設值。如此便可為運算命名。

      如果您計劃編輯自動顯示在小工具上的敘述，您可以使用名稱來識別這個小工具的運算。但是，如果您規劃編輯自動敘述，並且在分析中有其他類似的運算，請自訂名稱。

1. 在**顯示選項**區段中，選擇以下選項來自訂洞見小工具中顯示的內容。無論顯示什麼，您仍然可以探索所有結果。

   1. **要顯示的異常狀況數量上限**：要在敘述小工具中顯示的極端值數量。

   1. **嚴重性**：要在洞見小工具中顯示的異常的最低嚴重程度。

      *嚴重性等級* 是一系列異常分數，其特徵為範圍中包含的最低實際異常分數。所有分數較高的異常都包含在此範圍內。如果您將嚴重性設定為**低**，洞見會顯示等級在低和非常高之間的所有異常。如果您將嚴重性設定為 **Very high (非常高)**，洞見只會顯示具有最高異常評分的異常。

      您可以使用下列選項 ：
      + **非常高** 
      + **高度以上** 
      + **中等以上** 
      + **低度以上** 

   1. **方向**：要識別為異常的 x 軸或 y 軸方向。您可以選擇下列項目：
      + **高於預期**，將較高值識別為異常。
      + **低於預期**，將較低值識別為異常。
      + **[全部]**，將識別包含高值和低值在內的所有異常值 (預設設定)。

   1. **差異**：輸入用於識別異常的自訂值。任何高於臨界值的數量都會視為異常。這個值會變更洞見在分析中的運作方式。在此章節中，您可以設定下列項目：
      + **絕對值**：要使用的實際值。例如，如果將此設定為 48，然後，當值與預期值之間的差異大於 48 時，Amazon Quick Sight 會將值識別為異常。
      + **百分比**：要使用的百分比閾值。例如，如果您將此設定為 12.5%，然後，當值與預期值之間的差異大於 12.5% 時，Amazon Quick Sight 會將值識別為異常。

   1. **排序依據**：選擇結果的排序方法。有些方法是根據 Amazon Quick Sight 產生的異常分數。Amazon Quick Sight 為看起來異常的資料點提供更高的分數。您可以使用下列任一選項：
      + **加權的異常分數**：乘以實際值和預期值差異絕對值對數的異常分數。此分數一律為正數。
      + **異常分數**：指派給此資料點的實際異常分數。
      + **加權的預期值差異**：乘以實際值和預期值差異的異常分數 (預設值)。
      + **與預期值的差異**：實際值與預期值間的實際差異 (即實際預期)。
      + **實際值**：未套用公式的實際值。

1. 在**排程選項**區段中，您可以設定排程，以自動執行洞見重新計算。僅發布的儀表板才會執行排程。在分析中，您可以依需要手動執行。排程包括下列設定：
   + **出現次數**：設定多久要重新計算一次 (每小時、每天、每週或每月)。
   + **排程開始日期**：設定開始執行此排程的日期和時間。
   + **時區**：設定排程執行的時區。若要檢視清單，請刪除目前項目。

1. 在**最高貢獻者**區段中，設定 Amazon Quick Sight 在偵測到極端值 （異常） 時分析關鍵驅動因素。

   例如，Amazon Quick Sight 可以顯示導致家庭改善產品在美國銷售遽增的主要客戶。您可以從資料集中新增最多四個維度。其中包括您未新增到此洞見小工具的欄位集的維度。

   如需可供貢獻分析的維度清單，請選擇**選取欄位**。

1. 選擇**儲存**以確認選擇。若要退出而不儲存，請選擇 **Cancel (取消)**。

1. 從洞見小工具選擇**立即執行**，以執行異常偵測並檢視洞見。

完成異常偵測所需的時間各有不同，取決於您正在分析的唯一資料點數量。最少的資料點只需要數分鐘就能完成此流程，但此流程也可能會執行數小時。

在背景中執行時，您可以在分析中進行其他工作。請等待它完成後，再變更組態、編輯內容或開啟**探索異常**頁面以取得此洞見。

洞見小工具需要至少執行一次才能顯示結果。如果您認為狀態可能已過期，可以重新整理頁面。洞見可以有以下狀態。


| 出現在頁面上 | 狀態 | 
| --- | --- | 
| Run now (立即執行) 按鈕 | 任務尚未開始。 | 
| 關於 Analyzing for anomalies (分析異常) 的訊息 | 任務目前正在執行中。 | 
| 有關偵測到的異常情況的敘述 (極端值)  | 任務已順利執行。訊息指出這個小工具的運算何時最後更新。 | 
| 帶有驚嘆號的提醒圖示 (\$1)  | 此圖示表示上次執行期間發生錯誤。如果同時有顯示敘述，您仍然可以使用 Explore anomalies (探索異常) 來使用前一次成功執行的資料。 | 

# 使用主要驅動因素的貢獻分析
<a name="anomaly-detection-adding-key-drivers"></a>

Amazon Quick Sight 可以識別造成兩個時間點之間量值 （指標） 極端值的維度 （類別）。導致極端值的主要驅動因素可協助您找到導致異常的原因。

如果您已經在使用異常偵測但沒有使用貢獻分析，則可以啟用現有的 ML 洞見來尋找主要驅動因素。透過以下程序新增貢獻分析，並識別造成極端值的主要驅動因素。異常偵測的洞見需要包含時間欄位和至少一個彙總指標 (SUM、AVERAGE 或 COUNT)。您可以包含多個類別 (維度欄位)，也可以在不指定任何類別或維度欄位的情況下執行貢獻分析。

您還可以透過此程序變更或移除異常偵測中作為主要驅動因素的欄位。

**新增貢獻分析以識別主要驅動因素**

1. 開啟分析並找到一個用於異常偵測的現有 ML 洞見。選取相應的洞見小工具以讓它反白顯示。

1. 從視覺化效果的選單中選擇**選單選項** (**…**)。

1. 選擇**設定異常**以編輯設定。

1. **貢獻分析 （選用）** 設定可讓 Amazon Quick Sight 在偵測到極端值 （異常） 時分析關鍵驅動因素。例如，Amazon Quick Sight 可以向您展示導致家庭改善產品在美國銷售遽增的主要客戶。您最多可以從資料集新增四個維度，包括未新增至此洞見小工具的欄位集的維度。

   若要檢視可供貢獻分析的維度清單，請選擇 **Select fields (選取欄位)**。

   若要變更用作主要驅動因素的欄位，請變更此清單中啟用的欄位。如果您停用所有項目，Quick Sight 將不會執行此洞見中的任何貢獻分析。

1. 若要儲存變更，請捲動至組態選項底部，然後選擇**儲存**。若要退出而不儲存，請選擇**取消**。若要完全移除這些設定，請選擇**刪除**。

# 透過採用 ML 的異常偵測和貢獻分析來探索極端值和主要驅動因素
<a name="anomaly-exploring"></a>

您可以互動方式探索分析中的異常 (也稱為極端值)，以及貢獻因子 (主要驅動因素)。在採用 ML 技術的異常偵測執行之後，即可開始探索分析。您在此畫面中所做的變更不會在您返回分析時儲存。

首先，在洞見中選擇**探索異常狀況**。以下螢幕擷取畫面顯示了首次開啟時出現的「異常」畫面。此範例設定了貢獻因子分析並顯示了兩個主要驅動因素。

![\[顯示貢獻因子的異常分析。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/anomaly-exploration-v2.png)


畫面的各個區段包括 (從左上到右下)：
+ **貢獻因子**顯示主要驅動因素。若要查看此區段，您需要在異常組態中設定貢獻因子。
+ **控制項**包含異常探索的設定。
+ **異常數量**顯示一段時間內偵測到的極端值。您可以隱藏或顯示此圖表區段。
+ 類別或維度欄位的**欄位名稱**充當顯示每個類別或維度異常的圖表標題。

以下區段提供了探索異常各個方面的詳細資訊。

**Topics**
+ [

# 探討貢獻因子 (主要驅動因素)
](exploring-anomalies-key-drivers.md)
+ [

# 設定異常偵測控制項
](exploring-anomalies-controls.md)
+ [

# 按日期顯示和隱藏異常
](exploring-anomalies-by-date.md)
+ [

# 探索每個類別或維度的異常
](exploring-anomalies-per-category-or-dimension.md)

# 探討貢獻因子 (主要驅動因素)
<a name="exploring-anomalies-key-drivers"></a>

如果您的異常洞見設定為偵測關鍵驅動因素，Quick Sight 會執行貢獻分析，以判斷哪些類別 （維度） 正在影響極端值。**貢獻因子**區段顯示在左側。

**貢獻因子**包含以下區段：
+ **敘述**：摘要 (左上角) 描述指標中的變更。
+ **主要貢獻因子組態**：選擇**設定**變更貢獻因子和日期範圍，以在此區段中使用。
+ **排序依據**：設定套用至在下方顯示之結果的排序。您可以選擇下列項目：
  + **絕對差異** 
  + **貢獻百分比** (預設) 
  + **預期偏差** 
  + **百分比差異** 
+ **主要貢獻因子結果**：在進行主要貢獻因子分析時，顯示在右側時間線上所選取之時間點的分析結果。

  貢獻分析最多可識別異常的四個最主要的貢獻因素或主要驅動因素。例如，Amazon Quick Sight 可以向您展示導致美國健康產品銷售遽增的主要客戶。只有當您在設定異常時選擇將欄位包含在貢獻分析中，才會顯示此面板。

  如果您沒有看到這個面板，並且想要顯示它，您可以開啟它。若要執行此動作，請前往分析，從洞見的選單中選擇異常組態，然後最多選擇四個欄位來分析貢獻。如果您在排除貢獻驅動因素的工作表控制項中進行變更，**貢獻**面板會關閉。

# 設定異常偵測控制項
<a name="exploring-anomalies-controls"></a>

您可以在畫面的**控制項**區段找到異常偵測的設定。您可以透過按一下**控制項**來開啟和關閉此區段。

設定包括：
+ **控制項**：目前設定會在工作空間頂端顯示。您可以選擇右邊的雙箭頭圖示展開此區段。下列設定可用於探索採用 ML 技術的異常偵測產生的極端值：
  + **嚴重性**：設定您的偵測器對於已偵測異常 (極端值) 的靈敏度。閾值設為**低度以上**時，應可看見更多異常，而閾值設為**高度以上**時，應可看見較少異常。根據 RCF 演算法產生之異常分數標準差，判定靈敏度。預設為**中等以上**。
  + **方向**：要識別為異常的 x 軸或 y 軸方向。預設值為 [全部]。您可以選擇下列選項：
    + 設定為**高於預期**，以將較高的值識別為異常。
    + 設定為**低於預期**，以將較低的值識別為異常。
    + 設定為 **[ALL]**，以識別包含高值和低值在內的所有異常值。
  + **最小差異 - 絕對值**：輸入自訂值，用作識別異常的絕對閾值。任何高於這個值的數量都會視為異常。
  + **最小差異 - 百分比**：輸入自訂值，用作識別異常的百分比閾值。任何高於這個值的數量都會視為異常。
  + **排序依據**：選擇要套用以排序異常的方法。它們會依偏好的順序列在畫面中。檢視以下每種方法的描述清單。
    + **加權的異常分數**：乘以實際值和預期值差異絕對值對數的異常分數。此分數一律為正數。
    + **異常分數**：指派給此資料點的實際異常分數。
    + **加權的預期值差異**：(預設值) 乘以實際值和預期值差異的異常分數。
    + **與預期值的差異**：實際值與預期值間的實際差異 (實際預期)。
    + **實際值**：未套用公式的實際值。
  + **類別**：一個或多個設定可以出現在其他設定的末端。您新增至類別欄位集的每個類別欄位都有一個。您可使用類別設定限制在畫面中顯示的資料。

# 按日期顯示和隱藏異常
<a name="exploring-anomalies-by-date"></a>

**異常數量**圖表顯示一段時間內偵測到的極端值。如果您沒有看到此圖表，可以透過選擇**依日期顯示異常狀況**來顯示它。

此圖表顯示時間序列中最新資料點的異常 (極端值)。展開後，它顯示以下元件：
+ **異常**：畫面中心顯示時間序列中最近資料點的異常。一張或多張圖搭配圖表顯示，指出隨著時間產生的指標變化。若要使用此圖，請選擇沿著時間線的一點。目前選擇的時間點會在圖中反白顯示，並具有選單，提供您分析目前指標貢獻的選項。您也可以在時間線上拖曳游標，而不選擇特定一點，即可顯示該時間點的指標值。
+ **依日期顯示異常狀況**：如果您選擇**依日期顯示異常狀況**，另一張圖表則會顯示每個時間點有多少個重大異常。您可以在每一列的內容選單上，查看此圖表中的詳細資訊。
+ **時間線調整**：每張圖表在日期下方都有時間線調整工具，您可以用來壓縮、展開或選擇一段時間期間來檢視。

# 探索每個類別或維度的異常
<a name="exploring-anomalies-per-category-or-dimension"></a>

**探索異常**畫面的主要區段被鎖定在螢幕的右下角。無論螢幕的其他區段開啟多少，它都會保留在那裡。如果存在多個異常，您可以捲動以將它們反白顯示。此圖表以不同的顏色顯示異常，並顯示它們在一段時間內發生的時間點。

![\[探索異常畫面。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/anomaly-exploration-1.png)


每個類別或維度都有一個單獨的圖表，圖表使用欄位名稱作為圖表標題。每個圖表都包含下列元件。
+ **設定提醒**：如果從儀表板探索異常，您可以選擇此按鈕訂閱提醒和貢獻分析 (若已設定)。您可以設定提醒的嚴重性層級 (中、高等等)。您可以取得 **Higher than expected (高於預期)**、**Lower than expected (低於預期)** 或 ALL (全部) 的前 5 個提醒。儀表板讀者可以自行設定提醒。如果您從分析開啟頁面，開啟**探索異常**頁面不會顯示此按鈕。
**注意**  
只能在已發布的儀表板中使用設定提醒的功能。
+ **狀態**：在**異常**標頭下方，狀態標籤會顯示上一次執行的資訊。例如，您可能會看到 "Anomalies for Revenue on November 17, 2018"。此標籤會告訴您處理多少過指標，且在多久之前處理。您可以選擇連結，以進一步了解詳細資訊，例如略過多少指標。

# 使用 Amazon Quick Sight 預測和建立假設案例
<a name="forecasts-and-whatifs"></a>

您可以藉由採用 ML 技術的預測，利用簡單的點選式介面預測關鍵業務指標。無需機器學習專業知識。Amazon Quick Sight 中的內建 ML 演算法旨在處理複雜的真實世界案例。Amazon Quick Sight 使用機器學習來協助提供比傳統方法更可靠的預測。

例如，假設您是業務經理。假設您想要預測銷售，以查看您是否會在年底達到目標。或者，假設您在未來兩週內會有大筆訂單成交，因此您想要知道這會對整體預測帶來怎樣的影響。

您可以透過多個季節性等級來預測業務收入 (例如，包含每週和每季度趨勢的銷售額預測)。Amazon Quick Sight 會自動排除資料中的異常 （例如，由於價格下降或提升導致的銷售遽增） 影響預測。您也不需要清除和複寫缺少值的資料，因為 Amazon Quick Sight 會自動處理該值。此外，藉由採用 ML 技術的預測，您可以執列互動式模擬分析，以判斷您需要符合業務目標的成長軌跡。

## 使用預測和模擬情境
<a name="using-forecasts"></a>

您可以將預測 widget 新增至現有的分析，然後做為儀表板發布此分析。若要分析模擬情境，請使用分析，而非儀表板。透過採用 ML 技術的預測，Amazon Quick Sight 可讓您預測複雜的真實案例，例如具有多個季節性的資料。它會自動排除其辨識的極端值和推算遺漏值。

請透過以下程序將圖形化預測新增至您的分析，並探索模擬情境。

雖然以下程序適用於圖形化預測，您也可以在洞見 widget 中將預測做為敘述新增。如需詳細資訊，請參閱 [使用 Amazon Quick Sight 建立自動敘述](narratives-creating.md)。

採用 ML 技術的預測與[小型倍數](small-multiples.md)不相容。為了確保準確顯示資料和預測，請避免在視覺化中使用小倍數。

**將圖形化預測新增至分析**

1. 建立使用單一日期欄位和最多三個指標 (量值) 的視覺化效果。

1. 在該視覺化效果右上角的選單上，選擇**選單選項**圖示 (三個點)，然後選擇**新增預測**。

   Quick Sight 會使用 ML 自動分析歷史資料，並顯示未來 14 個期間的圖形預測。預測屬性套用於視覺化效果中的所有指標。如果您希望對每個指標進行單獨預測，請考慮為每個指標建立單獨的視覺化效果，並向每個視覺化效果新增預測。  
![\[具有三個預測指標的折線圖影像。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/forecast2.png)

1. 在左側的**預測屬性**面板上，自訂下列一個或多個設定：
   + **預測長度**：設定要預測的**向前期間**和尋找藉以預測之模式的**向後期間**。
   + **預測間隔**：設定預測的預估範圍。這麼做會變更預測時間線周圍的可能性區間有多寬。
   + **季節性**：設定涉及可預測之資料季節性模式的時間期間數量。範圍為 1–180，預設設定為**自動**。
   + **預測界限**：設定最小和/或最大預測值，以防止預測值高於或低於指定值。例如，如果預測的結果是公司下個月將招募的新員工數量為負數，則您可以將預測界限最小值設為零。這可以防止預測值低於零。

   選擇 **Apply (套用)** 來儲存您的變更。

   如果預測包含多個指標，您可以透過選取橘色區間內的任意位置來隔離其中一個預測。這樣做時，其他預測就會消失。再次選取孤立的預測區間可以讓它們重新出現。

1. 選擇圖表上預測的資料點 (在橘色區間)，然後從內容選單選擇 **What-if analysis (模擬分析)**，來分析模擬情境。

   **模擬分析**面板在左側開啟。設定下列選項：
   + **情境**：設定日期的目標，或設定時間範圍的目標。
   + **日期**：如果您正設定特定日期的目標，請在這裡輸入該日期。如果您正使用時間範圍，請設定開始和結束日期。
   + **目標**：設定指標的目標值。

   Amazon Quick Sight 會調整預測以符合目標。
**注意**  
**模擬分析**選項不適用於多指標預測。若要對預測執行模擬情境，視覺化效果應僅包含一個指標。

1. 選擇 **Apply (套用)** 來保留您的變更。若要捨棄變更，請關閉 **What-if analysis (模擬分析)** 面板。

   若要保留變更，您會看到針對目標調整的新預測，伴隨著未模擬的原始預測。

   模擬分析會在視覺效果上以指標線上的圓點呈現。您可以暫留在預測線上的資料點，以查看詳細資訊。

以下是您可以進行的其他工作：
+ 與模擬分析互動或移除，選擇指標線上的圓點。
+ 建立其他模擬情境，在線上選擇新點之前關閉模擬分析。

**注意**  
模擬分析僅可存在於分析中，不可在儀表板中。

# 具有 Quick Sight 的生成式 BI
<a name="quicksight-gen-bi"></a>

**注意**  
 採用 Amazon Bedrock 技術：Amazon Q in Quick 建立在 Amazon Bedrock 上，包括在 Amazon Bedrock 中實作的[自動濫用偵測](https://docs.aws.amazon.com//bedrock/latest/userguide/abuse-detection.html)，以強制執行 AI 的安全、安全性和負責任的使用。

透過 Amazon Quick Chat，您可以利用生成式 BI 撰寫體驗、建立資料的執行摘要、詢問和回答資料問題，以及產生資料案例。

若要存取與您任務相關的所有 Quick Sight 生成式 BI 功能，請選擇任何 Quick 頁面右上角的閃爍圖示。在開啟的窗格中，聊天會根據您正在執行的任務內容顯示所有可用的內容。例如，如果您正在使用分析，您可以建立計算、編輯視覺效果、設定問答或詢問有關資料的問題。如果您正在使用儀表板工作，您可以建立資料故事、產生執行摘要，或詢問有關儀表板的問題。

**注意**  
並非所有 AWS 區域都提供生成式 BI 功能。若要查看提供生成式 BI 功能的區域清單，請參閱[AWS 區域 支援 Quick 中的 Amazon Q](regions.md#regions-aqs)

使用下列主題進一步了解 Generative BI。

**Topics**
+ [

# 開始使用生成式 BI
](generative-bi-get-started.md)
+ [

# 使用 Amazon Q Business 增強 Amazon Quick Sight 洞察
](generative-bi-q-business.md)
+ [

# 生成式 BI 編寫功能
](generative-bi-author-experience.md)
+ [

# 建立執行摘要
](gen-bi-executive-summaries.md)
+ [

# 編寫問答
](gen-bi-author-q-and-a.md)
+ [

# 透過 Amazon Quick Sight 中的儀表板管理主題許可
](gen-bi-manage-topic-permissions.md)
+ [

# 在 Amazon Quick Sight 中開啟儀表板問答體驗
](dashboard-qa.md)
+ [

# 問答 Null 支援
](gen-bi-q-and-a-null-support.md)
+ [

# 使用自訂指示改善問答準確性
](gen-bi-improve-qa-accuracy-with-custom-instructions.md)
+ [

# 使用 Generative BI 詢問和回答資料的問題
](gen-bi-data-q-and-a.md)
+ [

# 選擇退出生成式 BI
](generative-bi-opt-out.md)
+ [

# 使用 Amazon Quick Sight 主題
](topics.md)
+ [

# 在 Amazon Quick Sight 中使用資料案例
](working-with-stories.md)
+ [

# 在 Amazon Quick Sight 中使用案例
](scenarios.md)

# 開始使用生成式 BI
<a name="generative-bi-get-started"></a>

若要開始使用 Quick Sight 生成式 BI 功能，請將您帳戶的使用者升級至 Admin Pro、Wor作家 Pro 或讀者 Pro 角色。專業版角色會授予使用者權限以存取所有與指派給使用者的角色相關的生成式 BI 功能。Pro 使用者可以與其他使用者共用生成式問答主題。若要了解哪些生成式 BI 功能可供 Quick 中的不同使用者角色使用，請參閱下表。若要了解訂閱名稱如何對應至使用者角色，請參閱[了解 Amazon Quick 訂閱和角色](https://docs.aws.amazon.com/quicksight/latest/user/user-types.html#subscription-role-mapping)。

**注意**  
如果「作者專業版」、「管理員專業版」角色與非專業版「作者」或「讀者」角色共用生成式問答主題，非專業版「作者」或「讀者」角色也可以存取該生成式問答主題。如果「讀者專業版」、「作者專業版」、「管理員專業版」角色與非專業版「作者」或「讀者」角色共享資料故事，非專業版「作者」或「讀者」角色也可以存取該資料故事。


| 特徵名稱 | 功能描述 | 讀者 | 作者 | 管理員 | 讀者專業版 | 作者專業版 | 管理員專業版 | 
| --- | --- | --- | --- | --- | --- | --- | --- | 
|  [使用生成式 BI 建立資料案例](working-with-stories-create.md)  |  建置資料故事，透過視覺效果、洞見和想法來說明您的資料，以協助改善業務。  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  | 
|  [在 Amazon Quick Sight 中檢視產生的資料案例](working-with-stories-view.md)  |  檢視與您共用的敘述性資料故事。  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是\$1  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是\$1  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是\$1  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  | 
|  [編寫問答](gen-bi-author-q-and-a.md)  |  建立和精簡使用 Quick Sight 生成式問答儀表板的主題。  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  | 
|  [使用 Generative BI 詢問和回答資料的問題](gen-bi-data-q-and-a.md)  |  詢問有關資料的問題，以透過多視覺效果答案加速資料驅動型決策。  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是\$1  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是\$1  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是\$1  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  | 
|  [建立執行摘要](gen-bi-executive-summaries.md)  |  從 Quick Sight 儀表板取得關鍵洞見的執行摘要。  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  | 
|  [生成式 BI 編寫功能](generative-bi-author-experience.md)  |  建立分析，以使用自然語言建置視覺效果、計算和精簡現有的視覺效果。  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  | 

\$1在 2024 年 4 月 30 日或之後建立的帳戶中的非專業版角色可以存取與其共用的問答主題。如果您的快速帳戶是在 2024 年 4 月 30 日之前建立，而且您想要選擇加入這項新功能，請洽詢您的 AWS 帳戶團隊。

任何快速管理員都可以透過下列程序將使用者升級至 Pro 角色。

**將使用者升級至專業版角色**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 選擇右上角的使用者圖示，然後選擇**管理快速**。

1. 選擇**管理使用者**，以開啟**管理使用者**頁面。

1. 若要變更現有使用者的角色，請在**管理使用者**資料表上找到該使用者，然後從**角色**下拉式清單中選擇您要授予他們的角色。

如需管理快速使用者的詳細資訊，請參閱 [在 Amazon Quick 中管理使用者存取權](managing-users.md)。

# 使用 Amazon Q Business 增強 Amazon Quick Sight 洞察
<a name="generative-bi-q-business"></a>

Amazon Quick 帳戶管理員可以將其 Quick 帳戶連線至 Amazon Q Business，以透過非結構化資料來源增強洞察。[Amazon Q Business](https://aws.amazon.com//q/business/) 是一款生成式 AI 助手，可協助您的團隊更智慧地工作。它可以根據企業系統中的資訊回答問題、提供摘要、產生內容並安全地完成任務。

當快速帳戶與 Amazon Q Business 整合時，使用者現在可以利用這個龐大的組織知識儲存庫及其結構化資料分析。這種整合允許更全面和內容豐富的洞察，因為它結合了來自 Quick 的量化資料和來自各種商業文件和應用程式的定性資訊。

如需將 Amazon Q Business 帳戶與 Quick 連線的詳細資訊，請參閱[建立快速整合的應用程式](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/create-application-quicksight.html)。

使用下列主題在 Quick 中設定 Amazon Q Business 應用程式。

**Topics**
+ [

## 考量事項
](#generative-bi-q-business-considerations)
+ [

# 在 Amazon Quick Sight 中設定 Amazon Q Business 應用程式
](generative-bi-q-business-configure.md)
+ [

# 將快速帳戶連接至現有的 Amazon Q Business 應用程式
](generative-bi-q-business-link-existing-account.md)
+ [

# 中斷 Amazon Q Business 應用程式與 Amazon Quick 帳戶的連線
](generative-bi-q-business-delete-connection.md)

## 考量事項
<a name="generative-bi-q-business-considerations"></a>

下列限制適用於 Amazon Q Business 應用程式。
+ 快速和 Amazon Q Business 必須存在於相同的 AWS 帳戶中。不支援跨帳戶呼叫。
+ 快速和 Amazon Q Business 帳戶必須存在於相同的 AWS 區域中。不支援跨區域呼叫。如需所有支援的快速區域清單，請參閱 [AWS 區域 支援 Quick 中的 Amazon Q](regions.md#regions-aqs)。如需所有支援 Amazon Q Business 的區域清單，請參閱 [Amazon Q Business 的服務配額](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/quotas-regions.html)。

  如果您的快速帳戶存在於多個區域中，您可以將一個 Amazon Q Business 應用程式從每個區域連線至快速帳戶。例如，如果您的 Quick 帳戶存在於美國東部 （維吉尼亞北部） 和美國西部 （奧勒岡），一個位於美國東部 （維吉尼亞北部） 的 Amazon Q Business 應用程式和一個位於美國西部 （奧勒岡） 的 Amazon Q Business 應用程式可以連接到 Quick 帳戶。
+ 整合的快速和 Amazon Q Business 帳戶需要使用相同的身分方法。例如，如果快速帳戶使用 IAM Identity Center 進行身分管理，則與之整合的 Amazon Q Business 帳戶也必須使用 IAM Identity Center 進行身分管理。
+ 與 Quick 使用者和群組相關聯的電子郵件地址用於在 Amazon Q Business 中執行授權檢查。

# 在 Amazon Quick Sight 中設定 Amazon Q Business 應用程式
<a name="generative-bi-q-business-configure"></a>

使用下列程序將 Amazon Quick 帳戶與 Amazon Q Business 連線

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 選擇右上角的使用者圖示，然後選擇**管理快速**。

1. 選擇**安全和許可**。

1. 在**快速存取 AWS 服務**頁面上，選擇 **Amazon Q Business 應用程式**核取方塊。

1. 在**建立與出現的非結構化資料快顯視窗的 Amazon Q Business 連線**上，選擇您要連線所在的快速區域。

1. 選擇**完成**。

1. 選擇**完成**後，系統會建立您的 Amazon Q Business 帳戶並將您重新導向至顯示 Amazon Q Business 主控台**應用程式**頁面的新索引標籤。

1. 針對**應用程式**，選擇您在 Quick 中建立的 Amazon Q Business 連線。

1. 連線的**應用程式詳細資訊**頁面隨即開啟。選擇**索引**索引標籤，然後選擇**選取索引**。

1. 在顯示的快顯視窗中，選擇您要使用的**索引佈建**選項，然後選擇**確認**。如需有關 Amazon Q Business 中索引的詳細資訊，請參閱 [Creating a retriever for an Amazon Q Business application](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/select-retriever.html)。

1. 選擇索引後，請設定資料來源連線。若要設定資料來源連線，請選擇左側窗格中**增強功能**選單的**資料來源**區段。

1. 選擇**新增資料來源**。

1. 選擇您想要新增的資料來源。您選擇的資料來源決定設定資料來源連線所需的步驟。如需有關將資料來源新增至 Amazon Q Business 帳戶的詳細資訊，請參閱 [Connecting Amazon Q Business data sources](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/supported-connectors.html)。完成資料來源組態的設定後，請選擇**新增資料來源**。

在您為 Amazon Q Business 帳戶選擇索引、擷取器和資料來源之後，您與 Amazon Q Business 的連線即完成，您可以返回 Quick 主控台。

# 將快速帳戶連接至現有的 Amazon Q Business 應用程式
<a name="generative-bi-q-business-link-existing-account"></a>

如果您已經有使用相同身分管理的 Amazon Q Business 應用程式，且與您的 Quick 帳戶位於相同的區域中，請使用下列程序將現有的 Amazon Q Business 帳戶連結至 Quick。

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 選擇右上角的使用者圖示，然後選擇**管理快速**。

1. 選擇**安全和許可**。

1. 在**快速存取 AWS 服務**頁面上，選擇 **Amazon Q Business 應用程式**核取方塊。

1. 在**建立與出現的非結構化資料快顯視窗的 Amazon Q Business 連線**上，選擇您要連線所在的快速區域。

1. 從下拉式清單中選擇現有的 Amazon Q Business 應用程式。
**注意**  
如果應用程式存在於與 Quick 帳戶不同的區域中，或者應用程式使用與您的 Quick 帳戶不同的身分管理選項，則不會顯示您的 Amazon Q Business 應用程式。

從下拉式清單中選擇 Amazon Q Business 應用程式後，即會設定 Quick 和 Amazon Q Business 之間的連線。

# 中斷 Amazon Q Business 應用程式與 Amazon Quick 帳戶的連線
<a name="generative-bi-q-business-delete-connection"></a>

快速帳戶管理員可以使用下列程序，將 Amazon Q Business 應用程式與快速帳戶中斷連線。

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 選擇右上角的使用者圖示，然後選擇**管理快速**。

1. 選擇**安全和許可**。

1. 在**快速存取 AWS 服務**頁面上，選擇 **SELECT 應用程式**。

1. 執行下列選項之一：

   1. 若要中斷單一 Amazon Q Business 應用程式與 Quick 帳戶的連線，請導覽至您要移除的應用程式，開啟下拉式清單，然後選擇 **NONE**。

   1. 若要中斷所有 Amazon Q Business 應用程式與快速帳戶的連線，請取消勾選 **Amazon Q Business 應用程式**核取方塊。

當您中斷 Amazon Q Business 應用程式與 Quick 帳戶的連線時，不會刪除您為 Quick 建立的 Amazon Q Business 應用程式。您設定的應用程式、索引、檢索器和任何非結構化資料來源連線都會保留在 Amazon Q Business 帳戶中。

# 生成式 BI 編寫功能
<a name="generative-bi-author-experience"></a>

透過快速聊天，作者可以使用新的生成式 BI 功能來建置計算欄位，以及建置和精簡視覺效果。參閱以下主題，進一步了解生成式 BI 編寫功能。

**Topics**
+ [

# 使用生成式 BI 建置視覺效果
](generative-bi-build-visuals.md)
+ [

# 使用生成式 BI 建置計算
](generative-bi-build-calculations.md)
+ [

# 使用生成式 BI 來優化視覺效果
](generative-bi-refine-visual.md)

# 使用生成式 BI 建置視覺效果
<a name="generative-bi-build-visuals"></a>

快速作者可以使用**建置視覺**效果按鈕來建置從作者輸入產生的自訂視覺效果。作者的輸入使用自然語言來描述新視覺效果所需結果。您可以輸入自訂描述，也可以從 Amazon Q 為附加到分析的主題產生的建議清單中進行選擇。下圖顯示了使用**建置視覺效果**選單建立的自訂視覺效果。

**若要使用生成式 BI 建置視覺效果**

1. 導覽至您要使用的分析，然後選擇**要求以建置視覺**效果。

1. 在出現的**建置視覺效果**面板中，執行下列步驟。

   1. 描述您想要視覺化的資料。您可以輸入自訂描述，也可以從根據分析資料產生的**建議**問題中進行選擇。

      當您描述想要視覺化的資料時，您可以將其表述為問題，也可以使用對話語句或篩選器。例如，您可以輸入「上個月有多少人註冊免費試用？」 或「按月免費註冊試用」。這兩個陳述式都會產生一個視覺效果，顯示按月份註冊免費試用的人數。您也可以取得模糊語言或關鍵字樣式請求的回應。

      建議的問題可以包括混合人工智慧 (AI) 產生的問題和人工驗證問題的組合。經過人工驗證的問題會在建議旁顯示勾號。

   1. 選擇 **Build** (建置)。

   1. 檢閱 產生的視覺效果。若要精細化視覺效果中顯示的資料，請在**建置**列中輸入新描述，然後選擇**建置**。使用向前和向後箭頭檢閱對視覺效果所做的變更，而不會丟失任何進度。

   1. 當您對視覺效果感到滿意時，請選擇**新增至分析**。

# 使用生成式 BI 建置計算
<a name="generative-bi-build-calculations"></a>

透過生成式 BI，您可以使用自然語言提示在 Amazon Quick Sight 中建立計算欄位，如下圖所示。如需關於分析中計算欄位的詳細資訊，請參閱 [新增計算欄位](adding-a-calculated-field-analysis.md)。

![\[使用建置工具新增計算欄位。\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/gen-bi-build-calculation-1.png)


**若要使用生成式 BI 建置計算欄位**

1. 導覽至您要使用的分析，然後從頁面頂端的工具列選擇**資料**。然後選擇**新增計算欄位**。

1. 在顯示的計算編輯器中，選擇**建置**。

1. 描述要實現的計算結果。例如，「每日銷售額的同比百分比變化」。

1. 選擇**建置**。

1. 檢閱傳回的運算式，然後選擇**插入**將其新增至運算式編輯器。您也可以選擇**複製**圖示，將運算式複製到剪貼簿。若要刪除運算式並重新開始，請選擇運算式旁邊的**刪除**圖示。

1. 完成後，請關閉編輯器。

將計算新增至運算式編輯器後，您必須需要先為計算命名，然後才能儲存。

# 使用生成式 BI 來優化視覺效果
<a name="generative-bi-refine-visual"></a>

快速作者也可以使用自然語言提示來編輯分析中的視覺效果，如下列視覺效果所示。作者可以使用此功能編輯視覺效果，而無需在 Quick UI 中執行手動任務。作者只能使用生成式 BI 來執行 Quick 中目前支援的格式化任務。

支援下列類型的編輯：
+ 變更視覺效果類型。
+ 顯示或隱藏軸標題、軸標籤或資料標記。
+ 顯示、隱藏或變更圖表的標題。
+ 變更軸和資料表資料欄名稱。
+ 將欄位或欄位集新增至視覺效果。
+ 從視覺效果中移除欄位。
+ 變更軸的彙總。
+ 顯示或隱藏圖例和網格線。
+ 顯示或隱藏資料的縮放。
+ 將欄位或欄位集新增至視覺效果。
+ 變更或移除視覺效果排序控制項。
+ 更新視覺效果顏色、顏色漸層、背景顏色，或文字顏色的條件格式。
+ 變更視覺效果的時間粒度。
+ 調整軸擴展和範圍，以及最大值和最小值。
+ 變更標題與副標題的字型大小。
+ 顯示、隱藏和調整資料標記。
+ 調整資料欄格式 (數字、百分比、日期和貨幣之間的變更)。

**若要使用生成式 BI 編輯視覺效果**

1. 導覽至您要編輯的視覺效果，然後選擇**使用 Q 編輯**。

1. 描述要執行的任務，然後選擇**套用**。

1. 檢閱視覺效果變更。如果對產生的變更感到滿意，請關閉**編輯視覺效果**模態對話方塊。若要復原變更，請選擇**復原**並輸入新的提示。

# 建立執行摘要
<a name="gen-bi-executive-summaries"></a>

透過快速聊天，您可以利用大型語言模型 LLMs) 來產生儀表板的執行摘要。執行摘要是根據 Quick Sight 建議的儀表板洞察。執行摘要可協助讀者一目了然地尋找關鍵洞見，而不需要從儀表板的視覺效果精確找出特定資料。

若要開啟儀表板的執行摘要，請在**發布儀表板**模態對話方塊上開啟**允許執行摘要**。

如需有關讀者如何與執行摘要互動的詳細資訊，請參閱[產生 Amazon Quick Sight 儀表板的執行摘要](use-executive-summaries.md)。

當分析有多個建議的洞見時，執行摘要效果最佳。若要查看分析的所有建議洞見清單，請導覽至您要使用的分析，然後開啟**洞見**窗格。

# 編寫問答
<a name="gen-bi-author-q-and-a"></a>

## 轉換為生成式問答
<a name="gen-bi-data-q-and-a-converting-to-beta"></a>

如果您有現有的主題，您可以輕鬆轉換這些主題，以利用我們新的生成功能。導覽至主題，選擇主題名稱旁的**轉換**。然後會有對話方塊提示您**複製和轉換主題**。我們會為您複製主題，以便轉換為使用 Beta 版時不影響您的最終使用者。您對新版中的主題效能感到滿意後，便可以取消共用原始主題並共用新的主題。

## 具名實體
<a name="gen-bi-data-q-and-a-named-entities"></a>

具名實體是主題策劃最重要的元件之一。具名實體中包含的資訊 (特別是欄位的排序及排名) 是能夠成功呈現關聯內容的多視覺效果答案以回應模糊問題的關鍵。作者可以透過導覽至主題、選擇**資料**索引標籤，然後選擇具名實體來找到**具名實體**。作者可以從此處預覽或編輯現有的具名實體，並建立新的實體。

作者可以設定具名實體的下列面向：

1. **欄位**：選擇資料集，然後從該資料集選擇要包含的欄位。這定義了使用此具名實體回答最終使用者問題時會考慮的資料範圍。

1. **欄位排名和呈現**：具名實體中維度和量值的相對排名會決定在產生關聯內容的多視覺效果答案時如何使用這些欄位。請注意，在下列示範中，調整**利潤**的相對排名使其高於**銷售**，會導致顯示不同的資料。依預設，資料表視覺效果中的欄位順序與欄位排名相同。不過，您可以透過關閉**同步資料表檢視與欄位排名**來個別控制這二者。

1. **在呈現中顯示/隱藏**：包含在具名實體中的欄位可以同時在具名實體的表格式呈現中隱藏，而仍然在答案的其他元件中提供額外內容。

## 量值彙總
<a name="gen-bi-data-q-and-a-measure-aggregations"></a>

作者對主題中的彙總量值有精細的控制。在 Quick Sight 中，除非已在計算表達式中定義自訂彙總`SUM`，否則量值預設為 。若要變更此項，請導覽至資料欄位清單中的量值，並指定不同的預設彙總。您也可以不允許彙總，這樣即使使用者特別要求，也無法套用彙總。最後，您可以將量值指定為非加性的。這對於預先計算的指標 (例如百分比) 很有用，這些指標不應以任何方式重新組合。這樣做將強制`MEDIAN`或`AVG`取決於您的使用案例。

# 透過 Amazon Quick Sight 中的儀表板管理主題許可
<a name="gen-bi-manage-topic-permissions"></a>

 Quick 可讓作者從單一位置管理儀表板及其連結主題的許可。在已啟用問答的情況下共用儀表板時，作者可以直接從儀表板的共用偏好設定來控制主題檢視者存取，無需在多個位置管理許可。

**若要在具有連結主題的儀表板上啟用問答：**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟已啟用問答並連結您要發布之主題的儀表板分析。

1. 選擇**發布**。

1. 勾選**允許資料問答**核取方塊。

1. 選擇**管理問答**，然後選取**使用連結主題建置視覺效果和問答**。

1. 從下拉式選單中選取所需的連結主題。

1. 選擇**套用變更**，然後選擇**發布儀表板**。

**若要方便地在儀表板管理主題存取：**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟具有您為共同擁有者的連結主題的儀表板。

1. 選取共用圖示，然後選擇**共用儀表板**。

1. 在所選使用者的資料列中，開啟/關閉**以「主題檢視者」身分共用**切換，以授予/撤銷檢視者對連結主題的存取權。

1. 在所選共用資料夾的資料列中，開啟/關閉**新增主題至資料夾**切換，以新增連結主題至共用資料夾或從共用資料夾中移除連結主題。

**若要與所有使用者和群組共用儀表板及其連結主題：**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟具有您為共同擁有者的連結主題的儀表板。

1. 選取共用圖示，然後選擇**共用儀表板**。

1. 在面板左下角的**自動分享的連結主題**下，開啟**所有儀表板使用者和群組**切換開關。這將在共用儀表板時授予檢視者對連結主題的存取權。關閉切換關閉以取消此行為。

共用具有連結主題的儀表板之後，使用者可以立即詢問有關其資料的問題。導覽至儀表板頂端**提出關於 <主題名稱> 的問題**，以開始提出問題。

# 在 Amazon Quick Sight 中開啟儀表板問答體驗
<a name="dashboard-qa"></a>

快速允許任何作者按一下即可直接從儀表板啟用 Q&A，而無需在 Quick Sight 中建立主題。為此，請發布儀表板並勾選儀表板發布選單中的**允許資料問答**核取方塊。開啟儀表板問答後，您可以選擇要用於儀表板問答的資料集，以確保最終使用者獲得他們所需的答案。

儀表板 Q&A 會查詢包含資料集中的所有資料列和資料欄 - 超出儀表板中可見的項目。若要保護敏感或機密資料，請啟用[資料列層級安全性 (RLS)](row-level-security.md) 和/或[資料欄層級安全性 (CLS)](restrict-access-to-a-data-set-using-column-level-security.md)。

下表比較了儀表板問答與主題問答之間的功能可用性。


| 問答功能 | 儀表板問答 | 主題問答 | 
| --- | --- | --- | 
|  允許所有角色的使用者詢問和回答資料問題  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  | 
|  允許作者或讀者角色在儀表板上啟用資料問答  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否 (僅限專業版角色使用者)  | 
|  在快速主控台內嵌中支援  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  | 
|  能夠新增已檢閱答案  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  | 
|  能夠自訂問答特定的中繼資料  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  | 
|  能夠支援資料值的自動完成  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/negative_icon.svg) 否  |  ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/success_icon.svg) 是  | 

使用以下程序在 Quick Sight 儀表板上啟用儀表板問答。

**若要在儀表板上啟用儀表板問答**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 開啟要發布且已啟用問答的儀表板的分析。

1. 選擇**發布**。

1. 勾選**允許資料問答**核取方塊。

1. (選用) 選擇**管理問答**，以選擇要包含在儀表板問答中的資料集。依預設，儀表板使用的所有資料集都會包含在內。

1. 選擇**套用變更**，然後選擇**發布儀表板**。

在發布已啟用儀表板問答的儀表板後，使用者可以使用儀表板頂端的**提出關於此儀表板的問題**輸入來詢問有關其資料的問題。

快速允許任何使用者在已啟用儀表板問答的儀表板上提出問題。不過，儀表板問答功能會產生相關聯的啟用費用。快速管理員可以隨時在帳戶層級停用此功能。使用下列程序停用整個快速帳戶的儀表板 Q&A。

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 選擇右上角的使用者圖示，然後選擇**管理快速**。

1. 選擇**安全和許可**。

1. 導覽至 Amazon Q 區段，然後選擇**管理**。

1. 關閉**管理儀表板問答**。

關閉**管理儀表板問答**後，儀表板問答會從已啟用儀表板問答的所有儀表板中移除。如果您的快速帳戶沒有 Pro 使用者或主題，此動作會停止向您的快速帳戶計費 Amazon Q 啟用費用。此設定不會影響 Pro 使用者或 Quick 中的現有主題。如需選擇退出生成式 BI 的詳細資訊，請參閱 [選擇退出生成式 BI](generative-bi-opt-out.md)。

# 問答 Null 支援
<a name="gen-bi-q-and-a-null-support"></a>

Amazon Quick Sight Q&A 全面支援 null 值處理，讓使用者能夠建立更複雜的分析並回答複雜的商業問題。此功能可實現精確篩選 Null 值、有關遺失資料的直觀式查詢以及動態圖表互動。

## 新增篩選條件以包含或排除 Null 值
<a name="add-filter-for-null"></a>

**若要新增篩選條件以包含或排除 Null 值**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 選擇**主題**，然後開啟要向其新增篩選條件的主題。

1. 選擇**資料**索引標籤。

1. 在**資料欄位**下，選擇**新增篩選條件**。

1. 在開啟的**篩選條件組態**頁面中，執行下列操作：

   1. 對於**名稱**，請輸入篩選器的名稱。

   1. 針對**資料集**，選擇要套用篩選條件的資料集。

   1. 在**欄位**中選擇要篩選的欄位。

   1. 在 **Null 選項**欄位中，選擇其中一個下拉式清單選項：
      + **未選取 Null 選項**：未選取任何選項來篩選 Null。
      + **僅包含 Null**：僅針對所選欄位上的 Null 進行篩選。
      + **僅排除 Null**：僅針對所選欄位的非 Null 進行篩選。

   1. (選用) 若要指定何時套用篩選條件，請選擇**在使用資料集時套用篩選條件**，然後選擇下列選項之一：

      1. **一律套用**：選擇此選項後，每當指定資料集中的資料欄與問題相關聯，就會套用篩選條件。

      1. **一律套用，除非問題導致對資料集產生明確的篩選條件**：每當指定資料集中的資料欄與問題相關聯時，就會套用篩選條件，除非該問題包含針對同一個欄位的明確篩選條件。

   1. 選擇**儲存**。

 篩選條件會新增到話題中的篩選條件清單。您可以編輯該篩選條件的描述，或在它套用時對其進行調整。

## 詢問關於 Null 值的問題
<a name="ask-questions-on-null-values"></a>

您可以使用問答直接詢問有關 Null 值的問題，例如：
+ 客群為 Null 的記錄的總銷售金額是多少？
+ 顯示無指派代表的帳戶。
+ 列出無完成日期的專案。
+ 顯示無類別指派的庫存項目。
+ 依客群，授權欄位中具有非 Null 值的訂單佔訂單總數的百分比？
+ 哪些訂單尚未指派有客戶？

## 管理視覺效果中的 Null 值
<a name="manage-null-values-in-visualizations"></a>

透過問答列產生視覺效果後，您可以使用各種 Null 值動作與圖表互動，包括只專注於 Null 值或排除 Null 值。這些圖表動作可協助您根據 Null 值是否存在，動態分析和篩選資料。

選擇**僅專注於 Null 值** 或**排除 Null 值**，以適當篩選結果。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/focus-on-null.png)


## 精簡查詢解釋以處理 Null 值
<a name="refine-query-interpretations-for-null-value-handling"></a>

根據您的查詢產生視覺化效果後，您可以調整處理 Null 值的方式。

1. 找到查詢下方的**解譯為**區段。

1. 選取要修改的欄位。

1. 從下拉式選單中，選擇 **Null 選項**來調整 Null 值處理。

![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/interpreted-as.png)


對於分類欄位，空值與 Null 值不同。若要將空值轉換為 Null 值：

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 選擇**主題**，然後開啟要向其新增篩選條件的主題。

1. 選擇**資料**索引標籤。

1. 選擇**新增計算欄位**。

1. 在**新增名稱**欄位中輸入名稱。

1. 選擇分類欄位，然後輸入運算式，將空值轉換為 Null 值：`ifelse({Segment}="",NULL,{Segment})`。

1. 選擇**儲存**。

# 使用自訂指示改善問答準確性
<a name="gen-bi-improve-qa-accuracy-with-custom-instructions"></a>

自訂指示讓作者能夠新增無法透過主題中繼資料設定擷取的領域特定知識，例如同義詞或語意類型，來策劃 Amazon Q 對問題的回應。透過提供這些中繼資料描述或自訂指示，作者可以引導 Amazon Q，使其回應與不同的定義、偏好設定和專業知識保持一致，從而確保答案更加準確、相關性更高且更具針對性，更符合其業務需求。

參閱下表了解何時及如何套用不同類型的中繼資料，以提高問答回答的準確性。每個中繼資料類型在釐清內容、解決模棱兩可的情況以及確保答案符合業務規則或領域特定的術語方面，都扮演著獨特的角色。


| 中繼資料類型 | 何時使用 | 如何改善答案準確性 | 
| --- | --- | --- | 
|  欄位層級描述  |  當問答系統需要了解模棱兩可或特定領域的資料欄名稱時 (例如，`DTC Spend`)。  |  釐清欄位語意，讓模型可以更精確地回答 (例如，將 `DTC Spend` 解譯為直接面向消費者的行銷費用)。  | 
|  主題層級描述  |  當使用者可能提出廣泛或模棱兩可的問題且 Amazon Q 需要有關主題整體目的的更多內容時 (例如，銷售績效與臨床試驗資料)。  |  協助將一般術語模糊化，並將答案引導到正確的領域 (例如，銷售與行銷)。  | 
|  資料集描述  |  當使用者可存取多個資料集且問答系統需要識別哪個最適合該問題時。  |  提供每個資料集目的和內容的相關情境以啟用資料集選取邏輯。  | 
|  主題層級自訂指示  |  當主題有特定的業務規則、時間範圍或定義時 (例如，會計年度 ≢ 日曆年)。  |  套用自訂邏輯或定義 (例如，將 Q1 定義為 8 月至 10 月)，以適當地量身打造答案。  | 

## 新增欄位層級描述
<a name="adding-field-level-descriptions"></a>

**若要新增欄位層級描述：**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 選擇**主題**，然後開啟要為其新增描述的主題。

1. 在主題詳細資訊頁面，選取**資料**索引標籤，然後選擇**資料欄位**子索引標籤。

1. 新增描述以改善包含的每個欄位的答案準確性。對於包含要了解定制企業知識的欄位名稱而言，這一點尤其重要。

 例如，如果您有多個日期欄位，清晰的描述可以協助 Amazon Q 區分它們，並根據使用者的問題選擇相關性最高的欄位。在下面的範例中，作者新增了**解決方案建立**和**主題建立**的描述，可讓 Amazon Q 在內容中更準確地選擇適當的日期欄位。

![\[解決方案建立描述\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/solution_create.png)


![\[主題建立描述\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/topic_create.png)


## 新增主題層級描述
<a name="adding-topic-level-descriptions"></a>

**若要新增主題層級描述：**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 選擇**主題**，然後開啟要為其新增描述的主題。

1. 在主題詳細資訊頁面，選取**摘要**索引標籤。

1. 在**主題詳細資訊**下新增描述，以提供有關主題整體目的的更多內容。

## 新增資料集描述
<a name="adding-dataset-descriptions"></a>

**若要新增資料集描述：**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 選擇**主題**，然後開啟要為其新增描述的主題。

1. 在主題詳細資訊頁面，選取**資料**索引標籤，然後選擇**資料集**子索引標籤。

1. 新增描述以協助改善資料集選取邏輯。

## 新增主題層級自訂指示
<a name="adding-topic-level-custom-instructions"></a>

**若要新增自訂指示：**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 選擇**主題**，然後開啟要為其新增描述的主題。

1. 在主題詳細資訊頁面，選取**自訂指示**索引標籤。

1. 新增主題層級指引，以協助聊天更了解所選主題特有的內容、術語或意圖。這可能包括歧義提示、欄位關係、無法在計算欄位或主題篩選條件中擷取的詞彙定義，或自訂相對日期範圍的指示。

## 編寫自訂指示的最佳實務
<a name="best-practices-for-writing-custom-instructions"></a>

**精確比對儲存格值**
+ 使用資料庫中的確切儲存格值，包括大小寫和格式。
+ 如果值不明確，請參考其來源資料欄進行釐清。

範例：
+ 不使用：「*AMZ 是 Amazon 客戶*」

  使用：「*AMZ 是 'Amazon.com, Inc.' 客戶*」
+ 不使用：「*ETP 是企業客戶*」

  使用：「*ETP 是企業客群中的客戶*」

**具體且量化**

避免模糊語言 – 清楚了解篩選條件、閾值和來源資料欄。

範例：
+ 不使用：「*在談論銷售時篩選大型客戶*」

  使用：「*在談論銷售時篩選年收入 > 100 萬美元的客戶*」

**使用格式以清楚表達，而不是為了實現功能**

間距和換行不會影響模型行為，但有助於作者更輕鬆地閱讀和維護指示。

**了解自訂指示無法執行的操作**

自訂指示可改善對業務內容的了解，但不會新增新功能。這些指示無法：
+ 變更圖表類型選擇
+ 執行計算或填入 Null 值
+ 建立新欄位
+ 控制格式、顏色或圖例
+ 更改視覺效果的敘述或數量/類型

## 在儀表板問答的資料準備中新增欄位層級描述
<a name="adding-field-level-descriptions-for-dashboard-based-qa"></a>

除了主題型描述之外，您還可以建立欄位層級定義，以增強[儀表板問答](dashboard-qa.md)功能。在資料準備階段將特定定義新增至個別欄位，可改善使用者對特定儀表板元素提出問題時的答案準確性。

**若要新增儀表板問答的欄位層級描述：**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 選擇**資料**，開啟您有權存取的資料集，然後選取**編輯資料集**。

1. 在每個相關欄位中選擇三個點的選單，然後選取**編輯名稱和描述**。

1. 新增描述以改善儀表板相關問題的答案。

1. 選擇 **Apply (套用)** 來儲存您的變更。

# 使用 Generative BI 詢問和回答資料的問題
<a name="gen-bi-data-q-and-a"></a>

**注意**  
若要檢視多視覺效果體驗，主題作者必須執行下列動作：新增具名實體，並將現有主題轉換為使用生成功能或建立新的生成主題。如需詳細資訊，請參閱[編寫問答](gen-bi-author-q-and-a.md)。

藉助具備以下特點的人文問答功能加速資料驅動型決策：
+ AI 產生的敘述，醒目顯示關鍵洞見
+ 多視覺效果答案，提供問題的答案以及支援性視覺效果來加入有價值的內容
+ 每個主題的首頁，其中包含 AI 產生和作者審查的建議問題及自動化資料預覽，以查看您可以詢問哪些資料

選擇右上角的閃爍圖示。開啟主題後，會出現一個首頁，其中包含建議的問題清單和**主題中的內容**，以查看您可以詢問哪些資料。

有多個日期可用時，請選擇**更多…**以檢視它們。例如，在此「學生註冊趨勢」主題中，有從 2018 年到 2023 年的可用註冊資料，但也有從 1973 年到 2005 年的學生出生日期 (DOB) 資料。

選擇一個建議的問題或輸入您自己的問題以開始使用。將游標暫留在 AI 產生的敘述中的句子上，您可以清楚地識別來源視覺化效果並驗證值。每個視覺化效果都是互動式的，並且可以新增到您的 Pinboard。

您可以獲得從模糊到精確的各種問題的答案。

如果您心中沒有確切的問題，則可以詢問一個只有一個單字或一個短語的模糊問題，例如*「銷售」*或*「優秀學生」。*您可以在這些模糊問題中加入其他篩選條件，例如*「上學期的優秀學生」。*

問題範例包括：
+ 實體名稱：*「訂單詳細資訊」*
  + 
**注意**  
您可以從主題首頁和清單頂端的***主題*中的內容**索引標籤中找到實體。
  + 欄位名稱：「客群」
  + 欄位值：“Acme Inc.”、“Washington DC”
  + 模糊 (或隱含) 的篩選條件：「最佳帳戶管理員」、「底部產品」

如需支援的精確問題，請參閱下表的問題類型：[Q 支援的問題類型](https://docs.aws.amazon.com/quicksight/latest/user/quicksight-q-ask.html#quicksight-q-ask-types)。 範例包括「具有最大 WoW 成長 % 的產品」或「按季度預測 APAC 客戶的銷售額」。它涵蓋了一系列篩選條件，例如頂部/底部、相對和絕對日期篩選條件、period-to-date和period-over-period等。它還支援分析問題，例如佔總數的百分比，或「為什麼銷售在 2023 年 10 月下降？」

**提示**  
為了協助您形成問題，請思考*誰*、*什麼*、*何地*、*何時*和*為什麼*。

剖析答案：
+ **解譯為：**此為 Amazon Q 解譯您問題的方式。它會將您的單字映射到基礎資料，以便您可以驗證您已正確理解。如果未正確理解您的問題，請調整您的問題內容或給作者留下回饋意見。
+ **AI 產生的敘述：**視覺效果摘要，其中醒目顯示了關鍵洞見。如果您的快速帳戶已連線至 Amazon Q 應用程式，您可能會在 **Q Business 的 Insights** 下收到來自非結構化資料來源的其他洞見。您可以在**來源**的可收合部分中查看使用的非結構化來源。如需將快速帳戶連線至 Amazon Q Business 應用程式的詳細資訊，請參閱 [使用 Amazon Q Business 增強 Amazon Quick Sight 洞察](generative-bi-q-business.md)。
+ **視覺效果：**視覺效果包括：直接提供問題答案的中央視覺效果、提供背景資訊的右側支援性視覺效果、相關 KPI 以及底部的詳細資訊表。
**注意**  
如果此欄位未包含在具名實體中，則其會顯示為單一視覺效果。
+ **您的意思是：** – 當您的問題有多個解釋時，它會顯示替代答案的清單，您可以選取這些答案以符合您的預期問題。
  + 在下列範例中，「排名靠前客戶」這一問題可以有多種解釋方式，包括按「總銷售額」、「總利潤」或「客戶數量」來看。  
![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/top-customers.png)

其他秘訣
+ 若要調整面板大小，請拖曳左側。
+ 將重要的視覺效果新增至您的 Pinboard 以快速存取。從 Amazon Q 窗格頂端檢視您的軟木板。
+ 為主題作者提供意見回饋，以便其查看並做出改善。

# 選擇退出生成式 BI
<a name="generative-bi-opt-out"></a>

如果帳戶中的 Generative BI 處於作用中狀態，則會向快速帳戶收費。如果您的帳戶使用下列任何功能，則生成式 BI 會被視為作用中：
+ 專業版角色使用者
+ 主題
+ 儀表板和視覺效果索引
+ 儀表板問答

若要避免完全停用 Generative BI，請執行下列步驟。

**警告**  
選擇退出 Generative BI 將停用 AI 功能並停止相關費用。此程序涉及：  
移除專業版角色使用者角色或將其變更為標準角色
刪除您帳戶中的所有主題
停用儀表板索引和問答功能
**繼續操作之前：**請仔細檢閱步驟，並確保您了解將要停用的功能。

**選擇退出生成式 BI**

1. 執行下列步驟，確保帳戶中沒有映射至專業版角色的專業版角色使用者或使用者群組：
   + 若要使用 API 更新或移除專業版角色使用者：
     + 如果您使用快速身分 （有或沒有 IAM 聯合）：

       1. 使用 [ListUsers](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_ListUsers.html) API 找到具有專業版角色的使用者。

       1. 使用 [UpdateUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_UpdateUser.html) API 變更使用者的角色，或使用 [DeleteUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_DeleteUser.html) API 從帳戶中移除使用者。
     + 如果您使用 IAM Identity Center 或 Microsoft Active Directory 來執行此操作：

       1. 使用 [ListRoleMemberships](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_ListRoleMemberships.html) API 找到映射至專業版角色的使用者群組。

       1. 使用 [CreateRoleMemberships](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_CreateRoleMemberships.html) API 以相同的使用者建立新的使用者群組，但映射至不同的角色。

       1. 使用 [DeleteRoleMemberships](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_DeleteRoleMemberships.html) API 刪除映射至專業版角色的先前使用者群組。
   + 若要使用 Quick 主控台更新或移除 Pro 使用者：

     1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

     1. 選擇設定檔圖示，然後選擇**管理快速**。

     1. 如有必要，在左側導覽窗格中選擇**管理使用者**。
        + 如果您使用快速身分 （無論是否有 IAM 聯合），請使用 [檢視 Amazon Quick 帳戶詳細資訊](managing-user-access-qs-iam.md#view-user-accounts)或 中的步驟更新使用者角色或刪除使用者[刪除 Amazon Quick 使用者帳戶](managing-user-access-qs-iam.md#delete-a-user-account)。
        + 如果您使用 IAM Identity Center 或 Microsoft Active Directory，請依照[管理使用者存取](managing-user-access-idc.md#view-user-accounts-enterprise)中的步驟更新群組和角色映射或刪除使用者群組。

1. 執行下列步驟，確保帳戶中沒有主題：

   1. 使用 [ListTopics](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_ListTopics.html) API 列出賬戶中在每個 AWS 區域中使用的所有主題。

   1. 針對每個主題執行下列動作之一：
      + 如果您是主題的擁有者或共同擁有者，請使用 [DeleteTopic](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_DeleteTopic.html) API 刪除主題。
      + 如果您不是主題的擁有者或共同擁有者：
        + 使用 [DescribeTopicPermissions](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_DescribeTopicPermissions.html) API 識別每個主題的擁有者，然後要求他們使用 [DeleteTopic](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_DeleteTopic.html) API 刪除其主題。
        + 使用 [UpdateTopicPermissions](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_UpdateTopicPermissions.html) API 使自己成為主題的共同擁有者，然後使用 [DeleteTopic](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_DeleteTopic.html) API 刪除主題。

1. 執行下列步驟，以確保停用儀表板和視覺效果索引以及儀表板問答：
   + 若要使用 API 停用儀表板和視覺效果索引以及儀表板問答：

     1. 使用 [UpdateQuickSightQSearchConfiguration](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_UpdateQuickSightQSearchConfiguration.html) API 停用儀表板和視覺效果索引。

     1. 使用 [UpdateDashboardsQAConfiguration](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_UpdateDashboardsQAConfiguration.html) API 停用儀表板問答。
   + 若要使用快速主控台停用儀表板和視覺化索引以及儀表板問答：

     1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

     1. 選擇設定檔圖示，然後選擇**管理快速**。

     1. 在**帳戶**區段下，選擇 **Amazon Q**。

     1. 停用各個選項。

# 使用 Amazon Quick Sight 主題
<a name="topics"></a>


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 管理員和作者  | 

*主題*是一或多個資料集的集合，代表您的商業使用者可以提出問題的主題領域。

透過 Quick Sight 自動化資料準備，您可以取得採用 ML 技術的協助，協助您建立與最終使用者相關的主題。第一個程序從自動欄位選取和分類開始，過程如下：
+ 根據預設，自動化資料準備會選擇要包含的少量欄位，以建立焦點資料空間供讀者探索。
+ 自動化資料準備會選取您在報告和儀表板等其他資產中使用的欄位。
+ 自動化資料準備也會從啟用主題的任何相關分析匯入任何其他欄位。
+ 它識別日期、維度和量值，以學習如何在答案中使用欄位。

這組自動選取的欄位可協助作者快速開始自然語言分析。作者可以根據需要使用**包含**切換開關，永遠排除欄位，或包含其他欄位。

接著，自動化資料準備會透過自動標記欄位和識別同義詞來繼續程序。自動化資料準備會使用常用詞彙，以易記的名稱和同義詞更新欄位名稱。例如，`SLS_PERSON` 欄位可能會重新命名為 `Sales person`，並指定同義字，包括：`salesman`、`saleswoman`、agent 和 `sales representative`。雖然您可以讓自動化資料準備執行大部分的工作，但值得檢閱欄位、名稱和同義詞，以進一步為您的最終使用者自訂它們。例如，如果使用者在輕鬆交談中將銷售人員稱為 "rep" 或 "dealer"，則您可以透過將 `rep` 和 `dealer` 新增至 `SLS_PERSON` 的同義字來實現支援。

最後，自動化資料準備會透過取樣其資料並檢查作者在分析期間套用的格式，來偵測每個欄位的語意類型。自動化資料準備會自動更新欄位組態，設定用於每個欄位的值格式。因此，問題的答案對於日期、貨幣、識別符、布林值、人員等會以預期格式提供。

若要進一步了解如何使用主題，請繼續前往本章中的下列章節。

**Topics**
+ [

# 導覽主題
](navigating-topics.md)
+ [

# 建立 Quick Sight 主題
](topics-create.md)
+ [

# 主題工作空間
](topics-interface.md)
+ [

# 在 Quick Sight 主題中使用資料集
](topics-data.md)
+ [

# 讓 Quick Sight natural-language-friendly
](topics-natural-language.md)
+ [

# 共用 Quick Sight 主題
](topics-sharing.md)
+ [

# 管理 Amazon Quick Sight 主題許可
](topics-sharing-permissions.md)
+ [

# 檢閱 Quick Sight 主題效能和意見回饋
](topics-performance.md)
+ [

# 重新整理 Quick Sight 主題索引
](topics-index.md)
+ [

# 使用 Amazon Quick Sight APIs 處理 Quick Sight 主題
](topics-cli.md)

# 導覽主題
<a name="navigating-topics"></a>

在 Quick Sight 中，有一種以上的方法來建立和管理主題。您可以在 Amazon Quick 首頁或「開始」頁面上開始。您也可以從分析內部開始。

**Topics**
+ [

# 從 Amazon Quick 首頁
](starting-from-home.md)
+ [

# 從 Amazon Quick Sight 分析
](starting-from-sheets.md)
+ [

# 在 Amazon Quick Sight 分析中瀏覽問題
](starting-from-questions-on-sheets.md)

# 從 Amazon Quick 首頁
<a name="starting-from-home"></a>

從快速入門頁面，您可以在左側導覽窗格中選取主題來建立和管理**主題**。快速提供建立主題的引導式工作流程。您可以隨時退出引導式工作流程和返回，從而不打斷您的工作。

當您建立主題時，您的商業使用者可以提出有關該主題的問題。您可以隨時開啟某個主題來變更它，或檢視它的效能。

若要開啟主題，請選擇相應的主題名稱。

若要返回所有主題清單，請選擇主題工作空間左側的**所有主題**。

# 從 Amazon Quick Sight 分析
<a name="starting-from-sheets"></a>

若要從 Amazon Quick Sight 分析開始，請開啟您要搭配自動化資料準備 使用的分析。

若要開啟或建立主題，請選擇頂端導覽列中的主題圖示。

您可以隨時開啟某個主題來變更它，或檢視它的效能。

若要從分析開啟主題，請在頂端導覽列中選擇相應主題名稱 (如果尚未顯示)。然後選取頂端導覽列上的垂直省略符號圖示 (` ⋮ `)。

若要檢視相應主題的資訊，請選取**關於主題**。

若要檢視主題中包含的資料欄位，請在索引標籤清單中選取**資料欄位**。

# 在 Amazon Quick Sight 分析中瀏覽問題
<a name="starting-from-questions-on-sheets"></a>

透過導覽分析中某個主題的問題和答案，您可以了解該主題的使用情況。您可以據此做出必要調整。

從已連結至主題的分析中開始，選取頂端導覽列上的搜尋列，然後輸入問題。答案會顯示在主題畫面上，其中也會顯示可在分析中使用主題的所有可用選項。
+ 若要變更答案中顯示的視覺化效果類型，請選取類型圖示 (類似長條圖)。
+ 若要檢視改善建議，請選取對話氣泡，如果您有未檢視的建議，氣泡會反白顯示。
+ 若要檢視與問題相關的洞見，請選取燈泡圖示。
+ 若要從 Pinboard 中新增或移除問題，請切換**新增至 Pinboard** 或**從 Pinboard 中移除**圖示。您可以從頂端導覽列中選取 Pinboard 圖示來檢視相應 Pinboard。
+ 若要檢視有關此主題的資訊，請選取帶有圓圈的小寫字母 *i* (` ![\[alt text not found\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/status-info.png) `)。
+ 選取省略符號選單 (` … `) 以執行下列其中一項：
  + **匯出至 CSV**：匯出所選視覺化效果中顯示的資料。
  + **複製請求 ID**：擷取此程序的請求 ID 以進行疑難排解。Amazon Quick Sight 會產生英數字元請求 ID，以唯一識別每個程序。
  + **共用此視覺化效果**：安全地共用視覺化效果中使用的主題的 URL。
  + **答案明細**：檢視答案的詳細解釋。

在主題畫面的底部，您可以透過選取**編輯問題變體**來新增或變更問題的變體。同樣在底部，當您對問題和答案感到滿意時，可以透過選擇**標示為已檢閱**將主題標記為已檢閱。或者，如果您發現先前檢閱的主題需要進一步檢閱，請選擇**取消表示為已檢閱**。

您可以隨時開啟某個主題來變更它，或檢視它的效能。若要直接使用主題的設定 (例如包含哪些欄位或具有哪些同義字)，請使用**主題**頁面。

**開啟連結到分析的主題**

1. 在左側導覽窗格中選取**主題**，從快速開始頁面開啟 Amazon Quick Sight **主題**頁面。

   若要保持分析開啟，可以在新的瀏覽器索引標籤或視窗中開啟**主題**頁面。

1. 若要開啟主題，請選擇相應的主題名稱。如果您最近導覽離開分析頁面，名稱可能仍會顯示在畫面頂端的搜尋列中。

1. 若要返回所有主題清單，請選擇主題工作空間左側的**所有主題**。

# 建立 Quick Sight 主題
<a name="topics-create"></a>


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 管理員和作者  | 

若要針對資料集開啟問題，您必須建立主題。Quick Sight 提供建立主題的引導式工作流程。您可以隨時退出引導式工作流程和返回，從而不打斷您的工作。

有兩種方法可以建立主題：
+ 透過選取資料集來建立主題。當您在 Quick Sight 中建立主題時，您可以將多個資料集新增至它們，也可以在分析中啟用主題。
+ 透過分析建立主題。當您在分析中建立主題，或將現有主題連結至分析時，自動化資料準備會從您分析資料的方式中學習，並自動將其套用至您的主題。

與 Quick Readers 共用主題後，他們會使用它在搜尋列中提出問題，您可以查看主題執行情況的摘要。您也可以查看使用者要求的所有項目清單及其回應程度，以及您已驗證的任何答案。檢閱意見回饋非常重要，這樣您的商業使用者可以繼續獲得其問題的正確視覺化效果和答案。

## 建立主題
<a name="topics-create-how"></a>

透過以下程序建立主題。

**若要建立主題**

1. 在快速首頁上，選擇**主題**。

1. 在開啟**的主題**頁面上，選擇右上角的**建立主題**。

1. 在開啟的**建立主題**頁面上，執行下列動作：

   1. 針對**主題名稱**，輸入主題的描述性名稱。

      業務使用者透過該名稱識別主題並使用它來提出問題。

   1. 針對**描述**，請輸入主題的描述。

      使用者可以使用此描述詳細了解該主題。

   1. 選擇**繼續**。

1. 在開啟的**將資料新增至主題**頁面上，選擇以下選項之一：
   + 若要新增您擁有或有權存取的一個或多個資料集，請選擇**資料集**，然後選取要新增的一個或多個資料集。
   + 若要從已建立或已與您共用的儀表板新增資料集，**請從儀表板中選擇資料集**，然後從清單中選擇儀表板。

1. 選擇**新增資料**。

   主題已建立，並且該主題的頁面將開啟。下一步是設定主題中繼資料，使其易於讀者理解。如需詳細資訊，請參閱[讓 Quick Sight natural-language-friendly](topics-natural-language.md)。或在下一主題中探索主題工作空間。

# 主題工作空間
<a name="topics-interface"></a>


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 管理員和作者  | 

建立主題後，或從**主題**頁面上的清單中選擇現有主題時，該主題將會開啟到該主題的工作空間。此處顯示四個索引標籤，您可以按照以下各章節內容中的描述進行使用。Quick Sight 提供主題的引導式工作流程。您可以隨時退出引導式工作流程和返回，從而不打斷您的工作。

## 摘要
<a name="topics-interface-summary"></a>

**摘要**索引標籤包含三個重要區域：
+ **建議**：建議為如何改善主題提供逐步指導。這些步驟可協助您了解如何建立效果更好的主題。

  若要遵循建議，請選擇建議橫幅中的動作按鈕，並按照建議的步驟進行操作。

  目前，依下表所示順序提供八個預設建議。當您在完成一個建議步驟後返回**摘要**索引標籤時，系統會提供新的建議。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/topics-interface.html)
+ **有關主題互動和效能的指標和關鍵績效指標 (KPI)**：在本區段中，您可以查看讀者如何與主題互動，以及他們對所提供的答案給出的意見回饋和評等。您可以檢視使用者提出的所有問題的互動情況，或選取特定問題。您還可以變更指標的時間跨度，從一年到一週。

  如需詳細資訊，請參閱[檢閱 Quick Sight 主題效能和意見回饋](topics-performance.md)。
+ **資料集**：此區段顯示用於建立主題的資料集。在此區段中，您可以新增其他資料集，或從現有儀表板匯入資料集。您也可以編輯主題資料集的中繼資料、設定資料重新整理排程、變更資料集的名稱等。如需詳細資訊，請參閱[在 Quick Sight 主題中使用資料集](topics-data.md)。

## 資料
<a name="topics-interface-data"></a>

**資料**索引標籤顯示主題中包含的所有欄位。您可以在此處設定主題中繼資料，讓您的主題符合自然語言，並提高主題效能。如需詳細資訊，請參閱[讓 Quick Sight natural-language-friendly](topics-natural-language.md)。

## 使用者活動
<a name="topics-interface-user"></a>

此索引標籤顯示主題收到的所有問題，以及每個問題的整體意見回饋。您可以概覽提出的問題數量，以及正面和負面意見回饋的百分比。您可以按意見回饋以及意見回饋中是否留下評論進行篩選。如需詳細資訊，請參閱[檢閱 Quick Sight 主題效能和意見回饋](topics-performance.md)。

## 已驗證的答案
<a name="topics-interface-answers"></a>

*已驗證的答案*是您已為其預先設定視覺化效果的問題。您可以在搜尋列中提出問題，然後將問題標記為已檢閱，以建立已驗證的問題答案。透過使用**已驗證的答案**索引標籤，您可以檢視經過驗證的答案，使用者對這些答案的意見回饋。

# 在 Quick Sight 主題中使用資料集
<a name="topics-data"></a>


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 管理員和作者  | 

建立主題時，您可以向其中新增其他資料集，或從現有儀表板匯入資料集。您可以隨時編輯資料集的中繼資料，並設定資料重新整理排程。您也可以透過建立計算欄位、篩選條件或具名實體，來為主題中的資料集新增欄位。

**Topics**
+ [

# 將資料集新增至 Amazon Quick Sight 中的主題
](topics-data-add.md)
+ [

# 將具有資料列層級安全性 (RLS) 的資料集新增至 Amazon Quick Sight 主題
](topics-data-rls.md)
+ [

# 重新整理 Quick Sight 主題中的資料集
](topics-data-refresh.md)
+ [

# 從 Amazon Quick Sight 主題移除資料集
](topics-data-remove.md)
+ [

# 將計算欄位新增至 Amazon Quick Sight 主題資料集
](topics-data-calculated-fields.md)
+ [

# 將篩選條件新增至 Amazon Quick Sight 主題資料集
](topics-data-filters.md)
+ [

# 將具名實體新增至 Amazon Quick Sight 主題資料集
](topics-data-entities.md)

# 將資料集新增至 Amazon Quick Sight 中的主題
<a name="topics-data-add"></a>

您可以隨時將資料集新增至主題。透過以下程序了解操作方式。

**將資料集新增至主題**

1. 開啟您想要新增一個或多個資料集的主題。

1. 在**摘要**頁面上，選擇**資料**。然後，在**資料集**下，選擇**新增資料集**。

1. 在開啟的**新增資料集**頁面上，選擇要新增的一個或多個資料集，然後選擇**新增資料集**。

   資料集會新增至主題，且資料集的唯一字串值會編製索引。您可以立即編輯欄位組態。如需詳細資訊，請參閱[重新整理 Quick Sight 主題索引](topics-index.md)。如需編輯欄位組態的詳細資訊，請參閱 [讓 Quick Sight natural-language-friendly](topics-natural-language.md)。

# 將具有資料列層級安全性 (RLS) 的資料集新增至 Amazon Quick Sight 主題
<a name="topics-data-rls"></a>

您可以將包含資料列層級安全性 (RLS) 的資料集新增至主題。主題中的所有欄位均會遵循套用於資料集的 RLS 規則。例如，如果使用者詢問「按區域顯示銷售額」，則傳回的資料是根據使用者對基礎資料的存取。因此，如果他們只被允許查看東部區域，則答案中只會顯示東部區域的資料。

RLS 規則套用於使用者提問時的自動建議。當使用者輸入問題時，系統只會向其建議其有權存取的值。如果使用者輸入有關其無權存取的維度值的問題，其將無法取得有關該值的答案。例如，假設相同使用者輸入問題「顯示西部地區的銷售額」。在這種情況下，即使他們提出問題，他們也不會得到建議或答案，因為他們沒有該區域的 RLS 存取權。

根據預設，Quick Sight 允許使用者根據使用者在 RLS 中的許可來詢問有關欄位的問題。如果欄位包含您想要限制存取的敏感資料，請繼續使用此選項。如果您的欄位不包含敏感資訊，且您希望所有使用者在建議中查看資訊，則您可以選擇允許 欄位內所有值的問題。

**允許對全部欄位提問**

1. 在快速首頁中，選擇**資料**。

1. 在**資料集**索引標籤下，選擇您新增 RLS 的資料集，然後選擇**編輯資料集**。

   如需新增 RLS 到 資料集的詳細資訊，請參閱 [在 Amazon Quick 中使用資料列層級安全性](row-level-security.md)。

1. 在資料準備頁面上，選擇您要允許 之欄位的欄位選單 （三個點），然後選擇**資料列層級安全性 **。

1. 在開啟**的快速資料列層級安全性**頁面上，選擇**允許使用者詢問有關此欄位上所有值的問題**。

1. 選擇**套用**。

1. 完成資料集編輯後，選擇右上角藍色工具列中的**儲存並發布**。

1. 將資料集新增至您的主題。如需詳細資訊，請參閱前一節：[將資料集新增至 Amazon Quick Sight 中的主題](topics-data-add.md)。

如果您目前允許使用者針對所有的值提問，但想要實作資料集的 RLS 規則以保護敏感訊息，請重複步驟 1–4 並選擇**允許使用者根據其許可詢問有關此欄位的問題**。完成後，請重新整理主題中的資料集。如需詳細資訊，請參閱[重新整理 Quick Sight 主題中的資料集](topics-data-refresh.md)。

# 重新整理 Quick Sight 主題中的資料集
<a name="topics-data-refresh"></a>

將資料集新增至主題時，您可以指定希望該資料集重新整理的頻率。當您重新整理主題中的資料集時，會使用任何新的和更新的資訊重新整理該主題的索引。

當您將資料集新增至主題時，資料集不會進行複寫。建立唯一字串值的索引，指標不會編製索引。例如，存放為整數的量值不會編製索引。詢問的問題一律會根據資料集中的資料擷取最新的銷售指標。

如需重新整理主題索引的詳細資訊，請參閱 [重新整理 Quick Sight 主題索引](topics-index.md)

您可以為主題中的資料集設定重新整理排程，或手動重新整理資料集。您也可以查看上次重新整理資料的時間。

**設定主題資料集的重新整理排程**

1. 開啟您要變更的主題。

1. 在**摘要**頁面上，選擇**資料**。然後，在**資料集**下，展開您要為其設定重新整理排程的資料集。

1. 選擇**新增排程**，然後在開啟的**新增重新整理排程**頁面中執行以下操作之一。
   + 如果資料集是 SPICE 資料集，則選擇**將資料集匯入 SPICE 時重新整理主題**。

     目前不支援每小時重新整理SPICE資料集。設定為每小時重新整理的SPICE資料集會自動轉換為每日重新整理。如需設定 SPICE 資料集重新整理排程的詳細資訊，請參閱 [重新整理 SPICE 資料](refreshing-imported-data.md)。
   + 如果資料集是直接查詢資料集，則執行下列操作：

     1. 針對**時區**，選擇所需時區。

     1. 針對**重複頻率**，選擇所需的重新整理頻率。您可以選擇每天、每週或每月重新整理資料集一次。

     1. 針對**重新整理時間**，輸入您希望重新整理開始的時間。

     1. 針對**開始首次重新整理日期**，選擇您想要開始重新整理資料集的日期。

1. 選擇**儲存**。

**手動重新整理資料集**

1. 在主題**摘要**頁面上，選擇**資料**。然後，在**資料集**下，選擇您要重新整理的資料集。

1. 選擇**立即重新整理**。

**檢視資料集的重新整理歷史記錄**

1. 在主題**摘要**頁面上，選擇**資料**。然後，在**資料集下**，選擇要查看重新整理歷史記錄的資料集。

1. 選擇 **View history (檢視歷程記錄)**。

   **更新歷史記錄**頁面將開啟，其中包含資料集重新整理時間的清單。

# 從 Amazon Quick Sight 主題移除資料集
<a name="topics-data-remove"></a>

您可以從主題中移除資料集。從主題移除資料集並不會從 Quick Sight 中刪除資料集。

透過以下程序從主題中移除資料集。

**從主題中移除資料集**

1. 開啟您要變更的主題。

1. 在**摘要**頁面上，選擇**資料**。然後，在**資料集**下，選擇右側的資料集選單 （三個點），然後選擇**從主題中移除**。

1. 在開啟的「**您確定要刪除嗎？**」頁面上，選擇**刪除**以從主題中移除資料集。如果您不想從主題中移除資料集，請選擇**取消**。

# 將計算欄位新增至 Amazon Quick Sight 主題資料集
<a name="topics-data-calculated-fields"></a>

您可以透過建立計算欄位在主題中建立新欄位。*計算欄位*是結合資料集中的一個或兩個欄位與支援的函數建立新資料的欄位。

例如，如果資料集包含銷售和費用資料欄，您可以在計算欄位中使用簡單的函數將它們結合起來，以建立利潤資料欄。該函數類似於：`sum({Sales}) - sum({Expenses})`。

**將計算欄位新增至主題**

1. 開啟您要變更的主題。

1. 在該主題中，選擇**資料**索引標籤。

1. 針對**動作**，選擇**新增計算欄位**。

1. 在開啟的計算編輯器中，執行下列動作：

   1. 為計算欄位指定一個易於理解的名稱。

   1. 針對右側的**資料集**，選擇要用於計算欄位的資料集。

   1. 在左側的計算編輯器中輸入計算。

      您可以在右側的**欄位**窗格中查看資料集中的欄位清單。您也可以在右側的**函數**窗格中查看支援的函數清單。

      如需有關可用於在 Quick Sight 中建立計算的函數和運算子的詳細資訊，請參閱 [Amazon Quick 的計算欄位函數和運算子參考函式和運算子](calculated-field-reference.md)。

1. 完成時，選擇**儲存**。

   計算欄位將會新增到主題中的欄位清單中。您可以為其新增描述並設定中繼資料，以使其更符合自然語言。

# 將篩選條件新增至 Amazon Quick Sight 主題資料集
<a name="topics-data-filters"></a>

有時，業務使用者 (讀者) 提出的問題可能會包含映射至資料中多個值儲存格的字詞。例如，假設其中一個讀者問：「顯示我西部的每週銷售趨勢」。本例中的西部地區**指的是 `Region` 欄位中的 `Northwest` 和 `Southwest` 值，並且要求對資料進行篩選以產生答案。您可以向主題新增篩選條件以支援此類請求。

**將篩選條件新增至主題**

1. 開啟您要新增篩選條件的主題。

1. 在該主題中，選擇**資料**索引標籤。

1. 針對**動作**，選擇**新增篩選條件**。

1. 在開啟的**篩選條件組態**頁面中，執行下列操作：

   1. 針對**名稱**，輸入易於理解的篩選條件名稱。

   1. 針對**資料集**，選擇要套用篩選條件的資料集。

   1. 針對**欄位**，選擇要篩選的欄位。

      根據您選擇之欄位的類型，提供的篩選選項有所不同。
      + 如果選擇的是文字欄位 (例如 `Region`)，請執行下列操作：

        1. 針對**篩選條件類型**，選擇所需的篩選條件類型。

           如需有關篩選文字欄位的詳細資訊，請參閱 [新增文字篩選條件](add-a-text-filter-data-prep.md)。

        1. 針對**規則**，選擇一個規則。

        1. 針對**值**，輸入一個或多個值。
      + 如果選擇的是日期欄位 (例如 `Date`)，請執行下列操作：

        1. 針對**篩選條件類型**，選擇所需的篩選類型，然後輸入要套用篩選條件的一個或多個日期。

           如需有關篩選日期欄位的詳細資訊，請參閱 [新增日期篩選條件](add-a-date-filter2.md)。
      + 如果選擇的是數值欄位 (例如 `Compensation`)，請執行下列操作：

        1. 針對**彙總**，選擇彙總篩選值的方式。

        1. 針對**規則**，選擇篩選條件規則，然後輸入規則的值。

        如需有關篩選數值欄位的詳細資訊，請參閱 [新增數值篩選條件](add-a-numeric-filter-data-prep.md)。

   1. (選用) 若要指定何時套用篩選條件，請選擇**在使用資料集時套用篩選條件**，然後選擇下列選項之一：
      + **永遠套用**：選擇此選項時，只要您指定的資料集中的任何資料欄連結到問題，就會套用篩選條件。
      + **永遠套用 (除非問題導致資料集中的明確篩選條件)**：選擇此選項時，只要您指定的資料集中的任何資料欄連結到問題，就會套用篩選條件。但是，如果問題提到同一欄位上的一個明確篩選條件，則不會套用該篩選條件。

   1. 完成時，選擇**儲存**。

      篩選條件會新增到話題中的篩選條件清單。您可以編輯該篩選條件的描述，或調整其套用時機。

# 將具名實體新增至 Amazon Quick Sight 主題資料集
<a name="topics-data-entities"></a>

當詢問有關某個主題的問題時，讀者可能會指向多個資料欄中的資料，而沒有明確說明每一欄。例如，他們可能會詢問交易的地址。他們實際上的意思是想要取得交易發生所在的分支機構名稱、州和城市。您可以建立一個具名實體來支援這類請求。

*具名實體*是在答案中一起顯示的欄位集合。例如，以上面的交易地址為例，您可以建立一個名為 `Address` 的具名實體。然後，您可以向其中新增資料集中已存在的 `Branch Name`、`State` 和 `City` 資料欄。當有人詢問有關地址的問題時，答案會顯示交易發生所在的分支機構、州和城市。

**將具名實體新增至主題**

1. 開啟您要變更的主題。

1. 在該主題中，選擇**資料**索引標籤。

1. 針對**動作**，選擇**新增具名實體**。

1. 在開啟的**具名實體**頁面中，執行以下操作：

   1. 針對**資料集**，選擇一個資料集。

   1. 針對**名稱**，輸入易於理解的具名實體名稱。

   1. 針對**描述**，輸入具名實體的描述。

   1. (選用) 針對**同義字**，新增您認為讀者可能用來指代具名實體或其包含之資料的任何替代名稱。

   1. 選擇**新增欄位**，然後從清單中選擇一個欄位。

      再次選擇**新增欄位**以新增另一個欄位。

      此處列出的欄位的順序是它們在答案中出現的順序。若要移動欄位，請選擇欄位名稱左側的六個點，然後將欄位拖放到所需的順序。

   1. 完成時，選擇**儲存**。

   具名實體將會新增到主題中的欄位清單中。您可以新增或編輯它的描述，並向其新增同義字，以使其更符合自然語言。

# 讓 Quick Sight natural-language-friendly
<a name="topics-natural-language"></a>


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 管理員和作者  | 

當您建立主題時，Quick Sight 會建立、存放和維護索引，其中包含該主題中資料的定義。此索引用於產生正確的答案、在有人提出問題時提供自動完成建議，以及建議詞彙與資料欄或資料值的映射。這是如何在讀者的問題中解譯關鍵術語並映射到資料的方式。

為了協助解譯您的資料並更好地回答讀者的問題，請盡可能提供有關資料集及其相關欄位的詳細資訊。

透過下列程序讓主題更加更符合自然語言。

**提示**  
您可以使用大量動作一次編輯多個欄位。透過以下程序批次編輯主題中的欄位。

**批次編輯主題中的欄位**

1. 開啟您要變更的主題。

1. 在該主題中，選擇**資料**索引標籤。

1. 在**欄位**下，選取要變更的兩個或多個欄位。

1. 選擇清單頂端的**大量動作**。

1. 在開啟的**大量動作**頁面中，根據需要設定欄位，然後選擇**套用至**。

   下列步驟說明組態選項。

## 步驟 1：為資料集提供易於理解的名稱和描述
<a name="topics-natural-language-dataset-name"></a>

資料集的命名通常基於技術命名慣例，因此其名稱可能不是讀者常用的名稱。建議您為資料集提供易於理解的名稱和描述，提供其所包含之資料的詳細資訊。這些易記名稱和描述用於了解資料集內容，並根據讀者的問題選取資料集。資料集名稱也會向讀取器顯示，以提供答案的其他內容。

例如，如果資料集名為 `D_CUST_DLY_ORD_DTL`，您可以在主題中將其重新命名為 `Customer Daily Order Details`。如此一來，當讀者在主題的搜尋列中看到它時，他們可以快速判斷資料是否與其相關。

**為資料集提供易於理解的名稱和描述**

1. 開啟您要變更的主題。

1. 在**摘要**索引標籤上，選擇**資料**。然後，在**資料集**下，選擇資料集最右側的向下箭頭來展開資料集。

1. 選擇左側資料集名稱旁的鉛筆圖示，然後輸入易於理解的名稱。建議使用讀者能夠理解的名稱。

1. 針對**描述**，輸入資料集的描述，以描述其包含的資料。

## 步驟 2：指示如何在資料集中使用日期欄位
<a name="topics-natural-language-dataset-time-basis"></a>

如果您的資料集包含日期和時間資訊，我們建議您在回答問題時使用該資訊。如果主題中有多個日期時間資料欄，則這麼做尤其重要。

在某些情況下，一個主題中有多個有效日期資料欄，例如訂單日期和發貨日期。在這些情況下，您可以透過指定預設日期來協助讀者回答問題。如果預設日期不能回答他們的問題，讀者可以選擇其他日期。

您也可以指定時間基礎，以判斷日期時間資料欄的精細程度。資料集的*時間基礎*是資料集中所有量值支援的最低時間精細程度。此設定有助於彙總不同時間維度的資料集中的指標，並適用於支援單一日期時間精細度的資料集。可以為具有大量指標的非標準化資料集設定此選項。例如，如果某個資料集支援每日彙總多個指標，則您可以將該資料集的時間基礎設定為**每天**。然後，這會用來判斷如何彙總指標。

**設定資料集的預設日期和時間基礎**

1. 開啟您要變更的主題。

1. 在**摘要**索引標籤上，選擇**資料**。然後，在**資料集**下，選擇資料集最右側的向下箭頭來展開資料集。

1. 針對**預設日期**，選擇一個日期欄位。

1. 針對**時間基礎**，選擇您要在資料集中彙總指標的最低精細程度。您可以每天、每週、每月、每季或每年彙總一次主題中的指標。

## 步驟 3：排除未使用的欄位
<a name="topics-natural-language-exclude-fields"></a>

當您將資料集新增至主題時，預設會新增資料集中的所有資料欄 (欄位)。如果資料集包含您或讀者不使用的欄位，或者您不想包含在答案中的欄位，您可以將它們從主題中排除。排除這些欄位會從答案和索引中移除它們，並改善讀者收到的答案的準確性。

**在主題中排除欄位**

1. 開啟您要變更的主題。

1. 在該主題中，選擇**資料**索引標籤。

1. 在**欄位**區段中的**包含**下，按一下切換圖示。

## 步驟 4：將欄位重新命名為易於理解的名稱
<a name="topics-natural-language-rename-fields"></a>

資料集中的欄位通常根據技術命名慣例來命名。您可以透過重新命名欄位名稱並新增描述，使主題中的欄位名稱更加易於理解。

欄位名稱用於了解欄位，並將其連結到讀者問題中的術語。當您的欄位名稱易於使用時，更容易在資料和讀者的問題之間繪製連結。這些易於理解的名稱也會作為問題答案的一部分呈現給讀者，以提供更多相關資訊。

**重新命名欄位並新增描述**

1. 開啟您要變更的主題。

1. 在該主題中，選擇**資料**索引標籤。

1. 在**欄位**區段中，選擇欄位最右側的向下箭頭將其展開。

1. 選擇左側欄位名稱旁的鉛筆圖示，然後輸入易於理解的名稱。

1. 針對**描述**，輸入欄位描述。

## 步驟 5：為欄位和欄位值新增同義字
<a name="topics-natural-language-synonyms"></a>

即使您將欄位名稱更新為使用者易於理解的名稱並為其提供描述，讀者仍可能使用不同的名稱來指代它們。例如，在讀者的問題中，`Sales` 欄位可能被稱為 `revenue`、`rev` 或 `spending`。

為了協助理解這些術語並將其對應至正確的欄位，您可以將一或多個同義詞新增至您的欄位。這樣做可提高準確性。

如同欄位名稱，讀者可能會使用不同的名稱來指代欄位中的特定值。例如，如果欄位包含值 `NW`、`SE`、`NE` 和 `SW`，您可以為這些值新增同義字。您可以為 `NW` 新增同義字 `Northwest`，為 `SE` 新增同義字 `Southeast`，以此類推。

**為欄位新增同義字**

1. 開啟您要變更的主題。

1. 在該主題中，選擇**資料**索引標籤。

1. 在**欄位**區段的**同義字**下，選擇欄位的鉛筆圖示，輸入單字或片語，然後按鍵盤上的 Enter 鍵。若要新增另一個同義字，請選擇 **\$1** 圖示。

**為欄位中的值新增同義字**

1. 開啟您要變更的主題。

1. 在該主題中，選擇**資料**索引標籤。

1. 在**欄位**區段中，選擇最右側的向下箭頭，以展開有關該欄位的資訊。

1. 在右側的**值預覽**下，選擇**設定值同義字**。

1. 在開啟的**欄位值同義字**頁面上，選擇**新增**，然後執行以下操作：

   1. 針對**值**，選擇要為其新增同義字的值。

   1. 針對**同義字**，輸入該值的一個或多個同義字。

1. 選擇**儲存**。

1. 若要新增另一個值的同義字，請重複步驟 5-6。

1. 完成時請選擇**完成**。

## 步驟 6：詳細說明您的欄位
<a name="topics-natural-language-semantics"></a>

為了協助解譯如何使用您的資料來回答讀者的問題，您可以進一步說明資料集中的欄位。

您可以說出資料集中的欄位是維度還是度量，並指定應如何彙總該欄位。您也可以闡明欄位中的值應如何格式化，以及欄位中的資料類型。設定這些額外的設定有助於在讀者提出問題時，為您的讀者建立準確的答案。

使用以下程序來進一步說明您的欄位。

### 指派欄位角色
<a name="topics-natural-language-semantics-role"></a>

資料集中的每個欄位都是維度或量值。*維度*是類別資料，*量值*是量化資料。知道欄位是維度還是度量，會決定哪些操作可以和不可以對欄位執行。

例如，設定欄位 `Patient ID`、 `Employee ID`和 `Ratings`有助於將這些欄位解譯為整數。此設定表示在測量欄位時，不會彙總欄位。

**設定欄位角色**

1. 開啟您要變更的主題。

1. 在該主題中，選擇**資料**索引標籤。

1. 在**欄位**區段中，選擇最右側的向下箭頭，以展開有關該欄位的資訊。

1. 針對**角色**中，選擇一個角色。

   您可以選擇量值或維度。

1. (選用) 如果量值是反比值 (例如，數字越小越好)，請選擇**反轉量值**。

   這說明如何解譯和顯示此欄位中的值。

### 設定欄位彙總
<a name="topics-natural-language-semantics-aggregation"></a>

設定欄位彙總有助於判斷當這些欄位跨多個資料列彙總時，應該或不應該使用哪個函數。您可以為欄位設定預設彙總和不允許的彙總。

*預設彙總*是當讀者的問題中沒有明確提及或指出彙總函數時所套用的彙總。例如，假設您的讀者問：「昨天售出了多少產品？」 在本例中，Q 會使用欄位 `Product ID` (其預設彙總為 `count distinct`) 來回答問題。這樣做會產生顯示相異產品 ID 計數的視覺化效果。

*不允許的彙總*是不能在回答問題時在欄位上使用的彙總。即使問題中明確要求不允許的彙總，它們也會被排除。例如，假設您指定 `Product ID` 欄位不得使用 `sum` 彙總。即使其中一位讀者詢問，「昨天售出了多少產品？」 `sum` 不會用來回答問題。

如果彙總函數錯誤地套用至欄位，建議您為欄位設定不允許的彙總。

**設定欄位彙總**

1. 開啟您要變更的主題。

1. 在該主題中，選擇**資料**索引標籤。

1. 在**欄位**區段中，選擇最右側的向下箭頭，以展開有關該欄位的資訊。

1. 對於**預設彙總**，選擇預設要彙總欄位的彙總。

   您可以使用總和、平均值、最大值和最小值彙總量值。您可以使用計數和相異計數彙總維度。

1. （選用） 對於**不允許的彙總**，請選擇您不想使用的彙總。

1. （選用） 如果您不想彙總篩選條件中的欄位，請選擇**永不彙總篩選條件。**

### 指定格式化欄位值的方式
<a name="topics-natural-language-semantics-values"></a>

如果您想要解釋如何格式化欄位中的值，您可以這樣做。例如，假設您有一個欄位 `Order Sales Amount`，其中包含要格式化為美元的值。在這種情況下，您可以解釋如何在答案中使用 將欄位中的值格式化為美元。

**指定格式化欄位值的方式**

1. 開啟您要變更的主題。

1. 在該主題中，選擇**資料**索引標籤。

1. 在**欄位**區段中，選擇最右側的向下箭頭，以展開有關該欄位的資訊。

1. 針對**值格式**，選擇要格式化欄位值的方式。

### 指定欄位語義類型
<a name="topics-natural-language-semantics-types"></a>

欄位*語意類型*是欄位中的資料所表示之資訊的類型。例如，您可能有一個包含位置資料、貨幣資料、年齡資料或布林值資料的欄位。您可以為該欄位指定語意類型和其他語意子類型。指定這些項目有助於了解存放在您欄位中之資料的意義。

透過以下程序指定欄位語意類型和子類型。

**指定欄位語義類型**

1. 開啟您要變更的主題。

1. 在該主題中，選擇**資料**索引標籤。

1. 在**欄位**區段中，選擇最右側的向下箭頭，以展開有關該欄位的資訊。

1. 針對**語意類型**，選擇資料表示的資訊類型。

   針對量值，您可以選取持續時間、日期構成部分、位置、布林值、貨幣、百分比、年齡、距離和識別符類型。針對維度，您可以選取日期構成部分、位置、布林值、人員、組織和識別符類型。

1. 針對**語意子類型**，選擇一個選項，以進一步指定資料表示的資訊類型。

   此處顯示的選項取決於您選擇的語義類型以及與相應欄位關聯的角色。有關量值和維度的語義類型及其關聯子類型的清單，請參閱下表。


| 語意類型 | 語意子類型 | 適用於 | 
| --- | --- | --- | 
|  年齡  |  | 量值 | 
|  Boolean  |  | 維度和量值 | 
|  Currency  |  美元 歐元 英鎊  | 量值 | 
|  日期構成部分  |  天 週 月 年 季  | 維度和量值 | 
|  距離  |  公哩 計量 英碼 英尺  | 量值 | 
|  持續時間  |  秒 分鐘 小時 天  | 量值 | 
|  識別符  |  | 維度和量值 | 
|  Location  |  郵遞區號 國家/地區 State 城市  | 維度和量值 | 
|  組織  |  | 維度 | 
|  百分比  |  | 量值 | 
|  個人  |  | 維度 | 

# 共用 Quick Sight 主題
<a name="topics-sharing"></a>


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 管理員和作者  | 

建立主題後，您可以與組織中的其他人共用。共用主題可讓您的使用者選取主題，並在搜尋列中詢問相關問題。與使用者共用主題後，您可以向他們指派許可，指定誰可以變更主題。

**共用主題**

1. 在快速入門頁面上，選擇左側**的主題**。

1. 在開啟的**主題**頁面上，開啟您要共用的主題。

1. 在開啟的頁面上，選擇右上角的**共用**。

1. 在開啟的**與使用者共用主題**頁面上，選擇您要與之共用主題的一個或多個使用者。

   您可以使用搜尋列按電子郵件地址搜尋使用者。

1. 選擇**許可**資料欄下的**檢視者**或**共同擁有者**，為使用者指派許可。

   如需這些許可的詳細資訊，請參閱下一章節：[管理 Amazon Quick Sight 主題許可](topics-sharing-permissions.md)。

1. 選取完使用者後，選擇**共用**。

# 管理 Amazon Quick Sight 主題許可
<a name="topics-sharing-permissions"></a>

當您與組織中的其他人共用主題時，您可能想要控制誰可以變更主題。為此，請指定哪些使用者是檢視者，哪些使用者是共同擁有者。*檢視器*從清單中選取主題時，可以在搜尋列中查看主題，但無法變更主題資料。*共同擁有者*可以在搜尋列中查看主題，也可以變更主題。

**為使用者指派主題許可**

1. 在快速入門頁面中，選擇**主題**。

1. 在開啟**的主題**頁面上，開啟您要管理許可的主題。

1. 在開啟的主題頁面上，選擇右上角的**共用**。

1. 在開啟的**與使用者共用主題**頁面上，選擇**管理主題存取**。

1. 在開啟的**管理主題許可**頁面上，找到要為其授予存取許可的使用者，然後針對**許可**，選擇以下選項之一：
   + 若要允許使用者檢視和變更主題，請選擇**共同擁有者**。
   + 若要僅允許使用者檢視主題，請選擇**檢視者**。

# 檢閱 Quick Sight 主題效能和意見回饋
<a name="topics-performance"></a>


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 管理員和作者  | 

建立主題並與使用者共用後，您可以檢視主題的效能。當有人使用您的主題提出問題或提供有關回應效果的意見回饋時，它會記錄在主題的**摘要**和**使用者活動**索引標籤上。

在主題的**摘要**索引標籤上，您可以檢視一段時間內 (7 天到一年) 提出的問題數量的歷史資料。您還可以查看收到正面意見回饋、負面意見回饋或沒有意見回饋，以及無法回答的問題的分佈情況。

在**使用者活動**索引標籤上，您可以查看使用者提出的問題，以及留下的任何正面或負面意見回饋和評論的清單。

檢視這些資訊可以協助您判斷相應主題是否滿足使用者的需求。例如，假設某個主題收到了使用者大量的負面意見回饋。當您檢閱使用者活動時，您注意到有幾個使用者對顯示錯誤資料的問題留下評論。為了改善這種狀況，您查看了使用者提出的問題，並注意到他們使用了您沒有預料到的字詞。您決定將該字詞作為同義字新增到主題中的相應欄位。一段時間後，您注意到正面意見回饋有所增加。

## 檢視主題效能
<a name="topics-performance-statistics"></a>

透過以下程序檢視主題的效能。

**檢視主題的效能**

1. 在快速入門頁面上，選擇左側**的主題**。

1. 在開啟的**主題**頁面上，開啟您要檢視的主題。

   主題將開啟，**統計資料**區段顯示該主題的統計資料。

1. (選用) 若要變更圖表中顯示的歷史資料量，請選擇下列選項之一：**7 天**、**30 天**、**90 天**、1**20 天**或 **12 個月**。

1. (選用) 若要從資料中移除無法回答的問題，請取消核取**包含無法回答的資料**。

1. (選用) 若要從資料中移除未收到意見回饋的問題，請取消核取**包含無意見回饋的資料**。

## 檢視主題問題和意見回饋
<a name="topics-performance-user-activity"></a>

透過下列程序檢視主題中的問題和意見回饋。

**檢視主題問題和意見回饋**

1. 在快速入門頁面上，選擇**主題**。

1. 在開啟的**主題**頁面上，開啟您若檢視意見回饋的主題。

1. 在開啟的主題頁面上，選擇**使用者活動**索引標籤。

   此時會顯示該主題的使用者活動。在頂端，您可以看到提出的問題總數，以及可回答和無法回答的問題數。您也可以看到被評為正面和負面的問題答案的百分比。此外，您還可以看到已消除歧義的問題的百分比。這表示有人輸入了一個問題並將問題中的單字之一映射到主題中的欄位。

   您可以選擇任何這些統計資料來篩選問題清單。

1. (選用) 若要檢視使用者在問題中留下的評論，請選擇問題右側的向下箭頭。

   評論顯示在左側。

1. (選用) 若要檢視用於回答問題的欄位，請選擇問題右側的向下箭頭。

   使用的欄位顯示在右側。選擇欄位名稱可編輯其中繼資料。

1. (選用) 若要檢視已消除歧義的問題，請選擇帶有紅色反白顯示之字詞的問題右側的向下箭頭。

   此時會顯示該字詞的描述以及用於消除歧義的欄位。若要為欄位新增同義字，請選擇**新增同義字**。

1. （選用） 若要檢視問題的回應方式，請選擇清單中問題旁的**檢視**。

1. (選用) 若要篩選問題清單，請選擇右側的**篩選依據**，然後按以下選項之一進行篩選。
   + **查看所有問題**：此選項會移除所有篩選條件，並顯示主題已收到的所有問題。
   + **可回答**：此選項會篩選出可回答的問題。可回答的問題是 Q 能夠回答的問題。
   + **無法回答**：此選項會篩選出無法回答的問題。無法回答的問題是 Q 無法回答的問題。
   + **已消除歧義**：此選項會篩選出已消除歧義的問題，即使用者手動將欄位映射到特定字詞的問題。
   + **無意見回饋**：此選項會篩選出未收到任何意見回饋的問題。
   + **負面**：此選項會篩選出收到負面意見回饋的問題。
   + **正面**：此選項會篩選出收到正面意見回饋的問題。
   + **無評論**：此選項會篩選出未收到使用者評論的問題。
   + **有評論**：此選項會篩選出收到使用者評論的問題。
   + **使用者**：此選項會篩選出您輸入的特定使用者名稱對應之使用者提出的問題。

# 重新整理 Quick Sight 主題索引
<a name="topics-index"></a>


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 管理員和作者  | 

當您建立主題時，Quick Sight 會建立、存放和維護索引，其中包含該主題中資料的定義。此索引不會公開給 Quick Sight 作者。它也不是主題中包含的資料集的複本。指標不會編製索引。例如，存放為整數的量值不會編製索引。

主題索引是主題中包含之欄位的唯一字串值的索引。此索引用於產生正確的答案、在有人提出問題時提供自動完成建議，以及建議詞彙與資料欄或資料值的映射。

若要重新整理主題索引，請重新整理主題中的資料集。您可以手動重新整理主題中的所有資料集，或重新整理單一資料集。您也可以檢視資料集重新整理歷史記錄，以監控過去的重新整理，並為主題中的每個資料集設定定期重新整理排程。針對 SPICE 資料集，您可以將主題索引重新整理排程與 SPICE 重新整理排程同步。如需設定 SPICE 重新整理排程的詳細資訊，請參閱 [依排程重新整理資料集。](refreshing-imported-data.md#schedule-data-refresh)。

**注意**  
目前不支援每小時重新整理排程。您可以設定重新整理排程，每天最多重新整理主題中的資料集一次。

建議您定期更新主題索引，以確保記錄最新的定義和值。完成主題索引更新大約需要 15 到 30 分鐘，具體取決於主題中包含的資料集的數量和大小。

**重新整理主題索引**

1. 在快速入門頁面上，選擇**主題**。

1. 在開啟的**主題**頁面上，開啟要重新整理的主題。

   主題將開啟**摘要**索引標籤，其中頁面底部會顯示主題中包含的資料集。頁面右上角還會顯示主題上次重新整理的時間。

1. 選擇右上角的**已重新整理**，然後選擇**重新整理資料**以重新整理主題索引。手動執行此操作會重新整理主題中的所有資料集。

   如需重新整理主題中個別資料集的詳細資訊，請參閱 [重新整理 Quick Sight 主題中的資料集](topics-data-refresh.md)。

# 使用 Amazon Quick Sight APIs 處理 Quick Sight 主題
<a name="topics-cli"></a>


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

使用本節了解如何使用 Amazon Quick Sight 命令列界面 (CLI) 來使用 Quick Sight 主題。

**先決條件**

開始之前，請確定您具有授予 CLI 使用者呼叫 Quick Sight API 操作存取權的 AWS Identity and Access Management (IAM) 角色。下表顯示了必須將哪些許可新增至 IAM 政策才能使用特定 API 操作。若要使用所有主題 API 操作，請新增 資料表中列出的所有許可。


| API 操作 | IAM 政策 | 
| --- | --- | 
|  `CreateTopic`  |  `quicksight:CreateTopic` `quicksight:PassDataSet`  | 
|  `ListTopics`  |  `quicksight:ListTopics`  | 
|  `DescribeTopic`  |  `quicksight:DescribeTopic`  | 
|  `DescribeTopicPermissions`  |  `quicksight:DescribeTopicPermissions`  | 
|  `DescribeTopicRefresh`  |  `quicksight:DescribeTopicRefresh`  | 
|  `DeleteTopic`  |  `quicksight:DeleteTopic`  | 
|  `UpdateTopic`  |  `quicksight:UpdateTopic` `quicksight:PassDataSet`  | 
|  `UpdateTopicPermissions`  |  `quicksight:UpdateTopicPermissions`  | 
|  `CreateTopicRefreshSchedule`  |  `quicksight:CreateTopicRefreshSchedule`  | 
|  `ListTopicRefreshSchedules`  |  `quicksight:ListTopicRefreshSchedules`  | 
|  `DescribeTopicRefreshSchedule`  |  `quicksight:DescribeTopicRefreshSchedule`  | 
|  `UpdateTopicRefreshSchedule`  |  `quicksight:UpdateTopicRefreshSchedule`  | 
|  `DeleteTopicRefreshSchedule`  |  `quicksight:DeleteTopicRefreshSchedule`  | 
|  `BatchCreateTopicReviewedAnswer`  |  `quicksight:BatchCreateTopicReviewedAnswer`  | 
|  `BatchDeleteTopicReviewedAnswer`  |  `quicksight:BatchDeleteTopicReviewedAnswer`  | 
|  `ListTopicReviewedAnswers`  |  `quicksight:ListTopicReviewedAnswers`  | 

下面的範例顯示允許使用者使用 `ListTopics` 操作的 IAM 政策。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "quicksight:ListTopics"
            ],
            "Resource": "*"
        }
    ]
}
```

------

設定使用 Quick Sight APIs 建立 Quick Sight 主題的許可後，請使用下列主題來建立和使用 Quick Sight 主題 APIs。

**Topics**
+ [

# 使用 Quick Sight APIs 處理 Quick Sight 主題
](topic-cli-examples.md)
+ [

# 使用 Quick Sight CLI 設定 Quick Sight 主題重新整理排程
](topic-refresh-apis.md)
+ [

# 在 和 之間複製和遷移 Quick Sight 主題 AWS 帳戶
](topic-cli-walkthroughs.md)
+ [

# 使用 Quick Sight APIs 在 Quick Sight 主題中建立和修改已檢閱的答案
](topic-reviewed-answer-apis.md)

# 使用 Quick Sight APIs 處理 Quick Sight 主題
<a name="topic-cli-examples"></a>

下列範例會建立新的主題。

```
aws quicksight create-topic
--aws-account-id AWSACCOUNTID
--topic-id TOPICID
--topic TOPIC
```

您也可以使用 CLI 骨架檔案搭配下列命令來建立新的主題。如需 CLI 骨架檔案的詳細資訊，請參閱《*Amazon Quick Sight 開發人員指南*》中的[使用 CLI 骨架檔案](https://docs.aws.amazon.com/quicksight/latest/developerguide/cli-skeletons.html)。

```
aws quicksight create-topic
--cli-input-json file://createtopic.json
```

當您建立新主題時，資料集重新整理組態不會複製到主題。若要為新主題設定主題重新整理排程，您可以進行 `create-topic-refresh-schedule` API 呼叫。如需使用 CLI 設定主題重新整理排程的詳細資訊，請參閱 [使用 Quick Sight CLI 設定 Quick Sight 主題重新整理排程](topic-refresh-apis.md)。

建立第一個主題之後，您可以更新、刪除、列出或請求主題摘要。

下列範例會更新主題。

```
aws quicksight update-topic
--aws-account-id AWSACCOUNTID
--topic-id TOPICID
--topic TOPIC
```

您也可以使用 CLI 骨架檔案搭配下列命令來更新主題。如需 CLI 骨架檔案的詳細資訊，請參閱《*Amazon Quick Sight 開發人員指南*》中的[使用 CLI 骨架檔案](https://docs.aws.amazon.com/quicksight/latest/developerguide/cli-skeletons.html)。

```
aws quicksight update-topic
--cli-input-json file://updatetopic.json
```

下列範例提供快速帳戶中所有主題的清單。

```
aws quicksight list-topics 
--aws-account-id AWSACCOUNTID
```

下列範例會刪除主題。

```
aws quicksight delete-topic 
--aws-account-id AWSACCOUNTID 
--topic-id TOPICID
```

下列範例提供如何設定主題的資訊。

```
aws quicksight describe-topic 
--aws-account-id AWSACCOUNTID 
--topic-id TOPICID
```

下列命令會更新主題的許可。

```
aws quicksight update-topic-permissions
--aws-account-id AWSACCOUNTID
--topic-id TOPICID
--grant-permissions Principal=arn:aws:quicksight:us-east-1:AWSACCOUNTID:user/default/USERNAME,Actions=quicksight:DescribeTopic
--revoke-permissions Principal=arn:aws:quicksight:us-east-1:AWSACCOUNTID:user/default/USERNAME,Actions=quicksight:DescribeTopic
```

使用 `grant-permissions` 參數將讀取和撰寫許可授予快速帳戶使用者。若要授予帳戶使用者讀取許可，請輸入值：`"quicksight:DescribeTopic"`。若要向帳戶使用者授予許可，請輸入下列值：
+ `"quicksight:DescribeTopic"`
+ `"quicksight:DescribeTopicRefresh"`
+ `"quicksight:ListTopicRefreshSchedules"`
+ `"quicksight:DescribeTopicRefreshSchedule"`
+ `"quicksight:DeleteTopic"`
+ `"quicksight:UpdateTopic"`
+ `"quicksight:CreateTopicRefreshSchedule"`
+ `"quicksight:DeleteTopicRefreshSchedule"`
+ `"quicksight:UpdateTopicRefreshSchedule"`
+ `"quicksight:DescribeTopicPermissions"`
+ `"quicksight:UpdateTopicPermissions"`

`RevokePermissions` 參數會撤銷授予帳戶使用者的所有許可。

下列命令說明主題的所有許可。

```
aws quicksight describe-topic-permissions 
--aws-account-id AWSACCOUNTID
--topic-id TOPICID
```

建立 Quick Sight 主題之後，您可以使用 Amazon Quick Sight APIs 來[設定主題重新整理排程](https://docs.aws.amazon.com/quicksuite/latest/userguide/topic-refresh-apis)、在[帳戶內或帳戶之間遷移 Quick Sight 主題](https://docs.aws.amazon.com/quicksuite/latest/userguide/topic-cli-walkthroughs)，以及[建立檢閱過的答案](https://docs.aws.amazon.com/quicksuite/latest/userguide/topic-reviewed-answer-apis)。

# 使用 Quick Sight CLI 設定 Quick Sight 主題重新整理排程
<a name="topic-refresh-apis"></a>

下列命令會建立主題的重新整理排程。

```
aws quicksight create-topic-refresh-schedule
--aws-account-id AWSACCOUNTID
--topic-id TOPICID
--dataset-arn DATASETARN
--refresh-schedule REFRESHSCHEDULE
```

建立主題的重新整理排程後，您可以更新、刪除、列出或請求主題的重新整理排程摘要。

下列命令會更新主題的重新整理排程。

```
aws quicksight update-topic-refresh-schedule 
--aws-account-id AWSACCOUNTID
--topic-id TOPICID
--dataset-id DATASETID
--refresh-schedule REFRESHSCHEDULE
```

下列範例提供設定為主題的所有重新整理排程清單。

```
aws quicksight list-topic-refresh-schedules
--aws-account-id AWSACCOUNTID
--topic-id TOPICID
```

以下範例會刪除主題重新整理排程。

```
aws quicksight delete-topic-refresh-schedule 
--aws-account-id AWSACCOUNTID
--topic-id TOPICID
--dataset-id DATASETID
```

以下範例會獲取相應主題有關重新整理排程設定的資訊。

```
aws quicksight describe-topic-refresh-schedule  
--aws-account-id AWSACCOUNTID
--topic-id TOPICID
--dataset-id DATASETID
```

# 在 和 之間複製和遷移 Quick Sight 主題 AWS 帳戶
<a name="topic-cli-walkthroughs"></a>

您可以使用 Quick Sight 命令列界面 (CLI)，將 Quick Sight 主題從一個帳戶遷移到另一個帳戶。您可以使用 Quick Sight CLI 重複重複使用相同的主題，而不是在多個儀表板、命名空間或帳戶中手動複寫相同的主題。此功能可節省 Quick Sight 作者的時間，並為跨多個儀表板的儀表板讀者建立標準化主題體驗。

若要使用 Quick Sight CLI 遷移主題，請使用下列程序

**將主題遷移至另一個帳戶**

1. 首先，找到要遷移的主題。您可以使用 `list-topics` API 命令檢視快速帳戶中每個主題的清單。

   ```
   aws quicksight list-topics --aws-account-id AWSACCOUNTID
   ```

1. 在您擁有主題清單後，找到您要遷移的主題，並`describe-topic`呼叫 以接收主題組態的 JSON 結構。

   ```
   aws quicksight describe-topic 
       --aws-account-id AWSACCOUNTID
       --topic-id TOPICID
   ```

   以下是 `describe-topic` API 回應的範例。

   ```
   {
       "Status": 200,
       "TopicId": "TopicExample", 
       "Arn": "string",
       "Topic": [
           {
               "Name": "{}",
               "DataSets": [
               {
               "DataSetArn": "{}",
               "DataSetName": "{}",
               "DataSetDescription": "{}",
               "DataAggregation": "{}",
               "Filters": [],
               "Columns": [],
               "CalculatedFields": [],
               "NamedEntities": []
               }
               ]
           }
       ],
       "RequestId": "requestId"
       }
   ```

1. 使用 JSON 回應來建立骨架檔案，您可以在其他 Quick 帳戶中輸入新`create-topic`呼叫。使用骨架檔案進行 API 呼叫之前，請務必變更骨架檔案中的 AWS 帳戶 ID 和資料集 ID，以符合您要新增新主題的 AWS 帳戶 ID 和資料集 ID。如需 CLI 骨架檔案的詳細資訊，請參閱《*Amazon Quick Sight 開發人員指南*》中的[使用 CLI 骨架檔案](https://docs.aws.amazon.com/quicksight/latest/developerguide/cli-skeletons.html)。

   ```
   aws quicksight create-topic --aws-account-id AWSACCOUNTID \
   --cli-input-json file://./create-topic-cli-input.json
   ```

`create-topic` 呼叫 Quick Sight API 之後，新主題會出現在您的帳戶中。若要確認新主題是否存在，`list-topics`請呼叫 Quick Sight API。如果複製的來源主題包含已驗證的答案，則這些答案不會遷移到新主題。若要查看原始主題所有已驗證的答案的清單，請使用 `describe-topic` API 呼叫。

# 使用 Quick Sight APIs 在 Quick Sight 主題中建立和修改已檢閱的答案
<a name="topic-reviewed-answer-apis"></a>

建立 Quick Sight 主題之後，您可以使用 Quick Sight APIs 來建立、列出、更新和刪除主題的重構答案。

以下命令批次會為 Quick Sight 主題建立最多 100 個已檢閱的答案。

```
aws quicksight batch-create-topic-reviewed-answer \
--topic-id TOPICID \
--aws-account-id AWSACCOUNTID \                 
—answers ANSWERS
```

您也可以使用下列命令，從 CLI 骨架檔案批次建立已檢閱答案。如需 CLI 骨架檔案的詳細資訊，請參閱《*Amazon Quick Sight 開發人員指南*》中的[使用 CLI 骨架檔案](https://docs.aws.amazon.com/quicksight/latest/developerguide/cli-skeletons.html)。

```
aws quicksight batch-create-topic-reviewed-answer \ 
--cli-input-json file://createTopicReviewedAnswer.json
```

以下命令列出 Quick Sight 主題中所有已檢閱的答案。

```
aws quicksight list-topic-reviewed-answers \
--aws-account-id AWSACCOUNTID \
--topic-id TOPICID \
```

以下範例可為主題批次刪除多達 100 個已檢閱答案。

```
aws quicksight batch-delete-topic-reviewed-answer \
--topic-id TOPICID \
--aws-account-id AWSACCOUNTID \                 
—answer-ids: ["AnswerId1, AnswerId2…"]
```

您也可以使用下列命令，從 CLI 骨架檔案批次建立主題的已檢閱答案。如需 CLI 骨架檔案的詳細資訊，請參閱《*Amazon Quick Sight 開發人員指南*》中的[使用 CLI 骨架檔案](https://docs.aws.amazon.com/quicksight/latest/developerguide/cli-skeletons.html)。

```
aws quicksight batch-delete-topic-reviewed-answer \
--cli-input-json file://deleteTopicReviewedAnswer.json
```

若要更新已檢閱答案，請使用 `batch-delete-topic-reviewed-answer` API 從主題中刪除現有的答案。然後，使用 `batch-create-topic-reviewed-answer` API 將更新的已檢閱答案新增至主題。

# 在 Amazon Quick Sight 中使用資料案例
<a name="working-with-stories"></a>

透過具有 Quick Sight 的生成式 BI，作者和讀者可以快速產生其資料案例的初稿。使用提示和視覺效果來產生草稿，其中包含您提供的詳細資訊。資料故事初稿並非用來取代您自己的想法或執行分析。相反，資料故事是您視需要自訂和擴展的起點。內容相關建議結合您的提示與選取的視覺效果，以提供專為您的資料案例量身打造的相關詳細資訊。如需此項目的詳細資訊，請參閱[具有 Quick Sight 的生成式 BI](quicksight-gen-bi.md)。

使用下列主題來建立、修改和共用資料案例。

**Topics**
+ [

# 使用生成式 BI 建立資料案例
](working-with-stories-create.md)
+ [

# 在 Amazon Quick Sight 中個人化資料案例
](working-with-stories-personalize.md)
+ [

# 在 Amazon Quick Sight 中檢視產生的資料案例
](working-with-stories-view.md)
+ [

# 在 Amazon Quick Sight 中編輯產生的資料案例
](working-with-stories-edit.md)
+ [

# 將佈景主題和動畫新增至 Amazon Quick Sight 中的資料案例
](working-with-stories-themes.md)
+ [

# 在 Amazon Quick Sight 中分享資料案例
](working-with-stories-share.md)

# 使用生成式 BI 建立資料案例
<a name="working-with-stories-create"></a>

使用下列程序，透過 Generative BI 建立資料案例。

**建立資料故事**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 在左側，選擇**案例**。

1. 在**資料案例**頁面上，選擇**新資料案例**。

1. 在出現**的案例**畫面中，導覽至**建置案例**模態，並輸入您要產生的資料案例提示。為了獲得最佳結果，請勿將提示表述為問題。請改為輸入您希望 Quick Sight 建置的資料案例。例如，假設您想要建立一個有關各地區最常執行之手術的資料故事。針對此使用案例，適合的提示是「建立一個有關各地區醫生最常執行之手術的資料故事。此外，顯示接收病患最多的科室。提供需配置更多醫生的科室建議，並包含至少四點支援證據。」

   您可以選擇略過此步驟，並手動建立您的資料故事。如果選擇放棄輸入提示，您仍然需要將視覺效果新增至資料故事。

1. 在**選取視覺效果**下，選擇**新增**。

1. 選擇包含您要使用的視覺效果的儀表板，然後選擇所需的視覺效果。您最多可以將 20 個視覺效果新增至資料故事。

   如果您沒有看到要使用的儀表板，請使用模態對話方塊的**尋找儀表板**搜尋列。

   您可以從您擁有共用許可的任何數量的儀表板中選擇視覺效果。顯示**受限制**徽章的視覺效果具有限制將它們新增至資料故事的許可。視覺效果可能會由於下列原因之一而受到限制：
   + 資料集連線至搭配 Amazon Redshift 使用受信任身分傳播的資料來源。
   + 資料集位於受限制資料夾內。

1. (選用) 使用**選取文件**區段上傳最多 5 個要在資料故事中使用的文件。每份文件不得超過 10 MB。這些文件僅用於產生資料案例，不會存放在 Quick Sight 中。下圖顯示了**建置故事**螢幕上的**選取文件**區段。

1. （選用） 如果您的快速帳戶已連線至 Amazon Q Business 應用程式，請勾選**使用來自 Amazon Q Business 的洞見**核取方塊，以使用來自 Amazon Q Business 的非結構化資料來源來增強您的資料案例。如需將快速帳戶連線至 Amazon Q Business 應用程式的詳細資訊，請參閱 [使用 Amazon Q Business 增強 Amazon Quick Sight 洞察](generative-bi-q-business.md)。

1. 選擇 **Build** (建置)。

產生資料故事之後，請檢閱資料故事，然後從下列選項中選擇：
+ **保留**：將產生的內容儲存到畫布。當您選擇此選項時，**建置案例**模式會關閉，而且您可以開始編輯資料案例。
+ **再試一次**：允許使用者編輯提示並產生新的資料故事。
+ **捨棄**：刪除產生的資料故事。

# 在 Amazon Quick Sight 中個人化資料案例
<a name="working-with-stories-personalize"></a>

您的 IAM Identity Center 執行個體中的使用者位置和任務相關資訊會用來產生與作者和讀者更相關的個人化資料案例。例如，當美國作者發出提示「撰寫業務策略，專注於如何提高我所在位置收入的計劃」時，資料故事敘述中會自動包含與美國相關的洞見。如果作者希望資料故事重點關注其他國家/地區，例如加拿大，他們可以在提示中指定這一點。

若要讓個人化運作，您必須在連線至快速帳戶的 IAM Identity Center 執行個體中為使用者新增國家/地區和職稱。如需更多資訊，請參閱 IAM Identity Center User Guide 中的 [Add users to your IAM Identity Center directory](https://docs.aws.amazon.com/singlesignon/latest/userguide/addusers.html)。

根據預設，IAM Identity Center 執行個體中的使用者資料會連線至您的應用程式環境。這表示，所有資料故事依預設都會個人化。您可以在 QuickSight 管理主控台的「帳戶設定」選單中，隨時[選擇退出使用個人化](https://docs.aws.amazon.com/quicksuite/latest/userguide/qs-q-manage-personalization)。

**注意**  
美國東部 （維吉尼亞北部） 和美國西部 （奧勒岡） AWS 區域目前提供資料故事中的個人化。

# 在 Amazon Quick Sight 中檢視產生的資料案例
<a name="working-with-stories-view"></a>

產生並保留資料故事之後，您可以在資料故事頁面存取該**資料故事**。若要檢視資料故事，請選擇您要檢視的資料故事，以開啟故事編輯器。

在建立和修改資料故事時，您可以預覽資料故事在讀者面前呈現的效果。若要預覽產生的資料故事，請選擇頁面頂端的**預覽**圖示。若要結束預覽，請選擇**返回編輯器**。

# 在 Amazon Quick Sight 中編輯產生的資料案例
<a name="working-with-stories-edit"></a>

建立並保留資料故事之後，您可以修改其內容以更符合您的需求。您可以格式化資料故事文字、新增影像、編輯視覺效果，以及新增區塊。

故事是由不同的*區塊*組成，這些區塊可作為容器，來容納要包含在資料故事中的文字、視覺效果和影像。每個區塊都可以從資料案例中的其他區塊進行無故格式化，類似於像素完美報告的區段。

若要格式化資料故事的文字，請使用頁面頂端的工具列。該工具列提供字型設定，讓您可以自訂字型類型、樣式、顏色、大小、間距、文字醒目顯示和對齊方式。您也可以使用工具列將資料欄新增至資料故事區塊。

使用下列其中一個選項，將視覺效果新增至資料故事。
+ 使用**視覺效果**窗格將視覺效果拖放到資料故事中。只有您在產生資料故事時選擇的視覺效果會顯示在**視覺效果**窗格中。

  您也可以在**視覺效果**窗格中選擇**新增** (\$1) 圖示，來新增可拖放至資料故事的新視覺效果。每個資料故事最多可包含 20 個視覺效果。
+ 選擇您要向其新增影像的資料故事區塊。當游標出現時，輸入正斜線 (`"/"`) 將影像或視覺效果插入該資料故事區塊。

若要編輯資料故事中的視覺效果，請選擇您要變更的視覺效果，然後選擇**屬性**圖示。在顯示的屬性窗格中，您可以執行下列動作：
+ 變更、隱藏或顯示視覺效果的標題。視覺效果標題預設為顯示。
+ 變更、隱藏或顯示視覺效果的副標題。視覺效果副標題預設為隱藏。
+ 隱藏或顯示資料標記。資料標籤預設為隱藏。
+ 隱藏、顯示或變更圖例的位置。圖例預設為隱藏。

若要將新區塊新增至資料故事，請選擇任意現有區塊底部的加號 (\$1) 圖示。然後選擇所需的版面配置選項。您也可以使用每個區塊頂端的**區塊選項** (三個點) 圖示移動、複製或刪除區塊。

若要變更區塊中項目的版面配置，您可以使用每個項目旁的六個點圖示將項目拖放到所需的任何位置。

# 將佈景主題和動畫新增至 Amazon Quick Sight 中的資料案例
<a name="working-with-stories-themes"></a>

您可以為產生的故事新增佈景主題和動畫。若要將佈景主題或動畫新增至資料故事，請選擇**故事樣式**圖示。

在顯示的**故事樣式**窗格中，您可以執行下列動作：
+ 在**佈景主題**欄位中選擇您認為最適合您資料故事的佈景主題。
+ 在**動畫**欄位中選擇動畫樣式和速度。對於動畫類型，您可以選擇**無**、**淡入**或**滑動**。預設動畫為**無**。針對**速度**欄位，選擇**慢**、**中等**或**快**。預設速度為**中等**。

# 在 Amazon Quick Sight 中分享資料案例
<a name="working-with-stories-share"></a>

依照以下程序來共用資料故事。

**共用資料故事**

1. 在您要共用的資料故事編輯器中，選擇右上角的**共用**圖示。

   或者，您可以選擇資料故事預覽頂端的**共用**圖示。

1. 在顯示的**共用資料故事**模態對話方塊中，輸入您要與其共用資料故事的使用者或群組。

1. （選用） 若要將已發佈資料案例的連結儲存至剪貼簿，請選擇**複製連結**。

1. 選擇**發佈和共用**。

如果您嘗試共用故事但收到無法共用故事的訊息，請聯絡儀表板擁有者，要求他們將**允許共用資料故事**開關切換為開啟。如需有關此切換開關的相關資訊，請參閱[教學課程：建立 Amazon Quick Sight 儀表板](example-create-a-dashboard.md)。

如果您嘗試分享資料案例並收到錯誤訊息，請聯絡儀表板擁有者或您的快速帳戶管理員尋求協助。

共用資料故事後，您與之共用故事的使用者會收到通知電子郵件，其中包含故事的連結。您可以從其快速帳戶的資料案例頁面存取**資料案例**。您也可以與可存取資料故事的使用者共用複製的資料故事連結。

您無法共用包含受限資料的資料故事。如果您嘗試共用包含受限資料的故事，則會出現錯誤訊息，其中會列出該故事中的所有受限視覺效果。如有需要，請先從資料故事中移除受限的視覺效果，再與使用者共用。

編輯已發布的資料故事後，請重新發布資料故事，以便將變更傳播至最終使用者。

# 在 Amazon Quick Sight 中使用案例
<a name="scenarios"></a>

具有 Admin Pro、Author Pro 或 Reader Pro 角色的快速使用者可以使用案例，以簡單的自然語言分析複雜的業務問題。

若要開始使用案例，Quick 使用者描述了他們想要解決的問題，並從 Quick Sight 或從其電腦新增相關資料以用於資料分析。或者，使用者可以讓 Amazon Q 搜尋可用於解決問題的所有相關資料。Amazon Q 會傳回一系列分析或提示，以深入分析資料。使用者也可以輸入自己的提示來建立自訂分析。收到新的提示後，Amazon Q 會將分析分解為幾個步驟並執行。輸出內容包括具體的資料洞見、互動式視覺效果，以及對調查結果可能對業務產生的影響的分析及後續行動建議。

案例可協助 Quick Pro 使用者執行下列任務：
+ 自動執行繁瑣、容易出錯且效率不佳的手動資料任務
+ 修改、擴展或重複利用過去的分析，以快速適應業務變更
+ 超越試算表的分析能力，更加深入地分析資料

使用下列主題在 Amazon Quick Sight 中建立和使用案例。

**Topics**
+ [

## Quick Sight 案例的考量
](#scenarios-considerations)
+ [

# 建立 Amazon Quick Sight 案例
](scenarios-create.md)
+ [

# 在 Amazon Quick Sight 案例中使用執行緒
](scenarios-threads.md)
+ [

# 在 Amazon Quick Sight 案例中使用資料
](scenarios-data.md)

## Quick Sight 案例的考量
<a name="scenarios-considerations"></a>

下列考量適用於 Amazon Quick Sight 案例。
+ Amazon Quick Sight 案例可供在 Amazon Quick 中具有 Admin Pro、Author Pro 或 Reader Pro 角色的使用者使用。如需將使用者更新為 Quick Pro 角色的詳細資訊，請參閱 [開始使用生成式 BI](generative-bi-get-started.md)。
+ 案例可在 中 AWS 區域 列出的特定 中使用[AWS 區域 支援 Quick 中的 Amazon Q](regions.md#regions-aqs)。

在您檢閱 Quick Sight 案例的考量之後，請參閱 [建立 Amazon Quick Sight 案例](scenarios-create.md) 以開始使用 Amazon Quick Sight 中的案例。

# 建立 Amazon Quick Sight 案例
<a name="scenarios-create"></a>

Amazon Quick Pro 使用者可以從 Quick Sight 儀表板或 Quick Sight 首頁上的案例區段建立**案例**。使用者可以視需要建立任意數量的情境。每個使用者一次最多可以有 3 個作用中的情境。每個 Quick Sight 帳戶一次最多支援 10 個作用中案例。使用下列程序在 Amazon Quick Sight 中建立案例。

**建立新情境**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 執行下列動作之一：

   1. 開啟任何儀表板，並尋找下列其中一項：
      + 如果可用，請選擇儀表板頂端的**在情境中分析此儀表板**。
      + 從儀表板上的視覺效果中，開啟下拉式選單，然後選擇**探索案例**。
      + 選擇**建置**，然後選擇**情境**。

   1. 在快速首頁上，選擇**案例**。在**案例**上，選擇**新案例**。

1. 新情境隨即出現。在文字方塊中描述您要解決的問題。在此處輸入的內容是情境中將發生的所有資料樞紐和操作的起點。您提供的描述視您的需求而定，既可以寬泛，也可以較為具體，例如「分析用量趨勢」或「根據上個月的資料計算用量的月度環比變化和同比變化」。

1. 新增您想要在情境中使用的資料。您可以從 Quick Sight 儀表板選擇資料，也可以從電腦上傳檔案。從儀表板中選擇資料時，系統會產生所選資料的預覽供您檢閱。如需在 Quick Sight 案例中預覽和編輯資料的詳細資訊，請參閱 [在 Amazon Quick Sight 案例中使用資料](scenarios-data.md)。

   下列限制適用於情境中使用的資料：
   + 您最多可以將 10 個資料來源新增至情境。
   + 一次最多可從儀表板選擇 20 個視覺效果。
   + 上傳的檔案必須為 `.xlsx` 或 `.csv` 格式，且不得超過 1 GB。
   + 資料來源最多可有 200 個資料欄。

   如果您未將資料新增至案例，Amazon Q 會自動搜尋您的 Quick Sight 儀表板，以尋找上一個步驟中與您的問題陳述式相關的資料。

1. 選擇**開始分析**。

當您在 Quick Sight 案例中開始分析時，Quick Sight 會準備您的資料以供分析並傳回新的*執行緒*。討論串包含產生的提示，可用來解決您在情境中描述的問題。討論串是基於回合製的關聯式對話，由使用者提示和 Amazon Q 回應組成，您可以使用它們深入探索特定情境。您可以使用討論串來編寫提示，提示可以假設 Amazon Q 記住了先前在討論串中討論的內容。您可以選擇一個提示來繼續該討論串，也可以選擇討論串上方的加號 (\$1) 來啟動新的討論串。新討論串使用的提示與您建立的第一個討論串不同。如需有關使用討論串的詳細資訊，請參閱[在 Amazon Quick Sight 案例中使用執行緒](scenarios-threads.md)。

# 在 Amazon Quick Sight 案例中使用執行緒
<a name="scenarios-threads"></a>

在 Quick Sight 中建立案例後，Amazon Q 產生的資料會以*執行緒*和*區塊*顯示。討論串是提示和回應的垂直鏈。區塊是單一的提示回應對。每個討論串最多可包含 15 個區塊，每個情境包含的多個討論串最多總計 50 個區塊。

建立新討論串時，Amazon Q 產生的提示清單會出現在新區塊內。選擇一個提示進行深入探索後，Amazon Q 會分析與所選提示相關的資料，並傳回可從分析中得出的所有資料調查結果、預測和結論的摘要。

若要繼續討論串並深入探索提示，請選擇區塊下方的加號 (**\$1**) 建立新的區塊。新區塊中包含新產生的提示清單，這些提示會考量上一個區塊中的問題清單。若要啟動對資料不同層面進行分析的新討論串，請選擇情境中任何區塊上方的加號 (**\$1**)，以建立新的討論串。

只要您要變更的區塊已完成載入，就可以從情境中收合、複製或刪除區塊。依照下列程序對情境區快進行變更。

**收合、複製或刪除區塊**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 從選項窗格中選擇**情境**，然後選擇您要變更的情境。

1. 導覽至您要變更的區塊，然後選擇區塊右上角的省略符號 (…)。

1. 執行下列動作之一：
   + 若要收合區塊，請選擇**收合**。若要展開已收合的區塊，請選擇區塊右上角的省略符號，然後選擇**展開**。
   + 若要複製區塊，請選擇**複製**。區塊會複製並放置在原始區塊旁的新討論串中。
   + 若要刪除區塊，請選擇**刪除**。

您也可以修改區塊的提示，以更符合您的使用案例。依照下列程序來修改區塊提示。

**修改區塊的提示**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 從選項窗格中選擇**情境**，然後選擇您要變更的情境。

1. 導覽至您要變更的區塊，然後選擇**修改區塊**。

1. 在顯示的**修改區塊**快顯視窗中輸入區塊的新描述，然後選擇**套用**。

修改提示後，Amazon Q 會分析資料並傳回新產生的分析，以反映對提示所做的變更。

# 在 Amazon Quick Sight 案例中使用資料
<a name="scenarios-data"></a>

當您在 Amazon Quick Sight 中建立案例時，您可以預覽和修改案例用來產生摘要的資料。使用下列各節來了解 Quick 使用者可以在案例中與資料互動的方式。

**Topics**
+ [

## 向情境中新增更多資料
](#scenarios-data-add-data)
+ [

## 在預覽中編輯資料
](#scenarios-data-edit-preview)
+ [

## 編輯快照中的資料
](#scenarios-data-edit-snapshot)

## 向情境中新增更多資料
<a name="scenarios-data-add-data"></a>

在 Amazon Quick Sight 中建立案例後，您可以隨時將更多資料新增至案例。使用下列程序將資料新增至 Amazon Quick Sight 案例。

**將資料新增至現有的 Amazon Quick Sight 案例**

1. 開啟 [Quick 主控台](https://quicksight.aws.amazon.com/)。

1. 從選項窗格中選擇**情境**，然後選擇您要向其中新增更多資料的情境。

1. 選擇動作列中的**資料來源**圖示開啟**資料**窗格。

1. 執行下列動作之一：

   1. 若要將 Quick Sight 資料新增至案例，請選擇**尋找資料**，然後選擇您要新增至案例的資料集或儀表板視覺效果。選取要新增至案例的所有 Quick Sight 資料之後，請選擇**新增**。

   1. 若要將檔案從您的電腦上傳至案例，請選擇**上傳檔案**。

   下列限制適用於新增至情境的資料：
   + 您最多可以將 10 個資料來源新增至情境。
   + 一次最多可從儀表板選擇 20 個視覺效果。
   + 上傳的檔案必須為 `.xlsx` 或 `.csv` 格式，且不得超過 1 GB。
   + 資料來源最多可有 200 個資料欄。

將新資料新增至情境後，Amazon Q 會將這些資料納入到所有的新分析中。

## 在預覽中編輯資料
<a name="scenarios-data-edit-preview"></a>

當您從 Quick Sight 儀表板選擇要在案例中使用的資料時，系統會先產生資料的預覽以供檢閱，然後再將其新增至分析。如有需要，可以對處於預覽狀態的儀表板資料做出下列變更：
+ **篩選條件**：如果您只想要分析一部分可用資料，或需要減少情境中包含的資料列數，您可以對資料套用篩選條件。
+ **排序**：如果可用的資料超過 100 萬個資料列，而且您想要優先保留特定資料欄中的值，您可以對資料進行排序以滿足您的需求。

## 編輯快照中的資料
<a name="scenarios-data-edit-snapshot"></a>

當您將儀表板或外部資料新增至案例時，Quick Sight 會建立要檢閱之資料來源的快照。若要查看情境中使用的資料的快照，請選擇動作列中的**資料來源**圖示。這會開啟**資料**窗格，然後您可以選擇要檢閱的資料快照。

您也可以在資料快照上執行下列動作：
+ 若要更新資料快照的標題，請選擇標題旁的鉛筆圖示，然後輸入快照的新標題。
+ 選擇**篩選**圖示來篩選情境中使用的資料。如果您希望情境僅使用新增至情境的一部分資料，則可使用此選項。
+ 選擇**排序**圖示來對情境中使用的資料進行排序。如果資料超過 100 萬個資料列，此選項可用於優先保留特定資料欄。
+ 選擇**欄位清單**圖示以選擇情境中包含的欄位。此選項可用來控制情境中使用的資料欄。

完成更新情境資料後，請關閉**資料**窗格。

# Amazon Quick Sight 故障診斷
<a name="troubleshooting"></a>

 使用此資訊可協助您診斷和修正使用 Amazon Quick Sight 時可能遇到的常見問題。

**注意**  
 需要更多協助嗎？ 您可以造訪 Amazon Quick Sight [使用者社群](https://answers.quicksight.aws.amazon.com/sn/index.html)或[AWS 論壇](https://forums.aws.amazon.com/)。另請參閱 [Quick Sight 資源庫](https://aws.amazon.com/quicksight/resource-library/)。

**Topics**
+ [

## 解決 Amazon Quick Sight 問題和錯誤訊息
](#quicksight-errors)
+ [

# 搭配 Amazon Quick Sight 使用 Amazon Athena 時的連線問題
](troubleshoot-athena.md)
+ [

# Amazon Quick Sight 的資料來源連線問題
](troubleshoot-connect-to-datasources.md)
+ [

# Quick Sight 的登入問題
](troubleshoot-login.md)
+ [

# Quick Sight 的視覺化問題
](visual-issues.md)

## 解決 Amazon Quick Sight 問題和錯誤訊息
<a name="quicksight-errors"></a>

如果您遇到困難或收到錯誤訊息，您可以透過幾種方式來解決問題。以下是一些可能可以帶來幫助的資源：
+ 針對資料集擷取 (匯入資料) 期間發生錯誤，請參閱 [SPICE 擷取錯誤代碼](errors-spice-ingestion.md)。
+ 針對技術使用者問題，請前往[使用者社群](https://answers.quicksight.aws.amazon.com/sn/index.html)。
+ 針對管理員問題，請前往 [AWS 論壇](https://forums.aws.amazon.com/)。
+ 如果您需要更多自訂協助，請聯絡 AWS Support。若要在您登入 時執行此操作 AWS 帳戶，請選擇右上角的**支援**，然後選擇**支援中心**。

# 搭配 Amazon Quick Sight 使用 Amazon Athena 時的連線問題
<a name="troubleshoot-athena"></a>

您可以在下面找到有關將 Amazon Athena 與 Amazon Quick Sight 搭配使用時可能遇到問題的疑難排解資訊。

在嘗試為 Athena 進行其他任何疑難排解之前，請確定您可以連線至 Athena。如需 Athena 連線問題疑難排解的資訊，請參閱 [我無法連接到 Amazon Athena](troubleshoot-connect-athena.md)。

如果您可以連線但有其他問題，在 Athena 主控台 ([https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home)：//) 中執行查詢，再將查詢新增至 Amazon Quick Sight 會很有用。如需其他疑難排解資訊，請參閱《Athena 使用指南》**中的[疑難排解](https://docs.aws.amazon.com/athena/latest/ug/troubleshooting.html)。

**Topics**
+ [

# 搭配 Amazon Quick Sight 使用 Athena 時找不到資料欄
](troubleshoot-athena-column-not-found.md)
+ [

# 搭配 Amazon Quick Sight 使用 Athena 時的資料無效
](troubleshoot-athena-invalid-data.md)
+ [

# 搭配 Amazon Quick Sight 使用 Athena 時的查詢逾時
](troubleshoot-athena-query-timeout.md)
+ [

# 搭配 Amazon Quick Sight 使用 Athena 時，預備儲存貯體不再存在
](troubleshoot-athena-missing-bucket.md)
+ [

# 在 Amazon Quick Sight 中使用 AWS Glue 搭配 Athena 時的資料表不相容
](troubleshoot-athena-glue-table-not-upgraded.md)
+ [

# 搭配 Amazon Quick Sight 使用 Athena 時找不到資料表
](troubleshoot-athena-table-not-found.md)
+ [

# 搭配 Quick Sight 使用 Athena 時的工作群組和輸出錯誤
](troubleshoot-athena-workgroup.md)

# 搭配 Amazon Quick Sight 使用 Athena 時找不到資料欄
<a name="troubleshoot-athena-column-not-found"></a>

當 Athena 資料來源遺漏分析中的資料欄，您會收到 "`column not found`" 錯誤。

在 Amazon Quick Sight 中，開啟您的分析。在**視覺化**索引標籤上，選擇**選擇資料集**，**編輯分析資料集**。

在**此分析中的資料集**畫面中，選擇資料集附近的**編輯**以重新整理資料集。Amazon Quick Sight 會快取結構描述兩分鐘。因此，可能需要兩分鐘的時間，最新的變更才會顯示。

若要調查一開始為何遺失資料欄，您可以轉到 Athena 主控台 ([https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home))，並檢查查詢歷史記錄，以尋找編輯了資料表的查詢。

如果是在您在預覽中編輯自訂 SQL 查詢時發生此錯誤，請驗證查詢中的資料欄名稱，並檢查任何其他語法錯誤。例如，檢查資料欄名稱未含括在單引號中，它已為字串保留。

如果問題仍然存在，則請確認您的資料表、資料欄和查詢符合 Athena 要求。如需詳細資訊，請參閱《Athena 使用手冊》**中的[資料表、資料庫和資料欄的名稱](https://docs.aws.amazon.com/athena/latest/ug/tables-databases-columns-names.html)和[疑難排解](https://docs.aws.amazon.com/athena/latest/ug/troubleshooting.html)。

# 搭配 Amazon Quick Sight 使用 Athena 時的資料無效
<a name="troubleshoot-athena-invalid-data"></a>

當您在計算欄位中使用任何運算子或函數時，可能會發生資料無效的錯誤。若要解決此問題，請驗證資料表中的資料與您向函數提供的格式一致。

例如，假設您正在使用函數 `parseDate(expression, [‘format’], [‘time_zone’])` 作為 **parseDate(date\$1column, ‘MM/dd/yyyy’)**。在這種情況下，`date_column` 中的所有值都必須符合 `'MM/dd/yyyy'` 格式 (`’05/12/2016’`)。非採用此格式 (**‘2016/12/05’**) 的任何值可能造成錯誤。

# 搭配 Amazon Quick Sight 使用 Athena 時的查詢逾時
<a name="troubleshoot-athena-query-timeout"></a>

如果您的查詢逾時，您可以嘗試這些選項來解決您的問題。

如果在分析時產生失敗，請記住，產生任何視覺效果的 Amazon Quick Sight 逾時為兩分鐘。如果使用自訂 SQL 查詢，則可以簡化您的查詢，以將執行時間最佳化。

如果處於直接查詢模式 (而非使用 SPICE)，您可以嘗試將您的資料匯入 SPICE。不過，如果您的查詢超過 Athena 30 分鐘的逾時，將資料匯入 SPICE 時，您可能會遇到另一個逾時。如需 Athena 限制的最新資訊，請參閱 *AWS 一般參考* 中的 [Amazon Athena 限制](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#amazon-athena-limits)。

# 搭配 Amazon Quick Sight 使用 Athena 時，預備儲存貯體不再存在
<a name="troubleshoot-athena-missing-bucket"></a>

使用本小節來協助解決此錯誤：**此查詢結果的暫存儲存貯體已不存在於基礎資料來源**。

 當您使用 Athena 建立資料集時，Amazon Quick Sight 會建立 Amazon S3 儲存貯體。依預設，此儲存貯體的名稱會類似「`aws-athena-query-results-<REGION>-<ACCOUNTID>`」。如果您移除此儲存貯體，則您的下一個 Athena 查詢可能會失敗，並出現錯誤，說明暫存儲存貯體已不存在。

 若要修正此錯誤，請在正確的 AWS 區域中以相同名稱建立新的儲存貯體。

# 在 Amazon Quick Sight 中使用 AWS Glue 搭配 Athena 時的資料表不相容
<a name="troubleshoot-athena-glue-table-not-upgraded"></a>

如果您在將 Athena 中的 AWS Glue 資料表與 Amazon Quick Sight 搭配使用時發生錯誤，可能是因為您缺少一些中繼資料。請依照下列步驟，了解您的資料表是否沒有 Amazon Quick Sight 所需的`TableType`屬性，以便 Athena 連接器運作。通常，這些資料表的中繼資料不會遷移至 AWS Glue Data Catalog。如需詳細資訊，請參閱**《 AWS Glue 開發人員指南》中的[逐步升級到 AWS Glue 資料目錄](https://docs.aws.amazon.com/athena/latest/ug/glue-upgrade.html)。

如果您目前不想遷移至 AWS Glue Data Catalog，您有兩個選項。您可以透過 AWS Glue 管理主控台重新建立每個 AWS Glue 資料表。或者，您可以使用下列程序中列出的 AWS CLI 指令碼來識別和更新缺少`TableType`屬性的資料表。

如果您偏好使用 CLI 來執行此操作，請使用下列程序來協助您設計您的指令碼。

**若要使用 CLI 設計指令碼**

1. 使用 CLI 來了解哪些 AWS Glue 資料表沒有`TableType`屬性。

   ```
   aws glue get-tables --database-name <your_datebase_name>;
   ```

   例如，您可以在 CLI 中執行下列命令。

   ```
   aws glue get-table --database-name "test_database" --name "table_missing_table_type"
   ```

   以下是輸出的範例。您可以看到表格 `"table_missing_table_type"` 沒有宣告 `TableType` 屬性。

   ```
   {
   		"TableList": [
   			{
   				"Retention": 0,
   				"UpdateTime": 1522368588.0,
   				"PartitionKeys": [
   					{
   						"Name": "year",
   						"Type": "string"
   					},
   					{
   						"Name": "month",
   						"Type": "string"
   					},
   					{
   						"Name": "day",
   						"Type": "string"
   					}
   				],
   				"LastAccessTime": 1513804142.0,
   				"Owner": "owner",
   				"Name": "table_missing_table_type",
   				"Parameters": {
   					"delimiter": ",",
   					"compressionType": "none",
   					"skip.header.line.count": "1",
   					"sizeKey": "75",
   					"averageRecordSize": "7",
   					"classification": "csv",
   					"objectCount": "1",
   					"typeOfData": "file",
   					"CrawlerSchemaDeserializerVersion": "1.0",
   					"CrawlerSchemaSerializerVersion": "1.0",
   					"UPDATED_BY_CRAWLER": "crawl_date_table",
   					"recordCount": "9",
   					"columnsOrdered": "true"
   				},
   				"StorageDescriptor": {
   					"OutputFormat": "org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat",
   					"SortColumns": [],
   					"StoredAsSubDirectories": false,
   					"Columns": [
   						{
   							"Name": "col1",
   							"Type": "string"
   						},
   						{
   							"Name": "col2",
   							"Type": "bigint"
   						}
   					],
   					"Location": "s3://myAthenatest/test_dataset/",
   					"NumberOfBuckets": -1,
   					"Parameters": {
   						"delimiter": ",",
   						"compressionType": "none",
   						"skip.header.line.count": "1",
   						"columnsOrdered": "true",
   						"sizeKey": "75",
   						"averageRecordSize": "7",
   						"classification": "csv",
   						"objectCount": "1",
   						"typeOfData": "file",
   						"CrawlerSchemaDeserializerVersion": "1.0",
   						"CrawlerSchemaSerializerVersion": "1.0",
   						"UPDATED_BY_CRAWLER": "crawl_date_table",
   						"recordCount": "9"
   					},
   					"Compressed": false,
   					"BucketColumns": [],
   					"InputFormat": "org.apache.hadoop.mapred.TextInputFormat",
   					"SerdeInfo": {
   						"Parameters": {
   						"field.delim": ","
   						},
   						"SerializationLibrary": "org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe"
   					}
   				}
   			}
   		]
   	}
   ```

1. 在您的編輯器中編輯表格定義，將 `"TableType": "EXTERNAL_TABLE"` 新增到表格定義，如以下範例所示。

   ```
   {
   	"Table": {
   		"Retention": 0,
   		"TableType": "EXTERNAL_TABLE",
   		"PartitionKeys": [
   			{
   				"Name": "year",
   				"Type": "string"
   			},
   			{
   				"Name": "month",
   				"Type": "string"
   			},
   			{
   				"Name": "day",
   				"Type": "string"
   			}
   		],
   		"UpdateTime": 1522368588.0,
   		"Name": "table_missing_table_type",
   		"StorageDescriptor": {
   			"BucketColumns": [],
   			"SortColumns": [],
   			"StoredAsSubDirectories": false,
   			"OutputFormat": "org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat",
   			"SerdeInfo": {
   				"SerializationLibrary": "org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe",
   				"Parameters": {
   					"field.delim": ","
   				}
   			},
   			"Parameters": {
   				"classification": "csv",
   				"CrawlerSchemaSerializerVersion": "1.0",
   				"UPDATED_BY_CRAWLER": "crawl_date_table",
   				"columnsOrdered": "true",
   				"averageRecordSize": "7",
   				"objectCount": "1",
   				"sizeKey": "75",
   				"delimiter": ",",
   				"compressionType": "none",
   				"recordCount": "9",
   				"CrawlerSchemaDeserializerVersion": "1.0",
   				"typeOfData": "file",
   				"skip.header.line.count": "1"
   			},
   			"Columns": [
   				{
   					"Name": "col1",
   					"Type": "string"
   				},
   				{
   					"Name": "col2",
   					"Type": "bigint"
   				}
   			],
   			"Compressed": false,
   			"InputFormat": "org.apache.hadoop.mapred.TextInputFormat",
   			"NumberOfBuckets": -1,
   			"Location": "s3://myAthenatest/test_date_part/"
   		},
   		"Owner": "owner",
   		"Parameters": {
   			"classification": "csv",
   			"CrawlerSchemaSerializerVersion": "1.0",
   			"UPDATED_BY_CRAWLER": "crawl_date_table",
   			"columnsOrdered": "true",
   			"averageRecordSize": "7",
   			"objectCount": "1",
   			"sizeKey": "75",
   			"delimiter": ",",
   			"compressionType": "none",
   			"recordCount": "9",
   			"CrawlerSchemaDeserializerVersion": "1.0",
   			"typeOfData": "file",
   			"skip.header.line.count": "1"
   		},
   		"LastAccessTime": 1513804142.0
   	}
   	}
   ```

1. 您可以調整以下指令碼更新表格輸入，以便包含 `TableType` 屬性。

   ```
   aws glue update-table --database-name <your_datebase_name> --table-input <updated_table_input>
   ```

   下列顯示一個範例。

   ```
   aws glue update-table --database-name test_database --table-input '
   	{
   			"Retention": 0,
   			"TableType": "EXTERNAL_TABLE",
   			"PartitionKeys": [
   				{
   					"Name": "year",
   					"Type": "string"
   				},
   				{
   					"Name": "month",
   					"Type": "string"
   				},
   				{
   					"Name": "day",
   					"Type": "string"
   				}
   			],
   			"Name": "table_missing_table_type",
   			"StorageDescriptor": {
   				"BucketColumns": [],
   				"SortColumns": [],
   				"StoredAsSubDirectories": false,
   				"OutputFormat": "org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat",
   				"SerdeInfo": {
   					"SerializationLibrary": "org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe",
   					"Parameters": {
   						"field.delim": ","
   					}
   				},
   				"Parameters": {
   					"classification": "csv",
   					"CrawlerSchemaSerializerVersion": "1.0",
   					"UPDATED_BY_CRAWLER": "crawl_date_table",
   					"columnsOrdered": "true",
   					"averageRecordSize": "7",
   					"objectCount": "1",
   					"sizeKey": "75",
   					"delimiter": ",",
   					"compressionType": "none",
   					"recordCount": "9",
   					"CrawlerSchemaDeserializerVersion": "1.0",
   					"typeOfData": "file",
   					"skip.header.line.count": "1"
   				},
   				"Columns": [
   					{
   						"Name": "col1",
   						"Type": "string"
   					},
   					{
   						"Name": "col2",
   						"Type": "bigint"
   					}
   				],
   				"Compressed": false,
   				"InputFormat": "org.apache.hadoop.mapred.TextInputFormat",
   				"NumberOfBuckets": -1,
   				"Location": "s3://myAthenatest/test_date_part/"
   			},
   			"Owner": "owner",
   			"Parameters": {
   				"classification": "csv",
   				"CrawlerSchemaSerializerVersion": "1.0",
   				"UPDATED_BY_CRAWLER": "crawl_date_table",
   				"columnsOrdered": "true",
   				"averageRecordSize": "7",
   				"objectCount": "1",
   				"sizeKey": "75",
   				"delimiter": ",",
   				"compressionType": "none",
   				"recordCount": "9",
   				"CrawlerSchemaDeserializerVersion": "1.0",
   				"typeOfData": "file",
   				"skip.header.line.count": "1"
   			},
   			"LastAccessTime": 1513804142.0
   		}'
   ```

# 搭配 Amazon Quick Sight 使用 Athena 時找不到資料表
<a name="troubleshoot-athena-table-not-found"></a>

當 Athena 資料來源遺漏分析中的資料表，您會收到 "`table not found`" 錯誤。

在 Athena 主控台 ([https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home)) 中，在對應的結構描述下，檢查您的資料表。您可以在 Athena 中重新建立資料表，然後在該資料表的 Amazon Quick Sight 中建立新的資料集。若要調查一開始為何遺失資料表，您可以使用 Athena 主控台來檢查查詢歷史記錄。這可協助您找到捨棄該資料表的查詢。

如果是在您在預覽中編輯自訂 SQL 查詢時發生此錯誤，請驗證查詢中的資料表名稱，並檢查任何其他語法錯誤。Amazon Quick Sight 無法從查詢推斷結構描述。必須在查詢中指定結構描述。

例如，下列陳述式可運作。

```
select from my_schema.my_table
```

下列陳述式會失敗，因為它遺漏結構描述。

```
select from my_table
```

如果問題仍然存在，則請確認您的資料表、資料欄和查詢符合 Athena 要求。如需詳細資訊，請參閱《Athena 使用手冊》**中的[資料表、資料庫和資料欄的名稱](https://docs.aws.amazon.com/athena/latest/ug/tables-databases-columns-names.html)和[疑難排解](https://docs.aws.amazon.com/athena/latest/ug/troubleshooting.html)。

# 搭配 Quick Sight 使用 Athena 時的工作群組和輸出錯誤
<a name="troubleshoot-athena-workgroup"></a>

若要驗證工作群組是否設定正確，請檢查下列設定：
+ **與資料來源相關聯的 Athena 工作群組必須存在。**

  若要修正此問題，您可以返回 Athena 資料來源設定，然後選擇不同的工作群組。如需詳細資訊，請參閱《Athena 使用者指南》**中的[設定工作群組](https://docs.aws.amazon.com/athena/latest/ug/workgroups-procedure.html)。

  另一個解決方案是讓 AWS 帳戶 管理員在 Athena 主控台中重新建立工作群組。
+ **與資料來源相關聯的 Athena 工作群組必須啟用。**

   AWS 帳戶 管理員需要在 Athena 主控台中啟用工作群組。使用以下直接連結開啟 Athena 主控台：[https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home)。接著，在**工作群組**面板中選擇適當的工作群組並檢視其設定。選擇**啟用工作群組**。
+ **確保您能存取與 Athena 工作群組相關聯的 Amazon S3 輸出位置。**

  若要授予 Amazon Quick Sight 存取 S3 輸出位置的許可，Amazon Quick Sight 管理員可以在**管理 QuickSight **畫面中編輯**安全與許可**。
+ **Athena 工作群組必須具有相關聯的 S3 輸出位置。**

   AWS 帳戶 管理員需要在 Athena 主控台中將 S3 儲存貯體與工作群組建立關聯。使用以下直接連結開啟 Athena 主控台：[https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home)。接著，在**工作群組**面板中選擇適當的工作群組並檢視其設定。設定**查詢結果位置**。

# Amazon Quick Sight 的資料來源連線問題
<a name="troubleshoot-connect-to-datasources"></a>

使用以下章節來協助您對與資料來源的連線進行疑難排解。繼續之前，請驗證資料庫目前可用。此外，請驗證您有正確的連線資訊和有效的登入資料。

**Topics**
+ [

# 我無法連接，不過我的資料來源連線選項 (SSL) 看起來是正確的
](troubleshoot-connect-SSL.md)
+ [

# 我無法連接到 Amazon Athena
](troubleshoot-connect-athena.md)
+ [

# 我無法連接到 Amazon S3
](troubleshoot-connect-S3.md)
+ [

# 我無法從現有的 Adobe Analytics 資料來源建立或重新整理資料集
](troubleshoot-connect-adobe-analytics.md)
+ [

# 我需要驗證與我的資料來源的連線，或變更資料來源設定
](troubleshoot-connect-validate.md)
+ [

# 我無法連接到 MySQL (SSL 和授權的問題)
](troubleshoot-connect-mysql.md)
+ [

# 我無法連接到 RDS
](troubleshoot-connect-RDS.md)

# 我無法連接，不過我的資料來源連線選項 (SSL) 看起來是正確的
<a name="troubleshoot-connect-SSL"></a>

Secure Sockets Layer (SSL) 設定不正確時可能發生連線問題。症狀可包含下列項目：
+ 您可以以其他方式或從其他位置連接到您的資料庫，在這種情況下卻無法。
+ 您可以連接到類似的資料庫，但無法連接到這個資料庫。

在繼續之前，請先排除以下各種情況：
+ 許可問題
+ 可用問題
+ 過期或無效的憑證
+ 自我簽署的憑證
+ 憑證鏈順序錯誤
+ 連接埠未啟用
+ 防火牆封鎖 IP 地址
+ Web Sockets 遭到封鎖
+ 虛擬私有雲端 (VPC) 或安全群組設定不正確。

為了協助找到 SSL 的問題，您可以使用線上 SSL 檢查或工具 (如 OpenSSL)。

 以下步驟將逐步說明當 SSL 可能是問題時，對連線進行故障診斷的資訊。此範例中的管理員已安裝 OpenSSL。

**Example**  

1. 使用者發現連接到資料庫的問題。使用者驗證其可以連接到另一個 AWS 區域的不同資料庫。其檢查其他版本的相同資料庫，並且可以輕鬆地連接。

1. 管理員檢閱問題，並決定驗證憑證能正確運作。管理員在線上搜尋有關使用 OpenSSL 來進行疑難排解或偵錯 SSL 連線的文章。

1. 管理員使用 OpenSSL 在終端機驗證 SSL 組態。

   ```
   echo quit
   openssl s_client –connect <host>:port
   ```

   結果顯示憑證沒有作用。

   ```
   ...
   ...
   ...
   CONNECTED(00000003)
   012345678901234:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:s23_clnt.c:782:
   ---
   no peer certificate available
   ---
   No client certificate CA names sent
   ---
   SSL handshake has read 7 bytes and written 278 bytes
   ---
   New, (NONE), Cipher is (NONE)
   Secure Renegotiation IS NOT supported
   SSL-Session:
       Protocol  : TLSv1.2
       Cipher    : 0000
       Session-ID:
       Session-ID-ctx:
       Master-Key:
       Key-Arg   : None
       PSK identity: None
       PSK identity hint: None
       Start Time: 1497569068
       Timeout   : 300 (sec)
       Verify return code: 0 (ok)
   ---
   ```

1. 管理員透過在使用者的資料庫伺服器上安裝 SSL 憑證來更正問題。

如需此範例中解決方案的詳細資訊，請參閱**《Amazon RDS 使用者指南》中的[使用 SSL 加密 DB 執行個體的連線](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html)。

# 我無法連接到 Amazon Athena
<a name="troubleshoot-connect-athena"></a>


|  | 
| --- |
|    目標對象：Amazon Quick 管理員  | 

使用此章節來協助您對 Athena 的連線進行疑難排解。

如果您無法連線到 Amazon Athena，執行查詢時可能會收到許可不足錯誤，表示未設定許可。若要確認您可以將 Amazon Quick Sight 連線至 Athena，請檢查下列設定：
+ AWS Amazon Quick Sight 內的資源許可
+ AWS Identity and Access Management (IAM) 政策
+ Amazon S3 位置
+ 查詢結果位置
+ AWS KMS 金鑰政策 （僅適用於加密的資料集）

如需詳細資訊，請參閱下列資訊。如需 Athena 其他問題疑難排解的資訊，請參閱 [搭配 Amazon Quick Sight 使用 Amazon Athena 時的連線問題](troubleshoot-athena.md)。

## 請確定您已授權 Amazon Quick Sight 使用 Athena
<a name="troubleshoot-connect-athena-authorizing"></a>


|  | 
| --- |
|    目標對象：Amazon Quick 管理員  | 

請使用下列程序，確認您已成功授權 Amazon Quick Sight 使用 Athena。 AWS 資源的許可適用於所有 Amazon Quick Sight 使用者。

若要執行此動作，您必須是 Amazon Quick Sight 管理員。若要檢查您是否具有存取權，請確認您在右上角的設定檔開啟選單時看到**管理 QuickSight** 選項。

**授權 Amazon Quick Sight 存取 Athena**

1. 選擇您的描述檔名稱 (右上角)。選擇**管理 Quick Sight**，然後向下捲動至**自訂許可**區段。

1. 選擇**AWS 資源**，然後選擇**新增或移除**。

1. 在清單中尋找 Athena。清除 Athena 旁的方塊，然後再次選取以啟用 Athena。

   然後選擇 **Connect both(同時連線)**。

1. 選擇您要從 Amazon Quick Sight 存取的儲存貯體。

   您在此處存取的 S3 儲存貯體設定與您透過從 清單中選擇 Amazon S3 存取的設定相同 AWS 服務。請小心不要意外停用其他人使用的儲存貯體。

1. 選擇**刪除**確認您選取的項目。若要退出而不儲存，請選擇**取消**。

   

1. 選擇**更新**以儲存 Amazon Quick Sight 存取的新設定 AWS 服務。或者，選擇**取消**離開，但不建立任何變更。

1.  AWS 區域 完成後，請確定您使用的是正確的 。

   如果您必須在此程序的第一個步驟 AWS 區域 中變更 ，請將其變更回 AWS 區域 您之前使用的 。

## 確保您的 IAM 政策授予正確的許可
<a name="troubleshoot-connect-athena-perms"></a>


|  | 
| --- |
|    目標對象：系統管理員  | 

您的 AWS Identity and Access Management (IAM) 政策必須授予特定動作的許可。您的 IAM 使用者或角色必須能夠對 Athena 用於您的查詢的 S3 儲存貯體的輸入和輸出同時進行讀取和寫入。

如果資料集已加密，IAM 使用者必須是指定金鑰政策中的 AWS KMS 金鑰使用者。

**驗證您的 IAM 政策具有許可能夠對您的查詢使用 S3 儲存貯體**

1. 前往 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 開啟 IAM 主控台。

1. 找到您使用的 IAM 使用者或角色。選擇使用者或角色名稱來查看相關聯的政策。

1. 驗證政策具有正確的許可。選擇您要驗證的政策，然後選擇**編輯政策**。使用視覺化編輯器 (預設會開啟)。如果您開啟的是 JSON 編輯器，請選擇 **Visual editor (視覺化編輯器)** 標籤。

1. 選擇清單中的 S3 項目來查看它的內容。政策需要對清單授予的許可為讀取和寫入。如果 S3 不在清單中，或是它沒有正確的許可，則可以在這裡加以新增。

如需使用 Quick Sight 的 IAM 政策範例，請參閱 [Quick 的 IAM 政策範例](iam-policy-examples.md)。

## 確保 IAM 使用者對您的 S3 位置具有讀/寫存取權限
<a name="troubleshoot-connect-athena-read-write-access"></a>


|  | 
| --- |
|    目標對象：Amazon Quick 管理員  | 

若要從 Quick Sight 存取 Athena 資料，請先確定 Athena 及其 S3 位置已在**管理 QuickSight** 畫面中獲得授權。如需詳細資訊，請參閱[請確定您已授權 Amazon Quick Sight 使用 Athena](#troubleshoot-connect-athena-authorizing)。

接下來，請確認相關 IAM 許可。您的 Athena 連線的 IAM 使用者需要結果在 S3 中位置的讀取/寫入存取權限。首先驗證 IAM 使用者具有[允許存取 Athena](https://docs.aws.amazon.com/athena/latest/ug/setting-up.html#attach-managed-policies-for-using-ate) 的附加政策，例如 `AmazonAthenaFullAccess`。讓 Athena 使用所需名稱建立儲存貯體，然後將它新增至 QuickSight 可以存取的儲存貯體清單。如果您變更結果儲存貯體 (`aws-athena-query-results-*`) 的預設位置，請確定 IAM 使用者具有讀取和寫入新位置的許可。

確認您未在 S3 URL 中包含 AWS 區域 程式碼。例如，使用 `s3://awsexamplebucket/path` 而非 `s3://us-east-1.amazonaws.com/awsexamplebucket/path`。使用錯誤的 S3 URL 會造成 `Access Denied` 錯誤。

同時確認儲存貯體政策和物件存取控制清單 (ACL) 是否[允許 IAM 使用者存取儲存貯體中的物件](https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html)。如果 IAM 使用者位於不同的 AWS 帳戶，請參閱《*Amazon Athena 使用者指南*》中的[跨帳戶存取](https://docs.aws.amazon.com/athena/latest/ug/cross-account-permissions.html)。

如果資料集已加密，請確認 IAM 使用者是指定金鑰政策中的 AWS KMS 金鑰使用者。您可以在 AWS KMS 主控台中執行此操作，網址為 https：//[https://console.aws.amazon.com/kms](https://console.aws.amazon.com/kms)。

**若要設定對您的 Athena 查詢結果位置的許可**

1. 前往 [https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home) 開啟 Athena 主控台。

1. 請確認您已選取要使用的工作群組：
   + 檢查頂部的**工作群組**選項。它具有格式**工作群組：*group-name***。如果群組名稱是您想要使用的，請跳到下一個步驟。
   + 若要選擇其他工作群組，請選擇頂部的**工作群組**。選擇您想要使用的工作群組，然後選擇**切換工作群組**。

1. 選擇右上角的**設定**。

   (不常見) 如果出現找不到您的工作群組的錯誤，請使用下列步驟進行修正：

   1.  暫時忽略錯誤訊息，在**設定**頁面上找到**工作群組：*group-name***。您的工作群組名稱是超連結。將之開啟。

   1. 在**工作群組：*<groupname>*** 頁面上，選擇左側的**編輯工作群組**。現在關閉錯誤訊息。

   1. 在**查詢結果位置**附近，透過選擇具有檔案資料夾圖示的**選取**按鈕，以開啟 S3 位置選取器。

   1. 選擇 Athena S3 位置名稱末尾的小箭頭。名稱的開頭必須為 `aws-athena-query-results`。

   1. (選用) 選取 **Encrypt results stored in S3** 核取方塊來加密查詢結果。

   1. 選擇**儲存**以確認選擇。

   1. 如果錯誤沒有再次出現，請返回**設定**。

      有時，錯誤可能會再次出現。若如此，請遵循以下步驟：

      1. 選擇工作群組，然後選擇**檢視詳細資訊**。

      1. (選用) 若要保留您的設定，請以筆記記下工作群組組態或擷取螢幕畫面。

      1. 選擇**建立工作群組**。

      1. 將工作群組取代為新工作群組。設定正確的 S3 位置和加密選項。請記下 S3 位置，因為稍後會需要它。

      1. 選擇**儲存**以繼續。

      1. 當您不再需要原始工作群組時，請將其停用。請務必仔細閱讀出現的警告，因為它會告訴您如果您選擇禁用它，將會失去什麼。

1. 如果在上一個步驟中進行疑難排解並未取得此項，請選擇右上角的**設定**，並獲取顯示為**查詢結果位置**的 S3 位置值。

1. 如果**加密查詢結果**已啟用，請檢查是否它使用 SSE-KMS 或 CSE-KMS。記下該金鑰。

1. 在 [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/) 開啟 S3 主控台，開啟正確的儲存貯體，然後選擇**許可**索引標籤。

1. 檢視**儲存貯體政策**，檢查您的 IAM 使用者是否具有存取權。

   如果您使用 ACL 管理存取，請檢視**存取控制清單**確定存取控制清單 (ACL) 已設定。

1. 如果您的資料集已加密 （在工作群組設定中選取**加密查詢結果**)，請確定 IAM 使用者或角色已新增為該金鑰政策中的 AWS KMS 金鑰使用者。您可以在 https：//[https://console.aws.amazon.com/kms](https://console.aws.amazon.com/kms) 存取 AWS KMS 設定。

**若要授予 Athena 使用的 S3 儲存貯體的存取權**

1. 開啟位於 [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/) 的 Amazon S3 主控台。

1. 在**查詢結果位置**中，選擇 Athena 使用的 S3 儲存貯體。

1. 在 **Permissions (許可)** 索引標籤上，驗證許可。

如需詳細資訊，請參閱 AWS 支援文章 [當我執行 Athena 查詢時，會收到「存取遭拒」錯誤](https://aws.amazon.com/premiumsupport/knowledge-center/access-denied-athena/)。

# 我無法連接到 Amazon S3
<a name="troubleshoot-connect-S3"></a>

若要成功連接到 Amazon S3，確保您設定驗證，並在您嘗試存取的儲存貯體內建立有效的資訊清單檔案。您也需要確定清單檔案描述的檔案可供使用。

若要驗證身分驗證，請確定您已授權 Amazon Quick Sight 存取 S3 帳戶。您作為使用者獲得授權還不夠。Amazon Quick Sight 必須單獨授權。

**授權 Amazon Quick Sight 存取您的 Amazon S3 儲存貯體**

1. 在右上角的 AWS 區域 清單中，選擇美國東部 （維吉尼亞北部） 區域。當您編輯帳戶許可時，會 AWS 區域 暫時使用此功能。

1. 在 Amazon Quick Sight 中，選擇您的設定檔名稱 （右上角）。選擇**管理 Quick Sight**，然後向下捲動至**自訂許可**區段。

1. 選擇**AWS 資源**，然後選擇**新增或移除**。

1. 在清單中找出 Amazon S3。選擇以下動作之一，開啟讓您選擇 S3 儲存貯體的畫面。
   + 如果已清除核取方塊，請選中 Amazon S3 旁邊的核取方塊。
   + 如果已選中核取方塊，請選擇**詳細資訊**，然後選擇**選取 S3 儲存貯體**。

1. 選擇您要從 Amazon Quick Sight 存取的儲存貯體。然後選擇**選取**。

1. 選擇**更新**。

1. 如果您在此程序的第一個步驟 AWS 區域 變更 ，請將其變更回 AWS 區域 您想要使用的 。

我們強烈建議您確定您的資訊清單檔案有效。如果 Amazon Quick Sight 無法剖析您的檔案，它會為您提供錯誤訊息。這可能是類似於 "We can't parse the manifest file as valid JSON" 或 "We can't connect to the S3 bucket" 的訊息。

**驗證您的資訊清單檔案**

1. 開啟您的資訊清單檔案。在 [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/) 上，您可以直接從 Amazon S3 主控台執行此動作。轉到您的資訊清單檔案，然後選擇**開啟**。

1. 確定在資訊清單檔案內提供的 URI 或 URL 指出您想要連接的檔案。

1. 如果您使用資訊清單檔案的連結，而非上傳檔案，請確定您的資訊清單檔案格式正確。該連結在此字 `.json` 後不應有任何額外的字詞。透過檢視 S3 主控台上詳細資訊中其 **Link (連結)** 值，即可以取得 S3 檔案的正確連結。

1. 使用 JSON 驗證程式 (如 [https://jsonlint.com](https://jsonlint.com)) 來確定資訊清單檔案的內容有效。

1. 驗證您的儲存貯體或檔案上的許可。在 [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/) 中，導覽至您的 Amazon S3 儲存貯體，選擇**許可**索引標籤，並新增適當的許可。在儲存貯體或檔案上確定許可處於適當的層級。

1. 如果您使用的是 `s3://` 通訊協定，而不是 `https://`，請確定您直接參考您的儲存貯體。例如，使用 *s3://awsexamplebucket/myfile.csv* 而非 *s3://s3-us-west-2.amazonaws.com/awsexamplebucket/myfile.csv*。同時使用 `s3://` 和 `s3-us-west-2.amazonaws.com` 指定 Amazon S3 會造成錯誤。

   如需資訊清單檔案和連接至 Amazon S3 的詳細資訊，請參閱 [支援的 Amazon S3 清單檔案格式](supported-manifest-file-format.md)。

此外，確認您的 Amazon S3 資料集已根據 [使用 Amazon S3 檔案建立資料集](create-a-data-set-s3.md) 中的步驟建立。

如果您使用 Athena 連接到 Amazon S3，請參閱 [我無法連接到 Amazon Athena](troubleshoot-connect-athena.md)。

# 我無法從現有的 Adobe Analytics 資料來源建立或重新整理資料集
<a name="troubleshoot-connect-adobe-analytics"></a>

自 2022 年 5 月 1 日起，Quick Sight 不再支援 Adobe Analytics 中的舊版 OAuth 和 1.3 版和 SOAP API 操作。如果您嘗試從現有 Adobe Analytics 資料來源建立或重新整理資料集時遇到失敗，您可能有過時的存取符記。

**若要從現有 Adobe Analytics 資料來源建立或重新整理資料集時遇到失敗的疑難排解**

1. 開啟 Quick Sight，然後選擇左側**的資料**。

1. 選擇**新增**，然後選擇**資料集**。

1. 在**建立資料集**頁面上，從現有資料來源清單中選擇您要更新的 Adobe Analytics 資料來源。

1. 選擇**編輯資料來源**。

1. 在開啟的 **Edit Adobe Analytics data source** 頁面上，選擇**更新資料來源**以重新授權 Adobe Analytics 連線。

1. 請再次嘗試重新建立或重新整理資料集。資料集的建立或重新整理應該會成功。

# 我需要驗證與我的資料來源的連線，或變更資料來源設定
<a name="troubleshoot-connect-validate"></a>

在某些情況下，您可能需要更新資料來源，或者遇到連線錯誤，需要檢查您的設定。若如此，請遵循以下步驟。

**若要驗證您與資料來源的連線**

1. 在 Quick Sight 首頁中，選擇左側**的資料**。

1. 選擇**新增**，然後選擇**資料集**。

1. 您將看到現有資料來源的清單。

1. 選擇您想要測試或變更的資料來源。

1. 如果已提供選項，請選擇 **Edit/Preview data (編輯/預覽資料)**。

1. 選擇 **Validate connection (驗證連線)**。

1. 進行您想要的任何變更，然後選擇**更新資料來源**。

# 我無法連接到 MySQL (SSL 和授權的問題)
<a name="troubleshoot-connect-mysql"></a>

若要在 MySQL 中檢查一些常見的連線問題，請使用下列步驟。此程序可協助您了解是否已啟用 SSL 並授予使用權利。

**若要尋找一些 MySQL 中常見連接問題的解決方案**

1. 檢查 `/etc/my.cnf` 確保已為 MySQL 啟用 SSL。

1. 在 MySQL 中，執行以下命令。

   ```
   show status like 'Ssl%';
   ```

   如果 SSL 可運作，您會看到如下所示的結果。

   ```
   +--------------------------------+----------------------+
   | Variable_name                  | Value                |
   +--------------------------------+----------------------+
   | Ssl_accept_renegotiates        | 0                    |
   | Ssl_accepts                    | 1                    |
   | Ssl_callback_cache_hits        | 0                    |
   | Ssl_cipher                     |                      |
   | Ssl_cipher_list                |                      |
   | Ssl_client_connects            | 0                    |
   | Ssl_connect_renegotiates       | 0                    |
   | Ssl_ctx_verify_depth           | 18446744073709551615 |
   | Ssl_ctx_verify_mode            | 5                    |
   | Ssl_default_timeout            | 0                    |
   | Ssl_finished_accepts           | 0                    |
   | Ssl_finished_connects          | 0                    |
   | Ssl_session_cache_hits         | 0                    |
   | Ssl_session_cache_misses       | 0                    |
   | Ssl_session_cache_mode         | SERVER               |
   | Ssl_session_cache_overflows    | 0                    |
   | Ssl_session_cache_size         | 128                  |
   | Ssl_session_cache_timeouts     | 0                    |
   | Ssl_sessions_reused            | 0                    |
   | Ssl_used_session_cache_entries | 0                    |
   | Ssl_verify_depth               | 0                    |
   | Ssl_verify_mode                | 0                    |
   | Ssl_version                    |                      |
   +--------------------------------+----------------------+
   ```

   如果 SSL 已停用，您會看到如下所示的結果。

   ```
   +--------------------------------+-------+
   | Variable_name                  | Value |
   +--------------------------------+-------+
   | Ssl_accept_renegotiates        | 0     |
   | Ssl_accepts                    | 0     |
   | Ssl_callback_cache_hits        | 0     |
   | Ssl_cipher                     |       |
   | Ssl_cipher_list                |       |
   | Ssl_client_connects            | 0     |
   | Ssl_connect_renegotiates       | 0     |
   | Ssl_ctx_verify_depth           | 0     |
   | Ssl_ctx_verify_mode            | 0     |
   | Ssl_default_timeout            | 0     |
   | Ssl_finished_accepts           | 0     |
   | Ssl_finished_connects          | 0     |
   | Ssl_session_cache_hits         | 0     |
   | Ssl_session_cache_misses       | 0     |
   | Ssl_session_cache_mode         | NONE  |
   | Ssl_session_cache_overflows    | 0     |
   | Ssl_session_cache_size         | 0     |
   | Ssl_session_cache_timeouts     | 0     |
   | Ssl_sessions_reused            | 0     |
   | Ssl_used_session_cache_entries | 0     |
   | Ssl_verify_depth               | 0     |
   | Ssl_verify_mode                | 0     |
   | Ssl_version                    |       |
   +--------------------------------+-------+
   ```

1. 確定您已在資料庫伺服器上安裝支援的 SSL 憑證。

1. 為特定使用者授予使用權利以使用 SSL 連線。

   ```
   GRANT USAGE ON *.* TO 'encrypted_user'@'%' REQUIRE SSL;                        
   ```

**注意**  
TLS 1.2 for MySQL 連線需要 MySQL 5.7.28 版或更新版本。如果您的 MySQL 伺服器僅強制執行 TLS 1.2 （例如 `tls_version = TLSv1.2`)，且伺服器版本低於 5.7.28，則 SSL 交握會失敗並顯示`Communications link failure`錯誤。若要解決此問題，請將 MySQL 或 Aurora MySQL 資料庫升級至 5.7.28 版或更新版本。

如需此範例中解決方案的更多詳細資訊，請參閱下列各項：
+ 《Amazon RDS 使用者指南》**中的[對 MySQL 資料庫執行個體的 SSL 支援](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MySQL.html#MySQL.Concepts.SSLSupport.html)。
+ 《Amazon RDS 使用者指南》**中的[使用 SSL 加密與 DB 執行個體的連線](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html)。
+ [MySQL 文件](https://dev.mysql.com/doc/refman/5.6/en/using-encrypted-connections.html)

# 我無法連接到 RDS
<a name="troubleshoot-connect-RDS"></a>

如需對 Amazon RDS 連線進行疑難排解的詳細資訊，請參閱 [從資料庫建立資料集](create-a-database-data-set.md)。

您也可以參考 Amazon RDS 文件中有關對連線進行疑難排解的資訊，[無法連接到 Amazon RDS 資料庫執行個體](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Troubleshooting.html#CHAP_Troubleshooting.Connecting)*。*

# Quick Sight 的登入問題
<a name="troubleshoot-login"></a>

使用下一節協助您疑難排解 Quick Sight 主控台的登入和存取問題。

**Topics**
+ [

# 搭配 Amazon Quick Sight 使用 Athena 時的許可不足
](troubleshoot-athena-insufficient-permissions.md)
+ [

# Amazon Quick Sight 無法在我的瀏覽器中運作
](troubleshoot-browser.md)
+ [

# 如何刪除我的 Amazon Quick Sight 帳戶？
](troubleshoot-delete-quicksight-account.md)
+ [

# 組織中的個人在嘗試存取 Quick Sight 時，會收到「外部登入未經授權」訊息
](troubleshoot-webidentity-federation.md)
+ [

# 我的電子郵件登入停止運作
](troubleshoot-email-login.md)

# 搭配 Amazon Quick Sight 使用 Athena 時的許可不足
<a name="troubleshoot-athena-insufficient-permissions"></a>

如果您收到表示「許可不足」的錯誤訊息，請嘗試以下步驟來解決您的問題：

您需要管理員許可才能對此問題進行疑難排解。

**若要解決許可不足錯誤**

1. 確定 Amazon Quick Sight 可以存取 Athena 使用的 Amazon S3 儲存貯體：

   1. 為此，請選擇您的描述檔名稱 (右上角)。選擇**管理 Quick Sight**，然後向下捲動至**自訂許可**區段。

   1. 選擇**AWS 資源**，然後選擇**新增或移除**。

   1. 在清單中找出 Athena。清除 Athena 旁邊的核取方塊，然後再次選取以啟用 Athena。

      後選擇**連接兩者**。

   1. 選擇您要從 Amazon Quick Sight 存取的儲存貯體。

      您在此處存取的 S3 儲存貯體設定與您透過從 清單中選擇 Amazon S3 存取的設定相同 AWS 服務。請小心不要意外停用其他人使用的儲存貯體。

   1. 選擇**選取**儲存您的 S3 儲存貯體。

   1. 選擇**更新**以儲存 Amazon Quick Sight 存取的新設定 AWS 服務。或者，選擇**取消**離開，但不建立任何變更。

1. 如果您的資料檔案使用 AWS KMS 金鑰加密，請將解密金鑰的許可授予 Amazon Quick Sight IAM 角色。執行此動作最簡單的方法是使用 AWS CLI。

   您可以在 中執行 [create-grant](https://docs.aws.amazon.com/cli/latest/reference/kms/create-grant.html) 命令 AWS CLI 來執行此操作。

   ```
   aws kms create-grant --key-id <AWS KMS key ARN> --grantee-principal <Your Amazon Quick Sight Role ARN> --operations Decrypt
   ```

   Amazon Quick Sight 角色的 Amazon Resource Name (ARN) 具有 格式，`arn:aws:iam::<account id>:role/service-role/aws-quicksight-service-role-v<version number>`可以從 IAM 主控台存取。若要尋找您的 AWS KMS 金鑰 ARN，請使用 S3 主控台。移至包含您的資料檔案的儲存貯體，然後選擇 **Overview (概觀)** 索引標籤。該金鑰位於 **KMS key ID (KMS 金鑰 ID)** 附近。

對於 Amazon Athena、Amazon S3 和 Athena 查詢聯合連線，Quick Sight 預設會使用下列 IAM 角色：

```
arn:aws:iam::AWS-ACCOUNT-ID:role/service-role/aws-quicksight-s3-consumers-role-v0
```

如果 `aws-quicksight-s3-consumers-role-v0` 不存在，則 Quick Sight 會使用：

```
arn:aws:iam::AWS-ACCOUNT-ID:role/service-role/aws-quicksight-service-role-v0
```

# Amazon Quick Sight 無法在我的瀏覽器中運作
<a name="troubleshoot-browser"></a>

如果您無法在 Google Chrome 瀏覽器中正確檢視 Amazon Quick Sight，請採取下列步驟來修正問題。

**在 Chrome 瀏覽器中檢視 Amazon Quick Sight**

1. 開啟 Chrome 並轉至 `chrome://flags/#touch-events`。

1. 如果此選項設為**自動**，請將它變更為**已停用**。

1. 關閉並重新開啟 Chrome。

# 如何刪除我的 Amazon Quick Sight 帳戶？
<a name="troubleshoot-delete-quicksight-account"></a>

在某些情況下，即使您無法存取 Amazon Quick Sight 來取消訂閱，仍可能需要刪除 Amazon Quick Sight 帳戶。若是如此，請登入 AWS 並使用以下連結開啟[取消訂閱畫面](https://us-east-1.quicksight.aws.amazon.com/sn/console/unsubscribe)：`https://us-east-1.quicksight.aws.amazon.com/sn/console/unsubscribe`。無論您使用何種方法 AWS 區域 ，此方法都能運作。它會刪除所有資料、分析、Amazon Quick Sight 使用者和 Amazon Quick Sight 管理員。如果您有任何進一步的困難，請聯絡支援人員。

# 組織中的個人在嘗試存取 Quick Sight 時，會收到「外部登入未經授權」訊息
<a name="troubleshoot-webidentity-federation"></a>


|  | 
| --- |
|    目標對象：Amazon Quick 管理員  | 

當您組織中的個人使用 **AssumeRoleWithWebIdentity** 聯合到 Quick Sight 時，Quick Sight 會將單一角色型使用者映射到單一外部登入。在某些情況下，可能會透過與原始映射使用者不同的外部登入 (例如 Amazon Cognito) 對該個別人員進行驗證。若是如此，他們無法存取 Quick Sight 並收到下列非預期錯誤訊息。

用於聯合的外部登入對 Quick Sight 使用者未經授權。

若要了解如何對此問題進行疑難排解，請參閱下列章節：
+ [為什麼會發生這種情況？](#troubleshoot-webidentity-federation-why)
+ [可以如何修正這個問題？](#troubleshoot-webidentity-federation-how)

## 為什麼會發生這種情況？
<a name="troubleshoot-webidentity-federation-why"></a>

### 您正在使用簡化的 Amazon Cognito 流程
<a name="troubleshoot-webidentity-federation-why-Cognito-SSO-1"></a>

如果您使用 Amazon Cognito 聯合到 Quick Sight，則單一登入 (IAM Identity Center) 設定可能會使用 `CognitoIdentityCredentials` API 操作來擔任 Quick Sight 角色。此方法會將 Amazon Cognito 身分集區中的所有使用者映射至單一 Quick Sight 使用者，Quick Sight 不支援。

建議您改用 `AssumeRoleWithWebIdentity` API 操作，此操作會指定角色工作階段名稱。

### 您正使用未經身分驗證 Amazon Cognito 使用者
<a name="troubleshoot-webidentity-federation-why-Cognito-SSO-2"></a>

Amazon Cognito IAM Identity Center 是針對 Amazon Cognito 身分池中未經驗證的使用者設定的。Quick Sight 角色信任政策的設定方式如下。

此設定允許臨時 Amazon Cognito 使用者擔任映射至唯一 Quick Sight 使用者的角色工作階段。由於未驗證的身分是暫時的，因此 Quick Sight 不支援這些身分。

建議您不要使用此設定，Quick Sight 不支援該設定。對於 Quick Sight，請確定 Amazon Cognito IAM Identity Center 使用已驗證的使用者。

### 您已刪除並重新建立具有相同使用者名稱屬性的 Amazon Cognito 使用者
<a name="troubleshoot-webidentity-federation-why-Cognito-user-delete"></a>

在此情況下，已刪除並重新建立對應至 Quick Sight 使用者的相關聯 Amazon Cognito 使用者。新建立的 Amazon Cognito 使用者具有不同的基礎主旨。根據角色工作階段名稱對應至 Quick Sight 使用者的方式，工作階段名稱可能會對應至相同的 Quick Sight 角色型使用者。

建議您使用 `UpdateUser` API 操作，將 Quick Sight 使用者重新映射至更新的 Amazon Cognito 使用者主體。如需詳細資訊，請參閱下列 [UpdateUser API 範例](#troubleshoot-webidentity-federation-solutions-updateuser)。

### 您正在將不同 中的多個 Amazon Cognito 使用者集區映射 AWS 帳戶 至一個身分集區，並使用 Quick Sight
<a name="troubleshoot-webidentity-federation-why-Cognito-multi-pools"></a>

Quick Sight 不支援將不同 中的多個 Amazon Cognito 使用者集區對應 AWS 帳戶 至一個身分集區和 Quick Sight。

## 可以如何修正這個問題？
<a name="troubleshoot-webidentity-federation-how"></a>

您可以使用 Quick Sight 公有 API 操作來更新使用者的外部登入資訊。使用下列選項來了解如何操作。

### 使用 RegisterUser 建立具有外部登入資訊的使用者
<a name="troubleshoot-webidentity-federation-how-registeruser"></a>

如果外部登入提供者是 Amazon Cognito，則請使用下列 CLI 程式碼建立使用者。

```
aws quicksight register-user --aws-account-id account-id --namespace namespace --email user-email --user-role user-role --identity-type IAM
--iam-arn arn:aws:iam::account-id:role/cognito-associated-iam-role 
--session-name cognito-username --external-login-federation-provider-type COGNITO 
--external-login-id cognito-identity-id --region identity-region
```

`external-login-id` 應該是 Amazon Cognito 使用者的身分 ID。格式為 `<identity-region>:<cognito-user-sub>`，如下列範例所示。

```
aws quicksight register-user --aws-account-id 111222333 --namespace default --email cognito-user@amazon.com --user-role ADMIN --identity-type IAM
--iam-arn arn:aws:iam::111222333:role/CognitoQuickSightRole 
--session-name cognito-user --external-login-federation-provider-type COGNITO 
--external-login-id us-east-1:12345678-1234-1234-abc1-a1b1234567 --region us-east-1
```

如果外部登入提供者是自訂 OpenID Connect (OIDC) 提供者，請使用下列 CLI 程式碼建立使用者。

```
aws quicksight register-user --aws-account-id account-id --namespace namespace
--email user-email --user-role user-role --identity-type IAM
--iam-arn arn:aws:iam::account-id:role/identity-provider-associated-iam-role 
--session-name identity-username --external-login-federation-provider-type CUSTOM_OIDC 
--custom-federation-provider-url custom-identity-provider-url 
--external-login-id custom-provider-identity-id --region identity-region
```

下列是 範例。

```
aws quicksight register-user --aws-account-id 111222333 --namespace default 
--email identity-user@amazon.com --user-role ADMIN --identity-type IAM
--iam-arn arn:aws:iam::111222333:role/CustomIdentityQuickSightRole
--session-name identity-user --external-login-federation-provider-type CUSTOM_OIDC 
--custom-federation-provider-url idp.us-east-1.amazonaws.com/us-east-1_ABCDE 
--external-login-id 12345678-1234-1234-abc1-a1b1234567 --region us-east-1
```

若要進一步了解如何在 CLI `RegisterUser`中使用 ，請參閱《*Amazon Quick API 參考*》中的 [RegisterUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_RegisterUser.html)。

### 使用 DescribeUser 檢查使用者的外部登入資訊
<a name="troubleshoot-webidentity-federation-how-describeuser"></a>

如果使用者是來自外部登入提供者的以角色為基礎的聯合身分使用者，請使用 `DescribeUser` API 操作檢查該使用者的外部登入資訊，如下列程式碼所示。

```
aws quicksight describe-user --aws-account-id account-id  --namespace namespace
--user-name identity-provider-associated-iam-role/identity-username 
--region identity-region
```

下列是 範例。

```
aws quicksight describe-user --aws-account-id 111222333 --namespace default --user-name IdentityQuickSightRole/user --region us-west-2
```

結果會包含外部登入資訊欄位 (如果有)。以下是範例。

```
{
    "Status": 200,
    "User": {
        "Arn": "arn:aws:quicksight:us-east-1:111222333:user-default-IdentityQuickSightRole-user",
        "UserName": "IdentityQuickSightRole-user",
        "Email": "user@amazon.com",
        "Role": "ADMIN",
        "IdentityType": "IAM",
        "Active": true,
        "PrincipalId": "federated-iam-AROAAAAAAAAAAAAAA:user",
        "ExternalLoginFederationProviderType": "COGNITO",
        "ExternalLoginFederationProviderUrl": "cognito-identity.amazonaws.com",
        "ExternalLoginId": "us-east-1:123abc-1234-123a-b123-12345678a"
    },
    "RequestId": "12345678-1234-1234-abc1-a1b1234567"
}
```

若要進一步了解如何在 CLI `DescribeUser`中使用 ，請參閱《*Amazon Quick API 參考*》中的 [DescribeUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_DescribeUser.html)。

### 使用 UpdateUser 更新使用者的外部登入資訊
<a name="troubleshoot-webidentity-federation-solutions-updateuser"></a>

在某些情況下，您可能會發現 `DescribeUser` 結果中為使用者儲存的外部登入資訊不正確，或是外部登入資訊遺失。如果是這樣，您可以使用 `UpdateUser` API 操作對其進行更新。使用以下範例。

對於 Amazon Cognito 使用者，請使用以下內容。

```
aws quicksight update-user --aws-account-id account-id --namespace namespace 
--user-name cognito-associated-iam-role/cognito-username
 --email user-email --role user-role 
--external-login-federation-provider-type COGNITO 
--external-login-id cognito-identity-id --region identity-region
```

下列是 範例。

```
aws quicksight update-user --aws-account-id 111222333 --namespace default 
--user-name CognitoQuickSightRole/cognito-user --email cognito-user@amazon.com 
--role ADMIN --external-login-federation-provider-type COGNITO 
--external-login-id us-east-1:12345678-1234-1234-abc1-a1b1234567 --region us-west-2
```

對於自訂 OIDC 提供者使用者，請使用以下內容。

```
aws quicksight update-user --aws-account-id account-id --namespace namespace 
 --user-name identity-provider-associated-iam-role/identity-username 
--email user-email --role user-role 
--external-login-federation-provider-type CUSTOM_OIDC 
--custom-federation-provider-url custom-identity-provider-url 
--external-login-id custom-provider-identity-id --region identity-region
```

下列是 範例。

```
aws quicksight update-user --aws-account-id 111222333 --namespace default 
--user-name IdentityQuickSightRole/user --email user@amazon.com --role ADMIN 
--external-login-federation-provider-type CUSTOM_OIDC 
--custom-federation-provider-url idp.us-east-1.amazonaws.com/us-east-1_ABCDE 
 --external-login-id 123abc-1234-123a-b123-12345678a --region us-west-2
```

如果您要刪除使用者的外部登入資訊，請使用 `NONE` `external login federation provider type`。使用下列 CLI 命令刪除外部登入資訊。

```
aws quicksight update-user --aws-account-id account-id --namespace namespace 
 --user-name identity-provider-associated-iam-role/identity-username 
--email user-email --role user-role
--external-login-federation-provider-type NONE --region identity-region
```

下列是 範例。

```
aws quicksight update-user --aws-account-id 111222333 --namespace default 
--user-name CognitoQuickSightRole/cognito-user --email cognito-user@amazon.com --role ADMIN --external-login-federation-provider-type NONE --region us-west-2
```

若要進一步了解如何在 CLI `UpdateUser`中使用 ，請參閱《*Amazon Quick API 參考*》中的 [UpdateUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_UpdateUser.html)。

# 我的電子郵件登入停止運作
<a name="troubleshoot-email-login"></a>

目前電子郵件會區分大小寫。如果您的登入無效，請您的管理員檢查是否混用大小寫字母。使用您之前輸入的電子郵件。

# Quick Sight 的視覺化問題
<a name="visual-issues"></a>

使用以下章節可協助您對視覺效果及其格式的問題進行疑難排解。

**Topics**
+ [

# 我看不到自己的視覺效果
](troubleshoot-adding-visuals.md)
+ [

# 我所有的列印文件上都有意見回饋列
](troubleshoot-printing-docs.md)
+ [

# 我的地圖圖表未顯示位置
](troubleshoot-geocoding.md)
+ [

# 我的樞紐分析表停止運作
](troubleshoot-pivot-tables.md)
+ [

# 我的視覺效果找不到遺漏的資料欄
](troubleshooting-dataset-changed-columns.md)
+ [

# 我的視覺效果找不到查詢資料表
](troubleshooting-dataset-changed-tables.md)
+ [

# 變更計算欄位後，我的視覺效果不更新
](troubleshooting-visual-refresh.md)
+ [

# 具有科學表示法的 Microsoft Excel 檔案中的值在 Quick Sight 中格式不正確
](troubleshooting-number-formatting.md)

# 我看不到自己的視覺效果
<a name="troubleshoot-adding-visuals"></a>

請使用以下章節來協助您對遺失的視覺效果進行疑難排解。在繼續之前，請檢查以確保您仍然可以存取資料來源。如果您無法連接至資料來源，請參閱 [Amazon Quick Sight 的資料來源連線問題](troubleshoot-connect-to-datasources.md)。
+ 如果您在分析中新增視覺效果時遇到問題，則請嘗試以下操作：
  + 檢查您的連線，並確認您有權存取 Quick Sight 用於存取的所有網域。若要查看 Quick Sight 使用的所有 URLs 清單，請參閱 [Quick Sight 存取的網域](https://docs.aws.amazon.com//quicksight/latest/developerguide/vpc-interface-endpoints.html#vpc-interface-endpoints-restrictvpc-interface-endpoints-supported-domains)。
  + 請檢查您未嘗試新增超過配額允許的物件。Amazon Quick Sight 在單一分析中最多支援 30 個資料集、單一工作表中最多支援 30 個視覺效果，以及每個分析最多支援 20 個工作表。
  + 假設您正在編輯所選資料來源的分析，同時與資料來源的連線意外結束。產生的錯誤狀態可以防止對分析的進一步變更。在這種情況下，您無法對分析新增更多的視覺化效果。檢查此狀態。
+ 如果您的視覺效果沒有載入，請嘗試下列步驟：
  + 如果您使用的是公司網路，請向網路管理員尋求協助並確認網路的防火牆設定允許來自 `*.aws.amazon.com`、`amazonaws.com`、`wss://*.aws.amazon.com` 和 `cloudfront.net` 的流量。
  + 將下列各項新增至您的廣告封鎖程式的例外狀況：`*.aws.amazon.com`、`amazonaws.com`、`wss://*.aws.amazon.com` 及 `cloudfront.net`。
  + 如果您使用代理伺服器，請確認 `*.quicksight.aws.amazon.com` 和 `cloudfront.net` 已新增至已獲核准的域清單 (允許清單)。

# 我所有的列印文件上都有意見回饋列
<a name="troubleshoot-printing-docs"></a>

有時瀏覽器會在頁面上列印文件意見回饋列，阻礙一些列印內容。

若要避免這個問題，請使用畫面左下角的向下轉動圖示 (如下所示)，以盡可能縮小意見回饋列。然後列印您的文件。

![\[\]](http://docs.aws.amazon.com/zh_tw/quick/latest/userguide/images/printing-docs.png)


# 我的地圖圖表未顯示位置
<a name="troubleshoot-geocoding"></a>

為了讓自動映射 (稱為地理空間編碼) 能夠在地圖圖表上運作，請確保遵循特定規則準備您的資料。如需地理空間問題的協助，請參閱[地理空間疑難排解](geospatial-troubleshooting.md)。如需為地理空間圖表準備資料的協助，請參閱[新增地理空間資料](geospatial-data-prep.md)。

# 我的樞紐分析表停止運作
<a name="troubleshoot-pivot-tables"></a>

如果您的樞紐分析表超過基礎資料庫的運算限制，欄位集中的項目組合通常會造成此情況。也就是說，這是由資料列、資料欄、指標和資料表計算的組合造成的。若要減少複雜性和出錯的可能性，可以簡化樞紐分析表。如需詳細資訊，請參閱[樞紐分析表最佳實務](pivot-table-best-practices.md)。

# 我的視覺效果找不到遺漏的資料欄
<a name="troubleshooting-dataset-changed-columns"></a>

分析中的視覺效果未如預期般運作。錯誤訊息顯示 `"The column(s) used in this visual do not exist."`

此錯誤最常見的原因是資料來源結構描述已變更。例如，資料欄名稱可能會從 `a_column` 變更為 `b_column`。

根據資料集存取資料來源的方式，選擇以下其中一項。
+ 如果資料集是以自訂 SQL 為基礎，請執行下列動作中的一項或多項：
  + 編輯資料集。
  + 編輯 SQL 陳述式。

    例如，如果資料表名稱從 `a_column` 變更為 `b_column`，則您可以更新 SQL 陳述式來建立別名：`SELECT b_column as a_column`。透過使用別名以在資料集中維持相同的資料欄名稱，您無須將資料欄做為新實體來新增到您的視覺效果。

  完成後，選擇**儲存並視覺化**。
+ 如果資料集不是以自訂 SQL 為基礎，請執行下列動作中的一項或多項：
  + 編輯資料集。
  + 對於現在具有不同名稱的資料欄，請在資料集中將其重新命名。您可以使用原始資料集中的資料欄名稱。然後開啟分析，並將重命名的欄位新增至受影響的視覺效果中。

  完成後，選擇**儲存並視覺化**。

# 我的視覺效果找不到查詢資料表
<a name="troubleshooting-dataset-changed-tables"></a>

在此例中，分析中的視覺效果未如預期般運作。錯誤訊息顯示 `"Amazon Quick Sight can’t find the query table."`

此錯誤最常見的原因是資料來源結構描述已變更。例如，資料表名稱可能會從 `x_table` 變更為 `y_table`。

根據資料集存取資料來源的方式，選擇以下其中一項。
+ 如果資料集是以自訂 SQL 為基礎，請執行下列動作中的一項或多項：
  + 編輯資料集。
  + 編輯 SQL 陳述式。

    例如，如果資料表名稱從 `x_table` 變更為 `y_table`，則您可以在 SQL 陳述式中更新 FROM 子句，改為參考新的資料表。

  完成後，請選擇**儲存並視覺化**，然後選擇每個視覺效果並視需要重新新增欄位。
+ 如果資料集不是以自訂 SQL 為基礎，請執行下列動作：

  1. 使用新資料表 (例如 `y_table`) 來建立新的資料集。

  1. 開啟您的分析。

  1. 以新建立的資料集取代原始資料集。如果沒有資料欄變更，則所有視覺效果都應該在您取代資料集之後運作。如需詳細資訊，請參閱[替換資料集](replacing-data-sets.md)。

# 變更計算欄位後，我的視覺效果不更新
<a name="troubleshooting-visual-refresh"></a>

當您更新許多其他欄位相依的計算欄位時，耗用實體可能無法如預期般更新。例如，當您更新正在視覺化的欄位所使用的計算欄位時，視覺效果不會如預期般進行更新。

若要解決此問題，請重新整理網際網路瀏覽器。

# 具有科學表示法的 Microsoft Excel 檔案中的值在 Quick Sight 中格式不正確
<a name="troubleshooting-number-formatting"></a>

當您連線到具有數字資料欄的 Microsoft Excel 檔案，其中包含具有科學表示法的值時，它們可能不會在 Quick Sight 中正確格式化。例如，值 1.59964E\$111，實際上是 159964032802，格式為 Quick Sight 中的 159964000000。這可能會導致不正確的分析。

若要解決此問題，請將資料欄格式化為 Microsoft Excel `Text`中的格式，然後將檔案上傳至 Quick Sight。

# 使用 Amazon Quick Sight 進行開發
<a name="quicksight_dev"></a>

我們提供 Amazon Quick Sight 的 API 操作，以及 AWS 的軟體開發套件 (SDKs)，可讓您從偏好的程式設計語言存取 Amazon Quick Sight。目前，您可以管理使用者和群組。在 Enterprise Edition 中，您還能將儀表板內嵌於網頁或應用程式。

若要監控對您 帳戶的 Amazon Quick Sight API 發出的呼叫，包括由 AWS 管理主控台、命令列工具和其他 服務發出的呼叫，請使用 AWS CloudTrail。如需詳細資訊，請參閱[「AWS CloudTrail 使用者指南」](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/)。

## 必要知識
<a name="quicksight_dev-required_knowledge"></a>

如果您計劃透過 API 存取 Amazon Quick Sight，您應該熟悉以下內容：
+ JSON
+ Web 服務
+ HTTP 請求
+ 一種或多種程式設計語言，例如 JavaScript、Java、Python，或 C \$1。

我們建議您造訪 AWS [入門資源中心](https://aws.amazon.com/getting-started/tools-sdks/)，以瀏覽 提供的 AWS SDKs 和工具組。

儘管您可以使用終端和您喜歡的文字編輯器，但您可能會受益於整合式開發環境 (IDE) 更視覺化的 UI 體驗。我們在 *AWS 入門資源中心*的 [IDE 和 IDE 工具組](https://aws.amazon.com/getting-started/tools-sdks/#IDE_and_IDE_Toolkits)區段中提供了 IDE 清單。此網站提供 AWS 工具組，您可以針對偏好的 IDE 下載。一些 IDE 還提供教學，協助您進一步了解程式設計語言。

## Amazon Quick Sight 的可用 API 操作
<a name="quicksight_dev-using_libraries"></a>

AWS 為偏好使用特定語言 API 操作而非透過 HTTPS 提交請求的軟體開發人員提供程式庫、範本程式碼、教學課程和其他資源。這些程式庫提供可自動處理任務的基本功能，例如密碼編譯簽署請求、重試請求，以及處理錯誤回應。這些程式庫可協助您更輕鬆地入門。

如需下載 AWS SDKs的詳細資訊，請參閱 [AWS SDKs和工具](https://aws.amazon.com/tools/)。下列連結是可用的特定語言 API 文件的範例。

**AWS Command Line Interface**
+ [AWS CLI QuickSight 命令參考](https://docs.aws.amazon.com/cli/latest/reference/quicksight/index.html)
+ [AWS CLI 使用者指南](https://docs.aws.amazon.com/cli/latest/userguide/)
+ [AWS CLI 命令參考](https://docs.aws.amazon.com/cli/latest/reference/)

**適用於 .NET 的 AWS SDK**
+ [Amazon.Quicksight](https://docs.aws.amazon.com/sdkfornet/v3/apidocs/index.html?page=QuickSight/NQuickSight.html)
+ [Amazon.Quicksight.Model](https://docs.aws.amazon.com/sdkfornet/v3/apidocs/index.html?page=QuickSight/NQuickSightModel.html)

**適用於 C\$1\$1 的 AWS SDK**
+ [Aws::QuickSight::QuickSightClient 類別參考](https://sdk.amazonaws.com/cpp/api/LATEST/class_aws_1_1_quick_sight_1_1_quick_sight_client.html)

**適用於 Go 的 AWS SDK**
+ [quicksight](https://docs.aws.amazon.com/sdk-for-go/api/service/quicksight/)

**適用於 Java 的 AWS SDK**
+ [com.amazonaws.services.quicksight](https://docs.aws.amazon.com/sdk-for-java/latest/reference/index.html?com/amazonaws/services/quicksight/package-summary.html)
+ [com.amazonaws.services.quicksight.model](https://docs.aws.amazon.com/sdk-for-java/latest/reference/index.html?com/amazonaws/services/quicksight/model/package-summary.html)

**適用於 JavaScript 的 AWS SDK**
+ [AWS.QuickSight](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/QuickSight.html)

**適用於 PHP 的 AWS SDK**
+ [QuickSightClient](https://docs.aws.amazon.com/aws-sdk-php/v3/api/class-Aws.QuickSight.QuickSightClient.html)

**適用於 Python (Boto3) 的 AWS SDK**
+ [Amazon Quick Sight](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/quicksight.html)

**適用於 Ruby 的 AWS SDK**
+ [Aws::QuickSight](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/QuickSight.html)

# 術語與概念
<a name="quicksight_dev-terminology"></a>

本節提供在 Amazon Quick Sight 中開發的術語清單。

**匿名 Amazon Quick Sight 使用者：**幾乎屬於命名空間的臨時 Amazon Quick Sight 使用者身分，且僅適用於內嵌。您可以使用以標籤為基礎的規則來為此類使用者實作列級安全性。

**發起人身分：**提出 API 請求的 AWS Identity and Access Management 使用者的身分。發起人的身分由 Amazon Quick Sight 使用連接到請求的簽章來決定。透過使用我們提供的軟體開發套件用戶端，您無須以手動方式產生簽章或將其附加至請求。不過，必要時您也可以手動執行上述操作。

**呼叫者身分：** – 除了呼叫者身分之外，但不能取代它，您可以在呼叫 Amazon Quick Sight 時，透過 IAM `AssumeRole` API 擔任呼叫者的身分。 AWS 會透過呼叫者的身分來核准呼叫者。這是為了避免必須明確新增屬於相同 Amazon Quick Sight 訂閱的多個帳戶。

**命名空間：**一個邏輯容器，讓您可以隔離使用者集區，以便於組織客戶、子公司、團隊等。如需詳細資訊，請參閱[使用隔離命名空間支援多租戶](https://docs.aws.amazon.com/quicksight/latest/user/namespaces.html) 

**QuickSight ARN：**Amazon Resource Name (ARN)。Amazon Quick Sight 資源會使用其名稱或 ARN 來識別。例如，以下是名為 `MyGroup1` 的群組、名為 `User1` 的使用者及 ID 為 `1a1ac2b2-3fc3-4b44-5e5d-c6db6778df89` 的儀表板的 ARN：

```
arn:aws:quicksight:us-east-1:111122223333:group/default/MyGroup1
	arn:aws:quicksight:us-east-1:111122223333:user/default/User1
	arn:aws:quicksight:us-west-2:111122223333:dashboard/1a1ac2b2-3fc3-4b44-5e5d-c6db6778df89
```

以下範例顯示名為 `MyTemplate` 的範本和名為 `MyDashboard` 的儀表板的 ARN。

1. 範本的範例 ARN

   ```
   arn:aws:quicksight:us-east-1:111122223333:template/MyTemplate
   ```

1. 範本的範例 ARN (參考範本的特定版本)

   ```
   arn:aws:quicksight:us-east-1:111122223333:template/MyTemplate/version/10
   ```

1. 範本別名的範例 ARN

   ```
   arn:aws:quicksight:us-east-1:111122223333:template/MyTemplate/alias/STAGING
   ```

1. 儀表板的範例 ARN

   ```
   arn:aws:quicksight:us-east-1:111122223333:dashboard/MyDashboard
   ```

1. 儀表板的範例 ARN (參考儀表板的特定版本)

   ```
   arn:aws:quicksight:us-east-1:111122223333:dashboard/MyDashboard/version/10
   ```

視情況而定，您可能需要提供實體的名稱、ID 或 ARN。如果您有名稱，您可以使用一些 Amazon Quick Sight API 操作來擷取 ARN。

**Amazon Quick Sight 儀表板：**識別從分析或範本建立的 Amazon Quick Sight 報告的實體。Amazon Quick Sight 儀表板是可分割的。具備適當的許可時，便可以從儀表板建立排程的電子郵件報告。`CreateDashboard` 和 `DescribeDashboard` API 操作作用於儀表板實體。

**Amazon Quick Sight 範本：** 封裝建立分析或儀表板所需中繼資料的實體。它透過用預留位置取代資料集來抽象化與分析相關的資料集。您可以使用範本建立儀表板，方法是使用與建立來源分析和範本相同結構描述的資料集取代資料集預留位置。

**Amazon Quick Sight 使用者：**– 這是 API 呼叫對 執行動作的 Amazon Quick Sight 使用者身分。此使用者與發起人身分不同，但可能是映射至 Amazon Quick Sight 內使用者的使用者。

# 使用 Amazon Quick Sight API 開發應用程式
<a name="quicksight-sdks"></a>

您可以使用 AWS SDKs來存取專為您正在使用的程式設計語言或平台量身打造的 API，以管理部署的大部分層面。如需詳細資訊，請參閱 [AWS 開發套件](https://aws.amazon.com/tools/#SDKs)。

如需 API 操作的詳細資訊，請參閱 [Amazon Quick Sight API 參考](https://docs.aws.amazon.com/quicksight/index.html?id=docs_gateway)。

在您可以呼叫 Amazon Quick Sight API 操作之前，您需要連接到 IAM 身分的政策中的 `quicksight:operation-name` 許可。例如，若要呼叫 `list-users`，您必須具備 `quicksight:ListUsers` 許可。同樣的模式適用於所有操作。

如果您不確定必要的許可是什麼，可以嘗試進行呼叫。然後，用戶端會告訴您缺少的許可是什麼。您可以在許可原則的「資源」欄位中使用星號 (`*`)，而不指定明確的資源。但建議您盡可能限制每個許可。您可以使用 Amazon Quick Sight Amazon Resource Name (ARN) 識別符，在政策中指定或排除資源來限制使用者存取。

如需詳細資訊，請參閱下列內容：
+ [Amazon Quick Sight 的 IAM 政策範例](https://docs.aws.amazon.com/quicksight/latest/user/iam-policy-examples.html)
+ [動作、資源及條件索引鍵](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonquicksight.html)
+ [IAM JSON 政策元素](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html)

若要擷取使用者或群組的 ARN，請對相關資源使用 `Describe` 操作。您也可以在 IAM 中新增條件，進一步限制某些情況下的 API 存取。例如，將 `User1`新增至 時`Group1`，主要資源是 `Group1`，因此您可以允許或拒絕存取特定群組，但您也可以使用 IAM Amazon Quick Sight 金鑰來新增條件`quicksight:UserName`，以允許或防止特定使用者新增至該群組。

以下是政策的範例。這表示只要新增至群組的使用者名稱不是 `user1`，連接此政策的呼叫者就能在任何群組上呼叫 `CreateGroupMembership` 操作。

```
{
    "Effect": "Allow",
    "Action": "quicksight:CreateGroupMembership",
    "Resource": "arn:aws:quicksight:us-east-1:aws-account-id:group/default/*",
    "Condition": {
        "StringNotEquals": {
            "quicksight:UserName": "user1"
        }
    }
}
```

------
#### [ AWS CLI ]

下列程序說明如何透過 CLI 與 Amazon Quick Sight API AWS 操作互動。此說明內容已在 Bash 中進行過測試，但在其他命令列環境下應可得到同樣或類似的結果。

1. 在您的環境中安裝 AWS SDK。如需如何執行此操作的說明，請參閱 [AWS Command Line Interface](https://aws.amazon.com/cli/)。

1. 使用下列命令和後續指示來設定您的 AWS CLI 身分和區域。請使用具備適當許可的 IAM 身分或角色的登入資料。

   ```
   aws configure
   ```

1. 發出下列命令，查看 Amazon Quick Sight SDK 說明：

   ```
   aws quicksight help
   ```

1. 若要取得如何使用特定 API 的詳細說明，請輸入其名稱，後面加上 help，例如：

   ```
   aws quicksight list-users help
   ```

1. 現在您可以呼叫 Amazon Quick Sight API 操作。此範例會傳回您帳戶中的 Amazon Quick Sight 使用者清單。

   ```
   aws quicksight list-users --aws-account-id aws-account-id --namespace default --region us-east-1
   ```

------
#### [ Java SDK ]

使用下列程序來設定與 Amazon Quick Sight 互動的 Java 應用程式。

1. 若要開始使用，請在 IDE 中建立 Java 專案。

1. 將 Amazon Quick Sight SDK 匯入您的新專案，例如： `AWSQuickSightJavaClient-1.11.x.jar`

1. 一旦您的 IDE 為 Amazon Quick Sight SDK 編製索引，您應該能夠新增匯入列，如下所示：

   ```
   import com.amazonaws.services.quicksight.AmazonQuickSight;
   ```

   如果 IDE 未將其判別為有效語法，請確認您是否已匯入軟體開發套件。

1. 如同其他 AWS SDKs，Amazon Quick Sight SDK 需要外部相依性才能執行其許多函數。您必須下載依存項目並將之匯入同一專案。必要的依存項目如下：
   + `aws-java-sdk-1.11.402.jar` (AWS Java 開發套件和登入資料設定） — 請參閱[設定適用於 Java 的 AWS 開發套件 ](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/setup-install.html) 
   + `commons-logging-1.2.jar` – 請參閱 [ https://commons.apache.org/proper/commons-logging/download\$1logging.cgi ](https://commons.apache.org/proper/commons-logging/download_logging.cgi) 
   + `jackson-annotations-2.9.6.jar`、`jackson-core-2.9.6.jar` 及 `jackson-databind-2.9.6.jar` – 請參閱 [ http://repo1.maven.org/maven2/com/fasterxml/jackson/core/ ](https://repo1.maven.org/maven2/com/fasterxml/jackson/core/) 
   + `httpclient-4.5.6.jar`、`httpcore-4.4.10.jar` – 請參閱 [ https://hc.apache.org/downloads.cgi ](https://hc.apache.org/downloads.cgi) 
   + `joda-time-2.1.jar` – 請參閱 [ https://mvnrepository.com/artifact/joda-time/joda-time/2.1 ](https://mvnrepository.com/artifact/joda-time/joda-time/2.1) 

1. 現在，您已準備好建立 Amazon Quick Sight 用戶端。您可以使用能夠由用戶端與之通訊的預設公有端點，或是明確參考該端點。有多種方式可以提供您的 AWS 登入資料。以下範例介紹既直接又簡單的方法。底下的用戶端方法用於進行所有 API 呼叫：

   ```
   private static AmazonQuickSight getClient() {
   	final AWSCredentialsProvider credsProvider = new AWSCredentialsProvider() {
   	@Override
   	public AWSCredentials getCredentials() {
   	// provide actual IAM access key and secret key here
   	return new BasicAWSCredentials("access-key", "secret-key");
   	}
   	
   	@Override
   	public void refresh() {}
   	};
   	
   	return AmazonQuickSightClientBuilder
   	.standard()
   	.withRegion(Regions.US_EAST_1.getName())
   	.withCredentials(credsProvider)
   	.build();
   	}
   ```

1. 現在，我們可以使用上述用戶端列出 Amazon Quick Sight 帳戶中的所有使用者。
**注意**  
您必須提供用來訂閱 Amazon Quick Sight AWS 的帳戶 ID。這必須符合發起人身分 AWS 的帳戶 ID。目前不支援跨帳戶呼叫。此外，必要參數 `namespace` 應一律設為 *default*。

   ```
   getClient().listUsers(new ListUsersRequest()
           .withAwsAccountId("relevant_AWS_account_ID")
           .withNamespace("default"))
           .getUserList().forEach(user -> {
               System.out.println(user.getArn());
           });
   ```

1. 若要查看所有可能的 API 操作及其使用的請求物件清單，您可以在 IDE 中的用戶端物件上**按一下 CTRL**，以檢視 Amazon Quick Sight 介面。或者，在 Amazon Quick Sight JavaClient JAR 檔案中的 `com.amazonaws.services.quicksight`套件中找到它。

------
#### [ JavaScript (Node.js) SDK ]

使用下列程序來使用 Node.js 與 Amazon Quick Sight 互動。

1. 使用以下命令設定您的節點環境：
   + `npm install aws-sdk`
   + `npm install aws4 `
   + `npm install request`
   + `npm install url`

1. 如需有關使用 AWS SDK 設定 Node.js 和設定登入資料的資訊，請參閱--> [適用於 JavaScript 的 AWS SDK SDK v2 的開發人員指南](https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/welcome.html)。

1. 使用以下程式碼範例測試您的設定。HTTPS 為必要項目。此範例會顯示 Amazon Quick Sight 操作的完整清單及其 URL 請求參數，後面接著您帳戶中的 Amazon Quick Sight 使用者清單。

   ```
   const AWS = require('aws-sdk');
   const https = require('https');
   
   var quicksight = new AWS.Service({
       apiConfig: require('./quicksight-2018-04-01.min.json'),
       region: 'us-east-1',
   });
   
   console.log(quicksight.config.apiConfig.operations);
   
   quicksight.listUsers({
       // Enter your actual AWS account ID
       'AwsAccountId': 'relevant_AWS_account_ID', 
       'Namespace': 'default',
   }, function(err, data) {
       console.log('---');
       console.log('Errors: ');
       console.log(err);
       console.log('---');
       console.log('Response: ');
       console.log(data);
   });
   ```

------
#### [ Python3 SDK ]

使用下列程序建立自訂建置`botocore`套件，以與 Amazon Quick Sight 互動。

1. 在 AWS 目錄中為您的環境建立登入資料檔案。在 Linux/Mac 環境中，該檔案名為 \$1/.aws/credentials，其內容如下：

   ```
   [default]
   aws_access_key_id = Your_IAM_access_key
   aws_secret_access_key = Your_IAM_secret_key
   ```

1. 解壓縮 `botocore-1.12.10` 資料夾。將目錄切換到 `botocore-1.12.10`，然後進入 Python3 解譯器環境。

1. 回應將以字典物件的形式傳回。每次回應都會有 `ResponseMetadata` 項目，其中包含請求 ID 和回應狀態。其餘項目則視您所執行的操作類型而定。

1. 以下所示的範例應用程式將首先建立、刪除和列出群組，接著列出 Quicksight 帳戶中的使用者：

   ```
   import botocore.session
   default_namespace = 'default'
   account_id = 'relevant_AWS_Account'
   
   session = botocore.session.get_session()
   client = session.create_client("quicksight", region_name='us-east-1')
   
   print('Creating three groups: ')
   client.create_group(AwsAccountId = account_id, Namespace=default_namespace, GroupName='MyGroup1')
   client.create_group(AwsAccountId = account_id, Namespace=default_namespace, GroupName='MyGroup2')
   client.create_group(AwsAccountId = account_id, Namespace=default_namespace, GroupName='MyGroup3')
   
   print('Retrieving the groups and listing them: ')
   response = client.list_groups(AwsAccountId = account_id, Namespace=default_namespace)
   for group in response['GroupList']:
       print(group)
   
   print('Deleting our groups: ')
   client.delete_group(AwsAccountId = account_id, Namespace=default_namespace, GroupName='MyGroup1')
   client.delete_group(AwsAccountId = account_id, Namespace=default_namespace, GroupName='MyGroup2')
   client.delete_group(AwsAccountId = account_id, Namespace=default_namespace, GroupName='MyGroup3')
   
   response = client.list_users(AwsAccountId = account_id, Namespace=default_namespace)
   for user in response['UserList']:
       print(user)
   ```

------
#### [ .NET/C\$1 SDK ]

使用下列程序來使用 C\$1 與 Amazon Quick Sight 互動。NET。此範例是由 Microsoft Visual Studio for Mac 所建構；視您的 IDE 及平台而定，說明內容可能略有不同。不過，程序應大致雷同。



1. 將 `nuget.zip` 檔案解壓縮到名為 `nuget` 的資料夾。

1. 在 Visual Studio 中建立新的**主控台應用程式**。

1. 在方案底下找出應用程式**相依性**，然後開啟內容功能表 (按滑鼠右鍵) 並選擇 **Add Packages (新增封裝)**。

1. 在來源清單中，選擇 **Configure Sources (設定來源)**。

1. 選擇 **Add (新增)**。然後將該來源命名為 `QuickSightSDK`。瀏覽至 `nuget` 資料夾並選擇 **Add Source (新增來源)**。

1. 選擇**確定**。然後，`QuickSightSDK`選取所有三個 Amazon Quick Sight 套件：
   + `AWSSDK.QuickSight`
   + `AWSSDK.Extensions.NETCore.Setup`
   + `AWSSDK.Extensions.CognitoAuthentication`

1. 按一下 **Add Package (新增封裝)**。

1. 複製以下範例應用程式並將其貼入您的主控台應用程式編輯器。

   ```
   using System;
   using Amazon.QuickSight.Model;
   using Amazon.QuickSight;
   
   namespace DotNetQuickSightSDKTest
   {
       class Program
       {
           private static readonly string AccessKey = "insert_your_access_key";
           private static readonly string SecretAccessKey = "insert_your_secret_key";
           private static readonly string AccountID = "AWS_account_ID";
           private static readonly string Namespace = "default";  // leave this as default
   
           static void Main(string[] args)
           {
               var client = new AmazonQuickSightClient(
                   AccessKey,
                   SecretAccessKey, 
                   Amazon.RegionEndpoint.USEast1);
   
               var listUsersRequest = new ListUsersRequest
               {
                   AwsAccountId = AccountID,
                   Namespace = Namespace
               };
   
               client.ListUsersAsync(listUsersRequest).Result.UserList.ForEach(
                   user => Console.WriteLine(user.Arn)
               );
   
               var listGroupsRequest = new ListGroupsRequest
               {
                   AwsAccountId = AccountID,
                   Namespace = Namespace
               };
   
               client.ListGroupsAsync(listGroupsRequest).Result.GroupList.ForEach(
                   group => Console.WriteLine(group.Arn)
               );
           }
       }
   }
   ```

------

# Amazon Quick Sight 事件整合
<a name="events-integration"></a>

使用 Amazon EventBridge，您可以自動回應 Amazon Quick Sight 中的事件，例如建立新的儀表板或更新。這些事件會以接近即時的方式遞送到 EventBridge。作為開發人員，您可寫入簡單的規則，來指示感興趣的事件，以及當事件符合規則時採取的動作。透過使用事件，您可以完成使用案例，例如持續備份與部署。

**Topics**
+ [

## 支援的事件
](#events-supported)
+ [

## 範例事件承載
](#sample-events-payload)
+ [

# 建立將 Amazon Quick Sight 事件傳送至 Amazon CloudWatch 的規則
](events-send-cloudwatch.md)
+ [

# 建立規則以將 Amazon Quick Sight 事件傳送至 AWS Lambda
](events-send-lambda.md)

## 支援的事件
<a name="events-supported"></a>

Amazon Quick Sight 目前支援下列事件。


| 資產類型設定 | Action | 事件詳細資訊類型 | 事件詳細資訊 | 
| --- | --- | --- | --- | 
| 儀表板 | 建立 | Amazon Quick Sight 儀表板建立成功 | <pre>{<br />    "dashboardId": "6fdbc328-ebbd-457f-aa02-9780173afc83",<br />    "versionNumber": 1<br />}</pre> | 
| 儀表板 | 建立 | Amazon Quick Sight 儀表板建立失敗 | <pre>{<br />    "dashboardId": "6fdbc328-ebbd-457f-aa02-9780173afc83",<br />    "versionNumber": 1,<br />    "errors": [<br />      {<br />        "Type": "PARAMETER_NOT_FOUND",<br />        "Message": "Missing property abc"<br />      },<br />      {<br />        "Type": "DATA_SET_NOT_FOUND",<br />        "Message": "Cannot find dataset with id abc"<br />      }<br />    ]<br />}</pre> | 
| 儀表板 | 建立 | Amazon Quick Sight 儀表板許可已更新 | <pre>{"dashboardId": "6fdbc328-ebbd-457f-aa02-9780173afc83" }</pre> | 
| 儀表板 | 更新 | Amazon Quick Sight 儀表板更新成功 | <pre>{<br />    "dashboardId": "6fdbc328-ebbd-457f-aa02-9780173afc83",<br />    "versionNumber": 1<br />}</pre> | 
| 儀表板 | 更新 | Amazon Quick Sight 儀表板更新失敗 | <pre>{<br />    "dashboardId": "6fdbc328-ebbd-457f-aa02-9780173afc83",<br />    "versionNumber": 1,<br />    "errors": [<br />      {<br />        "Type": "PARAMETER_NOT_FOUND",<br />        "Message": "Missing property abc"<br />      },<br />      {<br />        "Type": "DATA_SET_NOT_FOUND",<br />        "Message": "Cannot find dataset with id abc"<br />      }<br />    ]<br />}</pre> | 
| 儀表板 | 更新 | Amazon Quick Sight 儀表板許可已更新 | <pre>{"dashboardId": "6fdbc328-ebbd-457f-aa02-9780173afc83"}</pre> | 
| 儀表板 | 發布 | Amazon Quick Sight 儀表板發佈版本已更新 | <pre>{<br />    "dashboardId": "6fdbc328-ebbd-457f-aa02-9780173afc83",<br />    "versionNumber": 2<br />}</pre> | 
| 儀表板 | 刪除 | 已刪除 Amazon Quick Sight 儀表板 | <pre>{<br />    "dashboardId": "6fdbc328-ebbd-457f-aa02-9780173afc83"<br />}</pre> | 
| 分析 | 建立 | Amazon Quick Sight 分析建立成功 | <pre>{<br />    "analysisId": "e5f37119-e24c-4874-901a-af9032b729b5"<br />}</pre> | 
| 分析 | 建立 | Amazon Quick Sight Analysis Creation 失敗 | <pre>{<br />    "analysisId": "e5f37119-e24c-4874-901a-af9032b729b5",<br />    "errors": [<br />      {<br />        "Type": "PARAMETER_NOT_FOUND",<br />        "Message": "Missing property abc"<br />      },<br />      {<br />        "Type": "DATA_SET_NOT_FOUND",<br />        "Message": "Cannot find dataset with id abc"<br />      }<br />    ]<br />}</pre> | 
| 分析 | 建立 | Amazon Quick Sight 分析許可已更新 | <pre>{"analysisId": "e5f37119-e24c-4874-901a-af9032b729b5" }</pre> | 
| 分析 | 刪除 | 已刪除 Amazon Quick Sight 分析 | <pre>{<br />    "analysisId": "e5f37119-e24c-4874-901a-af9032b729b5"<br />}</pre> | 
| 分析 | 更新 | Amazon Quick Sight 分析更新成功 | <pre>{<br />    "analysisId": "e5f37119-e24c-4874-901a-af9032b729b5"<br />}</pre> | 
| 分析 | 更新 | Amazon Quick Sight 分析更新失敗 | <pre>{<br />    "analysisId": "e5f37119-e24c-4874-901a-af9032b729b5",    <br />    "errors": [        <br />        {            <br />            "Type": "PARAMETER_NOT_FOUND",            <br />            "Message": "Missing property abc"        <br />        },        <br />        {             <br />            "Type": "DATA_SET_NOT_FOUND",            <br />            "Message": "Cannot find dataset with id abc"        <br />        }    <br />    ]<br />}</pre> | 
| 分析 | 更新 | Amazon Quick Sight 分析許可已更新 | <pre>{"analysisId": "e5f37119-e24c-4874-901a-af9032b729b5" }</pre> | 
| VPC 連線 | 建立 | Amazon Quick Sight VPC 連線建立成功 | <pre>{<br />    "vpcConnectionId": "53d34238-57e7-488d-b99a-a0037d275a4e",<br />    "availabilityStatus": "CREATION_SUCCESSFUL"<br />}</pre> | 
| VPC 連線 | 建立 | Amazon Quick Sight VPC 連線建立失敗 | <pre>{<br />    "vpcConnectionId": "53d34238-57e7-488d-b99a-a0037d275a4e",<br />    "availabilityStatus": "CREATION_FAILED"<br />}</pre> | 
| VPC 連線 | 更新 | Amazon Quick Sight VPC 連線更新成功 | <pre>{<br />    "vpcConnectionId": "53d34238-57e7-488d-b99a-a0037d275a4e",<br />    "availabilityStatus": "UPDATE_SUCCESSFUL"<br />}</pre> | 
| VPC 連線 | 更新 | Amazon Quick Sight VPC 連線更新失敗 | <pre>{<br />    "vpcConnectionId": "53d34238-57e7-488d-b99a-a0037d275a4e",<br />    "availabilityStatus": "UPDATE_FAILED"<br />}</pre> | 
| VPC 連線 | 刪除 | Amazon Quick Sight VPC 連線刪除成功 | <pre>{<br />    "vpcConnectionId": "53d34238-57e7-488d-b99a-a0037d275a4e",<br />    "availabilityStatus": "DELETED"<br />}</pre> | 
| VPC 連線 | 刪除 | Amazon Quick Sight VPC 連線刪除失敗 | <pre>{<br />    "vpcConnectionId": "53d34238-57e7-488d-b99a-a0037d275a4e",<br />    "availabilityStatus": "DELETION_FAILED"<br />}</pre> | 
| 資料夾 | 建立 | 已建立 Amazon Quick Sight 資料夾 | <pre>{<br />    "folderId": "77e307e8-b41b-472a-90e8-fe3f471537be",<br />    "parentFolderArn": "arn:aws:quicksight:us-east-1:123456789012:folder/098765432134"<br />}</pre> | 
| 資料夾 | 建立 | Amazon Quick Sight 資料夾許可已更新 | <pre>{"folderId": "77e307e8-b41b-472a-90e8-fe3f471537be" }</pre> | 
| 資料夾 | 更新 | Amazon Quick Sight 資料夾已更新 | <pre>{<br />    "folderId": "77e307e8-b41b-472a-90e8-fe3f471537be"<br />}</pre> | 
| 資料夾 | 更新 | Amazon Quick Sight 資料夾許可已更新 | <pre>{"folderId": "77e307e8-b41b-472a-90e8-fe3f471537be" }</pre> | 
| 資料夾 | 刪除 | 已刪除 Amazon Quick Sight 資料夾 | <pre>{<br />    "folderId": "77e307e8-b41b-472a-90e8-fe3f471537be"<br />}</pre> | 
| 資料夾 | 成員資格更新 | Amazon Quick Sight 資料夾成員資格已更新 | <pre>{<br />    "folderId": "77e307e8-b41b-472a-90e8-fe3f471537be",<br />    "membersAdded": ["arn:aws:quicksight:us-east-1:123456789012:analysis/e5f37119-e24c-4874-901a-af9032b729b5"],<br />    "membersRemoved": []<br />}</pre> | 
| 資料集 | 建立 | 已建立 Amazon Quick Sight 資料集 | <pre>{<br />    "datasetId": "a6553a81-f97e-4ffa-a860-baea63196efa"<br />}</pre> | 
| 資料集 | 建立 | Amazon Quick Sight 資料集許可已更新 | <pre>{"datasetId": "a6553a81-f97e-4ffa-a860-baea63196efa" }</pre> | 
| 資料集 | 更新 | Amazon Quick Sight 資料集已更新 | <pre>{<br />    "datasetId": "a6553a81-f97e-4ffa-a860-baea63196efa"<br />}</pre> | 
| 資料集 | 更新 | Amazon Quick Sight 資料集許可已更新 | <pre>{"datasetId": "a6553a81-f97e-4ffa-a860-baea63196efa" }</pre> | 
| 資料集 | 刪除 | 已刪除 Amazon Quick Sight 資料集 | <pre>{<br />    "datasetId": "a6553a81-f97e-4ffa-a860-baea63196efa"<br />}</pre> | 
| 資料來源 | 建立 | Amazon Quick Sight DataSource 建立成功 | <pre>{<br />    "datasourceId": "230caa6e-dc87-406b-91fb-037f29c32824"<br />}</pre> | 
| 資料來源 | 建立 | Amazon Quick Sight DataSource 建立失敗 | <pre>{<br />    "datasourceId": "230caa6e-dc87-406b-91fb-037f29c32824",<br />    "error": {<br />        "message": "AMAZON_ELASTICSEARCH engine version 7.4 is lower than minimum supported version 7.7",<br />        "type": "ENGINE_VERSION_NOT_SUPPORTED"<br />    }<br />}</pre> | 
| 資料來源 | 建立 | Amazon Quick Sight DataSource 許可已更新 | <pre>{"datasourceId": "230caa6e-dc87-406b-91fb-037f29c32824" }</pre> | 
| 資料來源 | 更新 | Amazon Quick Sight DataSource 更新成功 | <pre>{<br />    "datasourceId": "230caa6e-dc87-406b-91fb-037f29c32824"<br />}</pre> | 
| 資料來源 | 更新 | Amazon Quick Sight DataSource 更新失敗 | <pre>{<br />    "datasourceId": "230caa6e-dc87-406b-91fb-037f29c32824",<br />    "error": {<br />        "message": "AMAZON_ELASTICSEARCH engine version 7.4 is lower than minimum supported version 7.7",<br />        "type": "ENGINE_VERSION_NOT_SUPPORTED"<br />    }<br />}</pre> | 
| 資料來源 | 更新 | Amazon Quick Sight DataSource 許可已更新 | <pre>{"datasourceId": "230caa6e-dc87-406b-91fb-037f29c32824" }</pre> | 
| 資料來源 | 刪除 | 已刪除 Amazon Quick Sight DataSource  | <pre>{<br />    "datasourceId": "230caa6e-dc87-406b-91fb-037f29c32824"<br />}</pre> | 
| 佈景主題 | 建立 | Amazon Quick Sight 主題建立成功 | <pre>{<br />    ""themeId": "6fdbc328-ebbd-457f-aa02-9780173afc83", <br />    "versionNumber": 1"<br />}</pre> | 
| 佈景主題 | 建立 | Amazon Quick Sight 佈景主題建立失敗 | <pre>{ <br />    "themeId": "6fdbc328-ebbd-457f-aa02-9780173afc83", <br />    "versionNumber": 1<br />}</pre> | 
| 佈景主題 | 建立 | Amazon Quick Sight 佈景主題許可已更新 | <pre>{"themeId": "6fdbc328-ebbd-457f-aa02-9780173afc83" }</pre> | 
| 佈景主題 | 更新 | Amazon Quick Sight 主題更新成功 | <pre>{<br />    "themeId": "6fdbc328-ebbd-457f-aa02-9780173afc83",    <br />    "versionNumber": 2<br />}</pre> | 
| 佈景主題 | 更新 | Amazon Quick Sight 主題更新失敗 | <pre>{<br />    "themeId": "6fdbc328-ebbd-457f-aa02-9780173afc83",    <br />    "versionNumber": 2<br />}</pre> | 
| 佈景主題 | 更新 | Amazon Quick Sight 佈景主題許可已更新 | <pre>{"themeId": "6fdbc328-ebbd-457f-aa02-9780173afc83" }</pre> | 
| 佈景主題 | 刪除 | 已刪除 Amazon Quick Sight 主題 | <pre>{<br />    "themeId": "6fdbc328-ebbd-457f-aa02-9780173afc83"<br />}</pre> | 
| 佈景主題 | 別名建立 | Amazon Quick Sight 主題別名已建立 | <pre>{<br />    "themeId": "6fdbc328-ebbd-457f-aa02-9780173afc83",    <br />    "aliasName": "MyThemeAlias"    <br />    "versionNumber": 2<br />}</pre> | 
| 佈景主題 | 別名更新 | Amazon Quick Sight 別名已更新 | <pre>{<br />    "themeId": "6fdbc328-ebbd-457f-aa02-9780173afc83",    <br />    "aliasName": "MyThemeAlias"    <br />    "versionNumber": 4<br />}</pre> | 
| 佈景主題 | 別名刪除 | 已刪除 Amazon Quick Sight 佈景主題別名 | <pre>{<br />    "themeId": "6fdbc328-ebbd-457f-aa02-9780173afc83",    <br />    "aliasName": "MyThemeAlias"    <br />    "versionNumber": 2<br />}</pre> | 

## 範例事件承載
<a name="sample-events-payload"></a>

所有事件皆遵循標準 EventBridge [物件結構](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-events-structure.html)。詳細資訊欄位為包含更多事件相關資訊的 JSON 物件。

```
{
  "version": "0",
  "id": "3acb26c8-397c-4c89-a80a-ce672a864c55",
  "detail-type": "QuickSight Dashboard Creation Successful",
  "source": "aws.quicksight",
  "account": "123456789012",
  "time": "2023-10-30T22:06:31Z",
  "region": "us-east-1",
  "resources": ["arn:aws:quicksight:us-east-1:123456789012:dashboard/6fdbc328-ebbd-457f-aa02-9780173afc83"],
  "detail": {
    "dashboardId": "6fdbc328-ebbd-457f-aa02-9780173afc83",
    "versionNumber": 1
  }
}
```

# 建立將 Amazon Quick Sight 事件傳送至 Amazon CloudWatch 的規則
<a name="events-send-cloudwatch"></a>

您可以撰寫簡單的規則來指出您對哪些 Amazon Quick Sight 事件感興趣，以及在事件符合規則時要採取哪些自動化動作。例如，您可以將 Amazon Quick Sight 設定為每當 Amazon Quick Sight 資產放置在資料夾中時，將事件傳送至 Amazon CloudWatch。如需詳細資訊，請參閱 [Amazon EventBridge user guide](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html)。

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 在導覽窗格的 **Events (事件)** 中，選擇 **Rules (規則)**。

1. 選擇**建立規則**。

1. 輸入規則的名稱和描述。規則名稱在此區域內必須是唯一的。例如，​輸入 `QuickSightAssetChangeRuleCloudWatch`。

1. 選擇**預設**事件匯流排。

1. 選擇**具有事件模式的規則**，然後選擇**下一步**。

1. 在**事件來源**欄位中，選擇 **AWS 事件或 EventBridge 合作夥伴事件**。

1. 在**建立方法**區段中，選擇**自訂模式 (JSON 編輯器)**。

1. 在**事件模式**文字方塊中，輸入下列程式碼片段，然後選擇**下一步**。

   ```
   {
     "source": ["aws.quicksight"]
   }
   ```

   或者，您可以建立僅訂閱 Amazon Quick Sight 中事件類型子集的規則。例如，只有在將資產新增至 ID 為 `77e307e8-b41b-472a-90e8-fe3f471537be` 的資料夾或從中移除資產時，才會觸發下列規則。

   ```
   {
     "source": ["aws.quicksight"],
     "detail-type": ["QuickSight Folder Membership Updated"],
     "detail": {
       "folderId": "77e307e8-b41b-472a-90e8-fe3f471537be"
     }
   }
   ```

1. 對於**目標**，選擇 **AWS 服務** > **CloudWatch 日誌群組。**

1. 從現有日誌群組中選擇，或透過輸入新的日誌群組名稱建立新的日誌群組。

1. 您可以選擇性地為此規則新增另一個目標。

1. 在 **Configure tags** (設定標籤) 中，選擇 **Next** (下一步)。

1. 選擇**建立規則**。

如需詳細資訊，請參閱 Amazon EventBridge user guide 中的 [Creating Amazon EventBridge rule that reacts To events](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule.html)。

# 建立規則以將 Amazon Quick Sight 事件傳送至 AWS Lambda
<a name="events-send-lambda"></a>

在本教學課程中，您會建立 AWS Lambda 函數，記錄 Amazon Quick Sight 帳戶中的資產事件。然後，您可以建立每當資產變更時執行該函數的規則。本教學假設您已註冊 Amazon Quick Sight。

**步驟 1：建立 Lambda 函數**

建立 Lambda 函數以記錄狀態變更事件。當您在建立規則時指定此函數。

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/lambda/](https://console.aws.amazon.com/lambda/) 開啟 AWS Lambda 主控台。

1. 如果您是第一次使用 Lambda，將會看到歡迎頁面。選擇 **Get Started Now (立即開始)**。否則，請選擇 **Create function (建立函數)**。

1. 選擇 **Author from scratch (從頭開始撰寫)**。

1. 在「建立函數」頁面上，輸入 Lambda 函式的名稱與描述。例如，將函數命名為 `QuickSightAssetChangeFn`。

1. 在**執行時期**中，選取 **Node.js 18.x**。

1. 對於 **Architecture** (架構)，選擇 **x86\$164**。

1. 對於**執行角色**，選擇**建立具有基本 Lambda 許可的新角色**或**使用現有角色**，然後選擇您想要的角色。

1. 選擇**建立函數**。

1. 在 **QuickSightAssetChange** 頁面上，選擇 **index.js**。

1. 在 **index.js** 窗格中，刪除現有的程式碼。

1. 輸入下列程式碼片段。

   ```
   console.log('Loading function');
   exports.handler = async (event, context) => {
     console.log('Received QuickSight event:', JSON.stringify(event));
   };
   ```

1. 選擇**部署**。

**步驟 2：建立規則**

建立規則以在每次create/update/delete Amazon Quick Sight 資產時執行 Lambda 函數。

1. 登入 AWS 管理主控台 ，並在 [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/)：// 開啟 Amazon EventBridge 主控台。

1. 在導覽窗格中，選擇**規則**。

1. 選擇**建立規則**。

1. 輸入規則的名稱和描述。例如，​輸入 `QuickSightAssetChangeRule`。

1. 選取**預設**事件匯流排。

1. 選擇**具有事件模式的規則**，然後選擇**下一步**。

1. 在**事件來源**欄位中，選擇 **AWS 事件或 EventBridge 合作夥伴事件**。

1. 在**建立方法**區段中，選擇**自訂模式 (JSON 編輯器)**。

1. 在**事件模式**文字方塊中，輸入下列程式碼片段，然後選擇**下一步**。

   ```
   {
     "source": ["aws.quicksight"]
   }
   ```

   或者，您可以建立只訂閱 Amazon Quick Sight 中事件類型子集的規則。例如，只有在將資產新增至 ID 為 `77e307e8-b41b-472a-90e8-fe3f471537be` 的資料夾或從中移除資產時，才會觸發下列規則。

   ```
   {
     "source": ["aws.quicksight"],
     "detail-type": ["QuickSight Folder Membership Updated"],
     "detail": {
       "folderId": "77e307e8-b41b-472a-90e8-fe3f471537be"
     }
   }
   ```

1. 對於**目標類型**，選擇 **AWS 服務**和 **Lambda 函式**。

1. 針對 **Function** (函數)，選擇您建立的 Lambda 函數。然後選擇**下一步**。

1. 在 **Configure tags** (設定標籤) 中，選擇 **Next** (下一步)。

1. 檢閱規則中的步驟。然後，選擇 **Create role** (建立角色)。

**步驟 3：測試規則**

若要測試您的規則，請建立分析。等待一分鐘後，驗證您的 Lambda 函式是否被調用。

1. 開啟位於 https：//[https://quicksight.aws.amazon.com/](https://quicksight.aws.amazon.com/) 的 Amazon Quick Sight 主控台。

1. 建立新的分析。

1. 在導覽窗格中，選擇 **Rules** (規則)，然後選擇您建立的規則名稱。

1. 在**規則詳細資料**中，選擇**監控**。

1. 系統會將您重新導向至 Amazon CloudWatch 主控台。如果未將您重新導向，請選擇**在 CloudWatch 中檢視指標**。

1. 在 **All metrics** (所有指標) 中，選擇您建立的規則名稱。該圖表指示該規則已被調用。

1. 在導覽窗格中，選擇 **Log groups** (日誌群組)。

1. 為您的 Lambda 函式選擇日誌群組名稱。例如 `/aws/lambda/function-name`。

1. 選擇日誌串流名稱以檢視函數為您啟動的執行個體所提供的資料。您應該會看到類似以下接收的事件：

   ```
   {
     "version": "0",
     "id": "3acb26c8-397c-4c89-a80a-ce672a864c55",
     "detail-type": "QuickSight Analysis Creation Successful",
     "source": "aws.quicksight",
     "account": "123456789012",
     "time": "2023-10-30T22:06:31Z",
     "region": "us-east-1",
     "resources": ["arn:aws:quicksight:us-east-1:123456789012:analysis/e5f37119-e24c-4874-901a-af9032b729b5"],
     "detail": {
       "analysisId": "e5f37119-e24c-4874-901a-af9032b729b5"
     }
   }
   ```

如需 JSON 格式的 Amazon Quick Sight 事件範例，請參閱 [Amazon Quick Sight 的事件概觀](https://docs.aws.amazon.com/quicksight/latest/developerguide/events.html)。

# Amazon Quick Sight 的內嵌分析
<a name="embedded-analytics"></a>

**重要**  
Amazon Quick Sight 有用於內嵌分析的新 API 操作： `GenerateEmbedUrlForAnonymousUser`和 `GenerateEmbedUrlForRegisteredUser`。  
您仍然可以使用 `GetDashboardEmbedUrl`和 `GetSessionEmbedUrl` API 操作來內嵌儀表板和 Amazon Quick Sight 主控台，但它們不包含最新的內嵌功能。如需使用舊 API 操作進行內嵌的詳細資訊，請參閱 [使用 GetDashboardEmbedURL 和 GetSessionEmbedURL API 操作內嵌分析](embedded-analytics-deprecated.md)。


|  | 
| --- |
|  適用於：企業版本  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

透過 Amazon Quick Sight 內嵌分析，您可以將資料驅動的體驗無縫整合到軟體應用程式中。您可以設定內嵌式元件的樣式以符合您的品牌。此功能可為您的最終使用者帶來 Amazon Quick Sight 的強大功能，他們可以分析資料並與之互動，而無需離開應用程式。通過降低認知複雜性來改善使用者體驗，令使用者可以獲得更深入的理解和更好的有效性。

Amazon Quick Sight 支援這些元素的內嵌：
+ Amazon Quick Sight 主控台 （已註冊使用者的完整撰寫體驗）
+ Amazon Quick Sight 儀表板和視覺效果 （適用於已註冊使用者、匿名使用者、公有最終使用者）
+ Amazon Quick Sight Q 搜尋列 （適用於已註冊使用者和匿名使用者）

使用內嵌的 Amazon Quick Sight 主控台，您可以嵌入完整的 Amazon Quick Sight 體驗。這樣做可讓您使用 Amazon Quick Sight 撰寫工具做為應用程式的一部分，而不是在 AWS 管理主控台 或獨立網站的內容中。內嵌 Amazon Quick Sight 主控台的使用者需要在 中註冊為 Amazon Quick Sight 作者或管理員 AWS 帳戶。他們也需要使用任何 Amazon Quick Sight 支援的身分驗證方法 AWS 帳戶，在相同的 中進行身分驗證。

透過內嵌 Amazon Quick Sight 儀表板或視覺效果，讀者可以獲得與在已發佈儀表板或視覺效果中相同的功能和互動性。若要使用內嵌式儀表板或視覺效果，讀者 (檢視者) 可以包含下列任何一項：
+ 透過 Amazon Quick Sight 支援的任何方法 AWS 帳戶 在 中驗證的 Amazon Quick Sight 使用者。
+ 網站或應用程式的未驗證訪客 – 此選項需要具有容量定價的工作階段套件。如需訂閱類型的相關資訊，請參閱[了解 Amazon Quick Sight 訂閱和角色](https://docs.aws.amazon.com/quicksight/latest/user/user-types.html#subscription-role-mapping)。
+ 多位最終使用者透過程式化存取在監視器或大螢幕上檢視顯示內容。

如果您的應用程式也位於 中 AWS，則應用程式不需要與 AWS 帳戶 Amazon Quick Sight 訂閱位於相同的 上。不過，應用程式需要能夠擔任您用於 API 呼叫的 AWS Identity and Access Management (IAM) 角色。

您必須先在 AWS 帳戶 計劃使用內嵌的 中使用 Amazon Quick Sight Enterprise Edition，才能內嵌內容。

Amazon Quick Sight 內嵌可在所有支援的 中使用 AWS 區域。

**Topics**
+ [

# 將 Amazon Quick Sight 分析嵌入您的應用程式
](embedding-overview.md)
+ [

# 將自訂 Amazon Quick Sight 資產內嵌到您的應用程式
](customize-and-personalize-embedded-analytics.md)
+ [

# 使用一鍵式內嵌程式碼內嵌 Amazon Quick Sight 視覺效果和儀表板
](1-click-embedding.md)
+ [

# 使用 Amazon Quick Sight APIs 內嵌
](embedded-analytics-api.md)

# 將 Amazon Quick Sight 分析嵌入您的應用程式
<a name="embedding-overview"></a>


|  | 
| --- |
|  適用於：企業版  | 

若要內嵌分析，您可以執行 Amazon Quick Sight 內嵌 API 來產生內嵌程式碼。或者，對於儀表板，您可以在 Amazon Quick Sight 中共用儀表板時複製內嵌程式碼。每個選項如下所述。

## 已註冊使用者可一鍵式嵌入
<a name="embedding-overview-1-click"></a>

當您與帳戶中已註冊的使用者共用儀表板時，可以複製儀表板的內嵌程式碼，並將其貼到內部應用程式的 HTML 中。

當您想要在使用者需要驗證的內部應用程式中嵌入 Amazon Quick Sight 儀表板時，最好使用一鍵式企業內嵌。當您複製內嵌程式碼時，會取得不會變更的靜態內嵌程式碼。

如需詳細資訊，請參閱[使用一鍵式內嵌程式碼為已註冊使用者內嵌 Amazon Quick Sight 視覺效果和儀表板](embedded-analytics-1-click.md)。

## 使用 Amazon Quick Sight APIs 內嵌
<a name="embedding-overview-api"></a>

當您想要將 Amazon Quick Sight 體驗內嵌在使用者必須驗證的內部應用程式中，或任何人都可以存取的外部應用程式中時，內嵌 Amazon Quick Sight API 最適合使用。當您使用嵌入 API 操作產生內嵌程式碼時，您會取得一次性程式碼。

如需詳細資訊，請參閱[使用 Amazon Quick Sight APIs 內嵌](embedded-analytics-api.md)。

# 將自訂 Amazon Quick Sight 資產內嵌到您的應用程式
<a name="customize-and-personalize-embedded-analytics"></a>

您可以使用 Amazon Quick Sight 內嵌分析，將自訂 Amazon Quick Sight 資產嵌入您的應用程式，這些資產專為滿足您的業務需求而量身打造。對於內嵌儀表板和視覺效果，Amazon Quick Sight 作者可以新增篩選條件和深入探討，讀者可以在導覽儀表板或視覺效果時存取這些篩選條件和深入探討。Amazon Quick Sight 開發人員也可以使用 Amazon Quick Sight SDKs，在 SaaS 應用程式與其 Amazon Quick Sight 內嵌資產之間建立更緊密的整合，以在執行時間將資料點回呼動作新增至儀表板上的視覺效果。

如需 Amazon Quick Sight SDKs的詳細資訊，請參閱 [GitHub](https://github.com/awslabs/amazon-quicksight-embedding-sdk) 或 [NPM](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) `amazon-quicksight-embedding-sdk`上的 。

您可以在下面找到如何使用 Amazon Quick Sight SDKs自訂 Amazon Quick Sight 內嵌分析的說明。

**Topics**
+ [

# 在 Amazon Quick Sight 中於執行時間新增內嵌回呼動作
](embedding-custom-actions-callback.md)
+ [

# 在執行時間篩選 Amazon Quick Sight 內嵌儀表板和視覺效果的資料
](embedding-runtime-filtering.md)
+ [

# 自訂 Amazon Quick Sight 內嵌儀表板和視覺效果的外觀和風格
](embedding-runtime-theming.md)
+ [

# 使用 Amazon Quick Sight 內嵌 SDK 啟用內嵌儀表板檢視的可共用連結
](embedded-view-sharing.md)

# 在 Amazon Quick Sight 中於執行時間新增內嵌回呼動作
<a name="embedding-custom-actions-callback"></a>

使用內嵌資料點回呼動作，在軟體即服務 (SaaS) 應用程式與 Amazon Quick Sight 內嵌儀表板和視覺效果之間建立更緊密的整合。開發人員可以使用 Amazon Quick Sight 內嵌 SDK 註冊要回呼的資料點。當您註冊視覺效果的回呼動作時，讀者可以在視覺效果上選取資料點，以接收提供所選資料點特定資料的回呼。此資訊可用於標記主要記錄、編譯資料點特定的原始資料、擷取記錄，以及編譯後端處理程序的資料。

自訂視覺內容、文字方塊或深入解析不支援內嵌回呼。

在您開始註冊回呼的資料點之前，請將內嵌開發套件更新至 2.3.0 版。如需使用 Amazon Quick Sight 內嵌 SDK 的詳細資訊，請參閱 GitHub 上的 [amazon-quicksight-embedding-sdk](https://github.com/awslabs/amazon-quicksight-embedding-sdk)。

資料點回呼可以在執行時間透過 Amazon Quick Sight SDK 註冊至一或多個視覺效果。您也可以將資料點回呼註冊至 [VisualCustomAction](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_VisualCustomAction.html) API 結構支援的任何互動。這允許使用者在視覺效果上選取資料點時，或從資料點內容選單中選取資料點時，啟動資料點回呼。下列範例註冊讀者在視覺效果上選取資料點時所啟動的資料點回呼。

```
/const MY_GET_EMBED_URL_ENDPOINT =
  "https://my.api.endpoint.domain/MyGetEmbedUrlApi"; // Sample URL

// The dashboard id to embed
const MY_DASHBOARD_ID = "my-dashboard"; // Sample ID

// The container element in your page that will have the embedded dashboard
const MY_DASHBOARD_CONTAINER = "#experience-container"; // Sample ID

// SOME HELPERS

const ActionTrigger = {
  DATA_POINT_CLICK: "DATA_POINT_CLICK",
  DATA_POINT_MENU: "DATA_POINT_MENU",
};

const ActionStatus = {
  ENABLED: "ENABLED",
  DISABLED: "DISABLED",
};

// This function makes a request to your endpoint to obtain an embed url for a given dashboard id
// The example implementation below assumes the endpoint takes dashboardId as request data
// and returns an object with EmbedUrl property
const myGetEmbedUrl = async (dashboardId) => {
  const apiOptions = {
    dashboardId,
  };
  const apiUrl = new URL(MY_GET_EMBED_URL_ENDPOINT);
  apiUrl.search = new URLSearchParams(apiOptions).toString();
  const apiResponse = await fetch(apiUrl.toString());
  const apiResponseData = await apiResponse.json();
  return apiResponseData.EmbedUrl;
};

// This function constructs a custom action object
const myConstructCustomActionModel = (
  customActionId,
  actionName,
  actionTrigger,
  actionStatus
) => {
  return {
    Name: actionName,
    CustomActionId: customActionId,
    Status: actionStatus,
    Trigger: actionTrigger,
    ActionOperations: [
      {
        CallbackOperation: {
          EmbeddingMessage: {},
        },
      },
    ],
  };
};

// This function adds a custom action on the first visual of first sheet of the embedded dashboard
const myAddVisualActionOnFirstVisualOfFirstSheet = async (
  embeddedDashboard
) => {
  // 1. List the sheets on the dashboard
  const { SheetId } = (await embeddedDashboard.getSheets())[0];
  // If you'd like to add action on the current sheet instead, you can use getSelectedSheetId method
  // const SheetId = await embeddedDashboard.getSelectedSheetId();

  // 2. List the visuals on the specified sheet
  const { VisualId } = (await embeddedDashboard.getSheetVisuals(SheetId))[0];

  // 3. Add the custom action to the visual
  try {
    const customActionId = "custom_action_id"; // Sample ID
    const actionName = "Flag record"; // Sample name
    const actionTrigger = ActionTrigger.DATA_POINT_CLICK; // or ActionTrigger.DATA_POINT_MENU
    const actionStatus = ActionStatus.ENABLED;
    const myCustomAction = myConstructCustomActionModel(
      customActionId,
      actionName,
      actionTrigger,
      actionStatus
    );
    const response = await embeddedDashboard.addVisualActions(
      SheetId,
      VisualId,
      [myCustomAction]
    );
    if (!response.success) {
      console.log("Adding visual action failed", response.errorCode);
    }
  } catch (error) {
    console.log("Adding visual action failed", error);
  }
};

const parseDatapoint = (visualId, datapoint) => {
  datapoint.Columns.forEach((Column, index) => {
    // FIELD | METRIC
    const columnType = Object.keys(Column)[0];

    // STRING | DATE | INTEGER | DECIMAL
    const valueType = Object.keys(Column[columnType])[0];
    const { Column: columnMetadata } = Column[columnType][valueType];

    const value = datapoint.RawValues[index][valueType];
    const formattedValue = datapoint.FormattedValues[index];

    console.log(
      `Column: ${columnMetadata.ColumnName} has a raw value of ${value}
           and formatted value of ${formattedValue.Value} for visual: ${visualId}`
    );
  });
};

// This function is used to start a custom workflow after the end user selects a datapoint
const myCustomDatapointCallbackWorkflow = (callbackData) => {
  const { VisualId, Datapoints } = callbackData;

  parseDatapoint(VisualId, Datapoints);
};

// EMBEDDING THE DASHBOARD

const main = async () => {
  // 1. Get embed url
  let url;
  try {
    url = await myGetEmbedUrl(MY_DASHBOARD_ID);
  } catch (error) {
    console.log("Obtaining an embed url failed");
  }

  if (!url) {
    return;
  }

  // 2. Create embedding context
  const embeddingContext = await createEmbeddingContext();

  // 3. Embed the dashboard
  const embeddedDashboard = await embeddingContext.embedDashboard(
    {
      url,
      container: MY_DASHBOARD_CONTAINER,
      width: "1200px",
      height: "300px",
      resizeHeightOnSizeChangedEvent: true,
    },
    {
      onMessage: async (messageEvent) => {
        const { eventName, message } = messageEvent;
        switch (eventName) {
          case "CONTENT_LOADED": {
            await myAddVisualActionOnFirstVisualOfFirstSheet(embeddedDashboard);
            break;
          }
          case "CALLBACK_OPERATION_INVOKED": {
            myCustomDatapointCallbackWorkflow(message);
            break;
          }
        }
      },
    }
  );
};

main().catch(console.error);
```

您也可以將上述範例設定為在使用者開啟內容選單時啟動資料點回呼。若要在上述範例中執行此操作，請將 `actionTrigger` 的值設定為 `ActionTrigger.DATA_POINT_MENU`。

註冊資料點回呼之後，它會套用至指定視覺效果上的大多數資料點。回呼不會套用至視覺效果上的總計或小計。當讀取器與資料點互動時，`CALLBACK_OPERATION_INVOKED`訊息會傳送到 Amazon Quick Sight 內嵌 SDK。`onMessage` 處理常式會擷取此訊息。此訊息包含與所選資料點相關聯的完整資料列的原始值和顯示值。它也包含具有資料點之視覺效果中所有資料欄的資料欄中繼資料。以下是 `CALLBACK_OPERATION_INVOKED` 訊息的範例。

```
{
   CustomActionId: "custom_action_id",
   DashboardId: "dashboard_id",
   SheetId: "sheet_id",
   VisualId: "visual_id",
   DataPoints: [
        {
            RawValues: [
                    {
                        String: "Texas" // 1st raw value in row
                    },
                    {
                        Integer: 1000 // 2nd raw value in row
                    }
            ],
            FormattedValues: [
                    {Value: "Texas"}, // 1st formatted value in row
                    {Value: "1,000"} // 2nd formatted value in row
            ],
            Columns: [
                    { // 1st column metadata
                        Dimension: {
                            String: {
                                Column: {
                                    ColumnName: "State",
                                    DatsetIdentifier: "..."
                                }
                            }
                        }
                    },
                    { // 2nd column metadata
                        Measure: {
                            Integer: {
                                Column: {
                                    ColumnName: "Cancelled",
                                    DatsetIdentifier: "..."
                                },
                                AggregationFunction: {
                                    SimpleNumericalAggregation: "SUM"
                                }
                            }
                        }
                    }
            ]
        }
   ]
}
```

# 在執行時間篩選 Amazon Quick Sight 內嵌儀表板和視覺效果的資料
<a name="embedding-runtime-filtering"></a>

您可以使用 Amazon Quick Sight 內嵌 SDK 中的篩選方法，在執行時間利用軟體即服務 (SaaS) 應用程式內的 Amazon Quick Sight 篩選功能。執行期篩選條件可讓企業擁有者將其應用程式與內嵌的 Amazon Quick Sight 儀表板和視覺效果整合。若要達成此目的，請在應用程式中建立自訂篩選條件控制項，並根據應用程式的資料套用篩選預設。然後，開發人員可以在執行時期為最終使用者個人化篩選條件組態。

開發人員可以使用 Amazon Quick Sight 內嵌 SDK，在內嵌儀表板或視覺效果上建立、查詢、更新和移除 Amazon Quick Sight 篩選條件。使用 [FilterGroup](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_FilterGroup.html) 資料模型在應用程式中建立 Amazon Quick Sight 篩選物件，並使用篩選方法將其套用至內嵌儀表板和視覺效果。如需使用 Amazon Quick Sight 內嵌 SDK 的詳細資訊，請參閱 GitHub 上的 [amazon-quicksight-embedding-sdk](https://github.com/awslabs/amazon-quicksight-embedding-sdk)。

**先決條件**

開始使用之前，請確定您使用的是 Amazon Quick Sight Embedding SDK 2.5.0 版或更新版本。

## 術語與概念
<a name="runtime-filtering-terminology"></a>

下列術語在使用嵌入式執行時期篩選時非常實用。
+ *篩選條件群組*：個別篩選條件的群組。位於 `FilterGroup` 中的篩選條件彼此進行 OR 運算彙總。[FilterGroup](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_FilterGroup.html) 中的篩選條件會套用到相同的工作表或視覺效果。
+ *篩選條件*：單一篩選條件。篩選條件可以是類別、數值或日期時間篩選條件類型。如需有關篩選條件的詳細資訊，請參閱[篩選條件](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_Filter.html)。

## 設定
<a name="runtime-filtering-setup"></a>

在開始前，請確定您已準備好下列資產與資訊。
+ 您想要將 `FilterGroup` 的範圍限定在其中的工作表的 ID。這可透過「嵌入式 SDK」中的 `getSheets` 方法取得。
+ 您要篩選之資料集的資料集與資料欄識別碼。這可透過 [DescribeDashboardDefinition](https://docs.aws.amazon.com/APIReference/API_DescribeDashboardDefinition.html) API 操作取得。

  根據您使用的資料欄類型，可能會限制可新增至嵌入式資產的篩選條件類型。如需有關篩選條件限制的詳細資訊，請參閱[篩選條件](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_Filter.html)。
+ 您想要將 `FilterGroup` 的範圍限定在其中的視覺效果的 ID (如適用)。這可以透過使用「嵌入式 SDK」中的 `getSheetVisuals` 方法取得。

  除了 `getSheetVisuals` 方法之外，只能將您新增之 `FilterGroup` 的範圍限定在目前選取的工作表。

若要使用此功能，您必須已透過 Amazon Quick Sight Embedding SDK 將儀表板或視覺效果內嵌至您的應用程式。如需使用 Amazon Quick Sight 內嵌 SDK 的詳細資訊，請參閱 GitHub 上的 [amazon-quicksight-embedding-sdk](https://github.com/awslabs/amazon-quicksight-embedding-sdk)。

## SDK 方法界面
<a name="runtime-filtering-sdk-interface"></a>

**儀表板嵌入 getter 方法**

下表說明開發人員可以使用的不同儀表板嵌入 getter 方法。


| Method | Description | 
| --- | --- | 
|  `getFilterGroupsForSheet(sheetId: string) `  |  傳回目前範圍限定在參數中提供之工作表的所有 FilterGroups。  | 
|  `getFilterGroupsForVisual(sheetId: string, visualId: string)`  |  傳回範圍限定在參數中提供之視覺效果的所有 `FilterGroups`。  | 

如果參數中提供的工作表不是嵌入式儀表板目前選取的工作表，上述方法會傳回錯誤。

**視覺效果嵌入 getter 方法**

下表說明開發人員可以使用的不同視覺效果嵌入 getter 方法。


| Method | Description | 
| --- | --- | 
|  `getFilterGroups()`  |  傳回目前範圍限定在嵌入式視覺效果的所有 `FilterGroups`。  | 

**Setter 方法**

下表說明開發人員可用於儀表板或視覺效果嵌入的不同 Setter 方法。


| Method | Description | 
| --- | --- | 
|  `addFilterGroups(filterGroups: FilterGroup[])`  |  將提供的 **FilterGroups** 新增並套用到嵌入式儀表板或視覺效果。會傳回表明新增項目是否成功的 `ResponseMessage`。  | 
|  `updateFilterGroups(filterGroups: FilterGroup[])`  |  更新嵌入式功能上的 `FilterGroups`，其中包含與參數中提供的 `FilterGroup` 相同的 `FilterGroupId`。會傳回表明更新是否成功的 `ResponseMessage`。  | 
|  `removeFilterGroups(filterGroupsOrIds: FilterGroup[] \| string[])`  |  從儀表板移除提供的 FilterGroups，並傳回表明移除嘗試是否成功的 `ResponseMessage`。  | 

提供的 `FilterGroup` 之範圍必須限定在目前選取的嵌入式工作表或視覺效果。

# 自訂 Amazon Quick Sight 內嵌儀表板和視覺效果的外觀和風格
<a name="embedding-runtime-theming"></a>

您可以使用 Amazon Quick Sight 內嵌 SDK (2.5.0 版及更高版本），在執行時間變更內嵌 Amazon Quick Sight 儀表板和視覺效果。執行期它們可讓您更輕鬆地將軟體即服務 (SaaS) 應用程式與 Amazon Quick Sight 內嵌資產整合。執行期它們可讓您將內嵌內容的主題與內嵌 Amazon Quick Sight 資產的父應用程式主題同步。您也可以使用執行時期佈景主題設定，為讀者新增自訂選項。佈景主題設定變更可在初始化時或嵌入式儀表板或視覺效果的整個生命週期內套用至嵌入式資產。

如需有關佈景主題的詳細資訊，請參閱[在 Amazon Quick Sight 中使用佈景主題](themes-in-quicksight.md)。如需使用 Amazon Quick Sight 內嵌 SDK 的詳細資訊，請參閱 GitHub 上的 [amazon-quicksight-embedding-sdk](https://github.com/awslabs/amazon-quicksight-embedding-sdk)。

**先決條件**

開始使用之前，請確定已滿足下列必要先決條件。
+ 您使用的是 Amazon Quick Sight 內嵌 SDK 2.5.0 版或更新版本。
+ 要使用之佈景主題的存取許可。若要在 Amazon Quick Sight 中授予佈景主題的許可，請進行 `UpdateThemePermissions` API 呼叫或使用 Amazon Quick Sight 主控台分析編輯器中佈景主題旁的**共用**圖示。

## 術語與概念
<a name="runtime-theming-terminology"></a>

下列術語在使用嵌入執行時期佈景主題設定時非常實用。
+ *佈景主題*：您可以套用到多個分析和儀表板，以變更內容顯示方式的一組設定。
+ *佈景主題組態*：包含佈景主題所有顯示屬性的組態物件。
+ *佈景主題覆寫*：套用至作用中佈景主題的 `ThemeConfiguration` 物件，可覆寫內容顯示方式的部分或全部層面。
+ *佈景主題 ARN * – 識別 Amazon Quick Sight 佈景主題的 Amazon Resource Name (ARN)。下方是自訂佈景主題 ARN 的範例。

  `arn:aws:quicksight:region:account-id:theme/theme-id`

  Amazon Quick Sight 提供的入門佈景主題在其佈景主題 ARN 中沒有區域。下方是入門佈景主題 ARN 的範例。

  `arn:aws:quicksight::aws:theme/CLASSIC`

## 設定
<a name="runtime-theming-setup"></a>

請確定您已準備好下列資訊，以開始使用執行時期佈景主題設定。
+ 想要使用之佈景主題的 ARN。您可以選擇現有的佈景主題，也可以建立新的佈景主題。若要取得 Amazon Quick Sight 帳戶中所有佈景主題和佈景主題 ARNs清單，請呼叫 [ListThemes](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_ListThemes.html) API 操作。如需預設 Amazon Quick Sight 主題的詳細資訊，請參閱 [使用 Amazon Quick APIs 設定 Amazon Quick 分析的預設佈景主題](customizing-quicksight-default-theme.md)。
+ 如果您使用的是已註冊的使用者嵌入，請確定使用者可存取您想要使用的佈景主題。

  如果您使用匿名使用者嵌入，請將佈景主題 ARN 清單傳遞至 `GenerateEmbedUrlForAnonymousUser` API 的 `AuthorizedResourceArns` 參數。匿名使用者可存取 `AuthorizedResourceArns` 參數中列出的任何佈景主題。

## SDK 方法界面
<a name="runtime-theming-sdk-interface"></a>

**Setter 方法**

下表說明開發人員可用於執行時期佈景主題設定的不同 Setter 方法。


| Method | Description | 
| --- | --- | 
|  `setTheme(themeArn: string)`  |  以另一個佈景主題取代儀表板或視覺效果的作用中佈景主題。如果套用，則會移除佈景主題覆寫。 如果您無法存取佈景主題或佈景主題不存在，則會傳回錯誤。  | 
|  `setThemeOverride(themeOverride: ThemeConfiguration)`  |  設定動態 `ThemeConfiguration` 以覆寫目前的作用中佈景主題。這會取代先前設定的佈景主題覆寫。任何未在新 `ThemeConfiguration` 中提供的值，都會預設為目前作用中佈景主題中的值。 如果您提供的 `ThemeConfiguration` 無效，則會傳回錯誤。  | 

## 初始化使用佈景主題的嵌入式內容
<a name="runtime-theming-sdk-initialize"></a>

若要初始化使用非預設佈景主題的嵌入式儀表板或視覺效果，請在 `DashboardContentOptions` 或 `VisualContentOptions` 參數上定義 `themeOptions` 物件，並將 `themeOptions` 中的 `themeArn` 屬性設定為所需的佈景主題 ARN。

下列範例會使用 `MIDNIGHT` 佈景主題初始化嵌入式儀表板。

```
import { createEmbeddingContext } from 'amazon-quicksight-embedding-sdk';

const embeddingContext = await createEmbeddingContext();

const {
    embedDashboard,
} = embeddingContext;

const frameOptions = {
    url: '<YOUR_EMBED_URL>',
    container: '#experience-container',
};
const contentOptions = {
    themeOptions: {
        themeArn: "arn:aws:quicksight::aws:theme/MIDNIGHT"
    }
};

// Embedding a dashboard experience
const embeddedDashboardExperience = await embedDashboard(frameOptions, contentOptions);
```

## 初始化使用佈景主題覆寫的嵌入式內容
<a name="runtime-theming-runtime-initialize-override"></a>

開發人員可以使用佈景主題覆寫，在執行時期定義嵌入式儀表板或視覺效果的佈景主題。這可讓儀表板或視覺效果從第三方應用程式繼承佈景主題，而不需要在 Amazon Quick Sight 中預先設定佈景主題。若要初始化使用佈景主題覆寫的嵌入式儀表板或視覺效果，請在 `DashboardContentOptions` 或 `VisualContentOptions` 參數中的 `themeOptions` 內設定 `themeOverride` 屬性。下列範例會將儀表板佈景主題的字型從預設字型覆寫為 `Amazon Ember`。

```
import { createEmbeddingContext } from 'amazon-quicksight-embedding-sdk';

const embeddingContext = await createEmbeddingContext();

const {
    embedDashboard,
} = embeddingContext;

const frameOptions = {
    url: '<YOUR_EMBED_URL>',
    container: '#experience-container',
};
const contentOptions = {
    themeOptions: {
        "themeOverride":{"Typography":{"FontFamilies":[{"FontFamily":"Comic Neue"}]}}
    }
};

// Embedding a dashboard experience
const embeddedDashboardExperience = await embedDashboard(frameOptions, contentOptions);
```

## 初始化使用預先載入佈景主題的嵌入式內容
<a name="runtime-theming-runtime-initialize-preloaded"></a>

開發人員可以設定一組要在初始化時預先載入的儀表板佈景主題。這對於在不同檢視 (例如深色和淺色模式) 之間快速切換最有益處。嵌入式儀表板或視覺效果進行初始化時最多可使用 5 個預先載入佈景主題。若要使用預先載入佈景主題，請在 `DashboardContentOptions` 或 `VisualContentOptions` 中設定 `preloadThemes` 屬性，陣列最多可達 5 個 `themeArns`。下列範例會將 `Midnight` 和 `Rainier` 入門佈景主題預先載入到儀表板。

```
import { createEmbeddingContext } from 'amazon-quicksight-embedding-sdk';

const embeddingContext = await createEmbeddingContext();

const {
    embedDashboard,
} = embeddingContext;

const frameOptions = {
    url: '<YOUR_EMBED_URL>',
    container: '#experience-container',
};
const contentOptions = {
    themeOptions: {
        "preloadThemes": ["arn:aws:quicksight::aws:theme/RAINIER", "arn:aws:quicksight::aws:theme/MIDNIGHT"]
    }
};

// Embedding a dashboard experience
const embeddedDashboardExperience = await embedDashboard(frameOptions, contentOptions);
```

# 使用 Amazon Quick Sight 內嵌 SDK 啟用內嵌儀表板檢視的可共用連結
<a name="embedded-view-sharing"></a>

Amazon Quick Sight 開發人員可以使用 Amazon Quick Sight 內嵌 SDK (2.8.0 版及更高版本） 來允許內嵌儀表板的讀者接收可共用連結並將其分發至其對內嵌儀表板的檢視。開發人員可以使用儀表板或主控台內嵌，透過使用 Amazon Quick Sight 內嵌 SDK 封裝的 Amazon Quick Sight 參考，產生可共用的應用程式頁面連結。然後，Amazon Quick Sight Readers 可以將此可共用連結傳送給其對等。當其對等存取共用連結時，它們會移至包含內嵌 Amazon Quick Sight 儀表板的應用程式上的 頁面。開發人員也可以產生和儲存儀表板檢視的可共用連結，這些連結可在使用匿名內嵌時做為 Amazon Quick Sight 匿名讀者的書籤。

**先決條件**

開始使用之前，請確定您使用的是 Amazon Quick Sight 內嵌 SDK 2.8.0 版或更新版本

**Topics**
+ [

# 啟用 Amazon Quick Sight 內嵌分析`SharedView`的功能組態
](embedded-view-sharing-set-up.md)
+ [

# 使用 Amazon Quick Sight `createSharedView` API 建立共用檢視
](embedded-view-sharing-sdk-create.md)
+ [

# 使用共用的 Amazon Quick Sight 檢視
](embedded-view-sharing-sdk-consume.md)

# 啟用 Amazon Quick Sight 內嵌分析`SharedView`的功能組態
<a name="embedded-view-sharing-set-up"></a>

當您使用 Amazon Quick Sight API 建立內嵌執行個體時，請將`FeatureConfigurations`承載`SharedView`中的 值設定為 `true`，如以下範例所示。 會`SharedView`覆寫存取內嵌儀表板的已註冊使用者`StatePersistence`組態。如果儀表板使用者已停用 `StatePersistence` 並啟用 `SharedView`，則其狀態仍將持續存在。

```
const generateNewEmbedUrl = async () => {
    const generateUrlPayload = {
        experienceConfiguration: {
            QuickSightConsole: {
            FeatureConfigurations: {
                "SharedView": { 
                    "Enabled": true
                 },
            },
        },
    }
    const result: GenerateEmbedUrlResult = await generateEmbedUrlForRegisteredUser(generateUrlPayload);
    return result.url;
};
```

# 使用 Amazon Quick Sight `createSharedView` API 建立共用檢視
<a name="embedded-view-sharing-sdk-create"></a>

將嵌入式 SDK 更新至 2.8.0 版或更新版本後，請使用 `createSharedView` API 建立新的共用檢視。記錄操作傳回的 `sharedViewId` 和 `dashboardId`。下方範例會建立新的共用檢視。

```
const response = await embeddingFrame.createSharedView();
const sharedViewId = response.message.sharedViewId;
const dashboardId = response.message.dashboardId;
```

只有在使用者檢視儀表板時，才能呼叫 `createSharedView`。如果要建立主控台特定的共用檢視，請確定使用者位於儀表板頁面，然後再啟用 `createSharedView` 動作。您可以使用 `PAGE_NAVIGATION` 事件執行此操作，如下方範例所示。

```
const contentOptions = {
    onMessage: async (messageEvent, metadata) => {
    switch (messageEvent.eventName) {
            case 'CONTENT_LOADED': {
                console.log("Do something when the embedded experience is fully loaded.");
                break;
            }
            case 'ERROR_OCCURRED': {
                console.log("Do something when the embedded experience fails loading.");
                break;
            }
            case 'PAGE_NAVIGATION': {
                setPageType(messageEvent.message.pageType); 
                if (messageEvent.message.pageType === 'DASHBOARD') {
                    setShareEnabled(true);
                    } else {
                    setShareEnabled(false);
                }
                break;
            }
        }
    }
};
```

# 使用共用的 Amazon Quick Sight 檢視
<a name="embedded-view-sharing-sdk-consume"></a>

建立新的共用檢視後，請使用嵌入式 SDK 讓其他使用者也可使用共用檢視。以下範例為 Amazon Quick Sight 中的內嵌儀表板設定消耗性共用檢視。

------
#### [ With an appended URL ]

在 ` /views/{viewId}` 下，將 `sharedViewId` 附加至嵌入式 URL，並將此 URL 公開給您的使用者。使用者可以使用此 URL 來導覽至該共用檢視。

```
const response = await dashboardFrame.createSharedView();
const newEmbedUrl = await generateNewEmbedUrl();
const formattedUrl = new URL(newEmbedUrl);
formattedUrl.pathname = formattedUrl.pathname.concat('/views/' + response.message.sharedViewId);
const baseUrl = formattedUrl.href;
alert("Click to view this QuickSight shared view", baseUrl);
```

------
#### [ With the contentOptions SDK ]

將 `viewId` 傳遞至 `contentOptions`，以開啟具有指定 `viewId` 的檢視。

```
const contentOptions = {
    toolbarOptions: {
        ...
    },
    viewId: sharedViewId,
};

const embeddedDashboard = await embeddingContext.embedDashboard(
    {container: containerRef.current},
    contentOptions
);
```

------
#### [ With the InitialPath property ]

```
const shareView = async() => {
    const returnValue = await consoleFrame.createSharedView();
    const {dashboardId, sharedViewId} = returnValue.message;
    const newEmbedUrl = await generateNewEmbedUrl(`/dashboards/${dashboardId}/views/${sharedViewId}`);
    setShareUrl(newEmbedUrl);
};

const generateNewEmbedUrl = async (initialPath) => {
    const generateUrlPayload = {
        experienceConfiguration: {
            QuickSightConsole: {
            InitialPath: initialPath,
            FeatureConfigurations: {
                "SharedView": { 
                    "Enabled": true
                 },
            },
        },
    }
    const result: GenerateEmbedUrlResult = await generateEmbedUrlForRegisteredUser(generateUrlPayload);
    return result.url;
};
```

------

# 使用一鍵式內嵌程式碼內嵌 Amazon Quick Sight 視覺效果和儀表板
<a name="1-click-embedding"></a>

您可以使用內嵌程式碼將視覺效果或儀表板嵌入應用程式中。當您共用儀表板或從 Amazon Quick Sight 中的**內嵌視覺**效果選單取得此程式碼。

您可以在已註冊使用者的內部應用程式中嵌入視覺效果或儀表板。或者，您可以在 Amazon Quick Sight 主控台中開啟公開共用。這樣做可讓網際網路上的任何人存取內嵌在公用應用程式、Wiki 或入口網站中的共用視覺效果或儀表板。

接下來，您可以找到有關如何使用一鍵式視覺效果或儀表板內嵌程式碼嵌入視覺效果和儀表板的說明。

**Topics**
+ [

# 使用一鍵式內嵌程式碼為已註冊使用者內嵌 Amazon Quick Sight 視覺效果和儀表板
](embedded-analytics-1-click.md)
+ [

# 使用一鍵式內嵌程式碼為匿名使用者內嵌 Amazon Quick Sight 視覺效果和儀表板
](embedded-analytics-1-click-public.md)

# 使用一鍵式內嵌程式碼為已註冊使用者內嵌 Amazon Quick Sight 視覺效果和儀表板
<a name="embedded-analytics-1-click"></a>


|  | 
| --- |
|  適用於：企業版  | 

您可以在內部應用程式中為 Amazon Quick Sight 帳戶的註冊使用者嵌入視覺效果或儀表板。您可以使用共用儀表板或從 Amazon Quick Sight 中的**內嵌視覺效果**選單取得的內嵌程式碼來執行此操作。您不需要執行 Amazon Quick Sight 內嵌 API 即可產生內嵌程式碼。您可以從 Amazon Quick Sight 複製內嵌程式碼，並將其貼到內部應用程式的 HTML 程式碼中。

當使用者和群組 （或 Amazon Quick Sight 帳戶上的所有使用者） 可以存取您要內嵌的儀表板，或擁有您要內嵌存取內部應用程式的視覺效果時，系統會提示他們使用其登入資料登入 Amazon Quick Sight 帳戶。通過身分驗證後，他們可以存取其內部頁面上的視覺效果或儀表板。如果您已啟用單一登入，則不會提示使用者再次登入。

接下來，您可以找到有關如何使用視覺效果或儀表板內嵌程式碼為已註冊使用者嵌入視覺效果或儀表板的描述。

## 開始之前
<a name="embedded-analytics-1-click-prerequisites"></a>

開始之前，請確認以下事項：
+ 您的網際網路瀏覽器設定包含以下項之一，以允許快顯窗口和 iframe 之間的通訊：
  + 對於 Mozilla 廣播頻道 API 的原生支援。如需詳細資訊，請參閱 Mozilla 文件中的[廣播頻道 API](https://developer.mozilla.org/en-US/docs/Web/API/Broadcast_Channel_API)。
  + IndexedDB 支援。
  + LocalStorage 支援。
+ 您的網際網路瀏覽器的「阻止所有 cookie」設定已關閉。

## 步驟 1：授予對儀表板的存取權
<a name="embedded-analystics-1-click-share"></a>

若要讓使用者存取內嵌式儀表板，請向他們授予檢視內嵌式儀表板的存取權。您可以授予個別使用者和群組存取儀表板的權限，或授予帳戶中的每個人存取權。視覺效果許可是在儀表板層級決定的。若要授予內嵌視覺效果的存取權，請授予視覺效果所屬儀表板的存取權。如需詳細資訊，請參閱[授予儀表板的存取權](share-a-dashboard.md)。

## 步驟 2：將要嵌入視覺效果或儀表板的域放在允許清單中
<a name="embedded-analytics-1-click-allow-list"></a>

若要在內部應用程式中嵌入視覺效果和儀表板，請確保在 Amazon Quick Sight 帳戶中允許列出您內嵌的網域。如需詳細資訊，請參閱[將靜態域新增至允許清單](manage-domains.md#embedding-static)。

## 步驟 3：取得內嵌程式
<a name="embedded-analytics-1-click-code"></a>

使用下列步驟來取得視覺效果或儀表板內嵌程式碼。

**若要取得儀表板內嵌程式碼**

1. 在 Amazon Quick Sight 中開啟發佈的儀表板，然後選擇右上角的**共用**。然後選擇**共用儀表板**。

1. 在開啟的**共用儀表板**頁面中，選擇左上角的**複製內嵌程式碼**。

   內嵌程式碼已複製到剪貼簿，類似以下項目。此範例中`quicksightdomain`的 是您用來存取 Amazon Quick Sight 帳戶的 URL。

   ```
   <iframe
           width="960"
           height="720"
           src="https://quicksightdomain/sn/embed/share/accounts/accountid/dashboards/dashboardid?directory_alias=account_directory_alias">
       </iframe>
   ```

**若要取得視覺效果內嵌程式碼**

1. 在 Amazon Quick Sight 中開啟已發佈的儀表板，然後選擇您要嵌入的視覺效果。然後開啟視覺效果右上角的視覺效果選單，選擇**內嵌視覺效果**。

1. 在開啟的**內嵌視覺效果**窗格中，選擇**複製程式碼**。

   內嵌程式碼已複製到剪貼簿，類似以下項目。此範例中`quicksightdomain`的 是您用來存取 Amazon Quick Sight 帳戶的 URL。

   ```
   <iframe
           width="600"
           height="400"
           src="https://quicksightdomain/sn/embed/share/accounts/111122223333/dashboards/DASHBOARDID/sheets/SHEETID>/visuals/VISUALID">
       </iframe>
   ```

## 步驟 4：將程式碼粘貼到內部應用程序的 HTML 頁面
<a name="embedded-analytics-1-click-html"></a>

使用下列程序將內嵌程式碼貼到內部應用程式的 HTML 頁面

**若要將程式碼粘貼到內部應用程序的 HTML 頁面**
+ 開啟您要嵌入儀表板的任何頁面的 HTML 程式碼，然後將內嵌程式碼貼入其中。

  下列範例展示了內嵌式儀表板的可能情況。此範例中`quicksightdomain`的 是您用來存取 Amazon Quick Sight 帳戶的 URL。

  ```
  <!DOCTYPE html>
      <html>
      <body>
  
      <h2>Example.com - Employee Portal</h2>
      <h3>Current shipment stats</h3>
          <iframe
          width="960"
          height="720"
          src="https://quicksightdomain/sn/embed/share/accounts/accountid/dashboards/dashboardid?directory_alias=account_directory_alias">
      </iframe>
  
      </body>
      </html>
  ```

  下列範例展示了內嵌式視覺效果的可能情況。此範例中`quicksightdomain`的 是您用來存取 Amazon Quick Sight 帳戶的 URL。

  ```
  <!DOCTYPE html>
      <html>
      <body>
  
      <h2>Example.com - Employee Portal</h2>
      <h3>Current shipment stats</h3>
          <iframe
          width="600"
          height="400"
          src="https://quicksightdomain/sn/embed/share/accounts/111122223333/dashboards/DASHBOARDID/sheets/SHEETID>/visuals/VISUALID?directory_alias=account_directory_alias">
      </iframe>
  
      </body>
      </html>
  ```

例如，假設您想要在 Google Sites 內部網頁中嵌入視覺效果或儀表板。您可以在 Google Sites 上開啟網頁，然後將內嵌程式碼貼到內嵌小工具中。

如果您想要在內部 Microsoft SharePoint 網站中內嵌您的視覺效果或儀表板，您可以建立新頁面，然後將內嵌程式碼貼到內嵌網頁部分中。

# 使用一鍵式內嵌程式碼為匿名使用者內嵌 Amazon Quick Sight 視覺效果和儀表板
<a name="embedded-analytics-1-click-public"></a>


|  | 
| --- |
|  適用於：企業版  | 

您可以使用在 Amazon Quick Sight 中共用視覺效果或儀表板時取得的內嵌程式碼，在公有網站中內嵌視覺效果或儀表板。您也可以使用 Amazon Quick Sight 主控台開啟公開共用，並自動將共用視覺效果或儀表板的存取權授予網際網路上的任何人。

接下來，您可以了解如何為視覺或儀表板開啟公開共用，以及如何嵌入視覺或儀表板讓任何人在網際網路上查看。在這兩種情況下，您都可以使用一鍵式內嵌程式碼來執行此操作。

## 開始之前
<a name="embedded-analytics-1-click-prerequisites"></a>

開始之前，請確認以下事項：
+ 您的網際網路瀏覽器設定包含下列其中一項，以允許快顯視窗與共用使用的 iframe 之間進行通訊：
  + 對於 Mozilla 廣播頻道 API 的原生支援。如需詳細資訊，請參閱 Mozilla 文件中的[廣播頻道 API](https://developer.mozilla.org/en-US/docs/Web/API/Broadcast_Channel_API)。
  + IndexedDB 支援。
  + LocalStorage 支援。
+ 您的網際網路瀏覽器的「阻止所有 cookie」設定已關閉。

## 步驟 1：開啟儀表板的公用存取權
<a name="embedded-analytics-1-click-step-1"></a>

若要讓網際網路上的任何人存取您的內嵌視覺效果或儀表板，請先開啟儀表板的公開存取權。視覺效果許可是在儀表板層級決定的。若要授予內嵌視覺效果的存取權，請授予視覺效果所屬儀表板的存取權。如需詳細資訊，請參閱[授予網際網路上任何人存取 Amazon Quick Sight 儀表板的權限](share-a-dashboard-grant-access-anyone.md)。

## 步驟 2：將要嵌入視覺效果或儀表板的域放在允許清單中
<a name="embedded-analytics-1-click-step-2"></a>

若要在公有應用程式、Wiki 或入口網站中嵌入視覺效果和儀表板，請確定您內嵌它的網域位於 Amazon Quick Sight 帳戶的允許清單中。

## 步驟 3：取得內嵌程式
<a name="embedded-analytics-1-click-step-3"></a>

使用下列步驟來取得視覺效果或儀表板內嵌程式碼。

**若要取得儀表板內嵌程式碼**

1. 在 Amazon Quick Sight 中開啟已發佈的儀表板，然後選擇右上角的**共用**。然後選擇**共用儀表板**。

1. 在開啟的**共用儀表板**頁面中，選擇左上角的**複製內嵌程式碼**。

   內嵌程式碼已複製到剪貼簿，類似以下項目。此範例中`quicksightdomain`的 是您用來存取 Amazon Quick Sight 帳戶的 URL。

   ```
   <iframe
           width="960"
           height="720"
           src="https://quicksightdomain/sn/
               embed/share/accounts/accountid/dashboards/dashboardid">
       </iframe>
   ```

**若要取得視覺效果內嵌程式碼**

1. 在 Amazon Quick Sight 中開啟發佈的儀表板，然後選擇您要嵌入的視覺效果。然後開啟視覺效果右上角的視覺效果選單，選擇**內嵌視覺效果**。

1. 在開啟的**內嵌視覺效果**窗格中，選擇**複製程式碼**。

   內嵌程式碼已複製到剪貼簿，類似以下項目。此範例中`quicksightdomain`的 是您用來存取 Amazon Quick Sight 帳戶的 URL。

   ```
   <iframe
           width="600"
           height="400"
           src="https://quicksightdomain/sn/embed/share/accounts/111122223333/dashboards/DASHBOARDID/sheets/SHEETID>/visuals/VISUALID">
       </iframe>
   ```

## 步驟 4：將內嵌程式碼貼到 HTML 頁面、Wiki 頁面或入口網站
<a name="embedded-analytics-1-click-step-4"></a>

使用下列程序將內嵌程式碼貼到 HTML 頁面、Wiki 頁面或入口網站。

**若要貼上內嵌程式碼**
+ 開啟您要嵌入視覺效果或儀表板的位置的 HTML 程式碼，然後將內嵌程式碼貼入其中。

  下列範例展示了內嵌式儀表板的可能情況。此範例中`quicksightdomain`的 是您用來存取 Amazon Quick Sight 帳戶的 URL。

  ```
  <!DOCTYPE html>
      <html>
      <body>
  
      <h2>Example.com - Employee Portal</h2>
      <h3>Current shipment stats</h3>
          <iframe
          width="960"
          height="720"
          src="https://quicksightdomain/sn/
              embed/share/accounts/accountid/dashboards/dashboardid">
      </iframe>
  
      </body>
      </html>
  ```

  下列範例展示了內嵌式視覺效果的可能情況。此範例中`quicksightdomain`的 是您用來存取 Amazon Quick Sight 帳戶的 URL。

  ```
  <!DOCTYPE html>
      <html>
      <body>
  
      <h2>Example.com - Employee Portal</h2>
      <h3>Current shipment stats</h3>
          <iframe
          width="600"
          height="400"
          src="https://quicksightdomain/sn/embed/share/accounts/111122223333/dashboards/DASHBOARDID/sheets/SHEETID>/visuals/VISUALID">
      </iframe>
  
      </body>
      </html>
  ```

如果您的公開應用程式是建立在 Google Sites 上的，請在 Google Sites 上開啟網頁，然後使用內嵌小工具貼上內嵌程式碼。

當您嵌入 Google 網站時，請確定 Amazon Quick Sight 中的下列網域位於您的允許清單中：
+ `https://googleusercontent.com` (開啟子網域)
+ `https://www.gstatic.com`
+ `https://sites.google.com`

在您的應用程式中內嵌視覺或儀表板之後，任何可以存取您應用程式的使用者皆可存取內嵌的視覺效果或儀表板。若要更新與公眾共用的儀表板，請參閱 [更新公開共用的儀表板](share-a-dashboard-grant-access-anyone-update.md)。若要關閉公開共用，請參閱 [關閉公開共用設定](share-a-dashboard-grant-access-anyone-no-share.md)。

當您關閉公開共用時，網際網路上的任何人都無法存取您內嵌在公用應用程式中或透過連結共用的儀表板。下次任何人嘗試從網際網路查看此類儀表板時，他們都會收到一條訊息，指出他們沒有查看儀表板的存取權。

# 使用 Amazon Quick Sight APIs 內嵌
<a name="embedded-analytics-api"></a>


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

只有幾個步驟涉及使用 Amazon Quick Sight APIs 內嵌分析的實際程序。

開始前，請確定您有下列項目：
+ 為應用程式使用的呼叫者身分設定必要的 IAM 許可，該身分將使用 AWS SDK 進行 API 呼叫。例如，授予允許 `quicksight:GenerateEmbedUrlForAnonymousUser` 或 `quicksight:GenerateEmbedUrlForRegisteredUser` 動作的許可。
+ 若要為已註冊的使用者嵌入 ，請事先與他們共用 Amazon Quick Sight 資產。對於新的驗證使用者，請了解如何授予資產存取權。其中一種方法是將所有資產新增至 Amazon Quick Sight 資料夾。如果您偏好使用 Amazon Quick Sight API，請使用 `DescribeDashboardPermissions`和 `UpdateDashboardPermissions` API 操作。如需詳細資訊，請參閱《*Amazon Quick API 參考*》中的 [DescribeDashboardPermissions](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_DescribeDashboardPermissions.html) 或 [UpdateDashboardPermissions](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_UpdateDashboardPermissions.html)。如果您想要與命名空間或群組中的所有使用者共用儀表板，您可以與 `namespace` 或 `group` 共用儀表板。
+ 如果您要嵌入儀表板，請確保具有要嵌入的儀表板的 ID。儀表板 ID 是儀表板 URL 中的代碼。您也可以從儀表板 URL 獲取它。
+ Amazon Quick Sight 管理員必須明確啟用您計劃嵌入 Amazon Quick Sight 分析的網域。您可以使用設定檔功能表中的**管理 Amazon Quick Sight**、**網域和內嵌**來執行此操作，也可以使用 `GenerateEmbedUrlForAnonymousUser`或 `GenerateEmbedUrlForRegisteredUser` API 呼叫的 `AllowedDomains` 參數。

  只有 Amazon Quick Sight 管理員可以看到此選項。您也可以將子網域新增為域的一部分。如需詳細資訊，請參閱[允許使用 Amazon Quick API 在執行時間列出網域](manage-domains.md#embedding-run-time)。

  必須明確允許靜態允許清單 (例如開發、預備和生產) 中的所有域，且必須使用 HTTPS。新增至允許清單中的域可多達 100 個。您可以使用 Amazon Quick Sight API 操作在執行時間新增網域。

完成所有先決條件後，嵌入 Amazon Quick Sight 會涉及下列步驟，稍後會更詳細地說明這些步驟：

1. 對於身分驗證，請使用應用程式伺服器來驗證使用者。在伺服器中驗證之後，請使用您需要的 AWS SDK 產生內嵌儀表板 URL。

1. 在您的 Web 入口網站或應用程式中，使用產生的 URL 內嵌 Amazon Quick Sight。若要簡化此程序，您可以使用 [NPMJS](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) 和 [GitHub](https://github.com/awslabs/amazon-quicksight-embedding-sdk) 上提供的 Amazon Quick Sight 內嵌 SDK。此自訂 JavaScript 開發套件旨在協助您有效地將 Amazon Quick Sight 整合到您的應用程式頁面、設定預設值、連接控制項、取得回呼和處理錯誤。

您可以使用 AWS CloudTrail 稽核日誌來取得內嵌儀表板數量、內嵌體驗的使用者和存取速率的相關資訊。

**Topics**
+ [

# 使用 Amazon Quick Sight API 內嵌 Amazon Quick Sight 儀表板
](embedding-dashboards.md)
+ [

# 使用 Amazon Quick Sight APIs 內嵌 Amazon Quick Sight 視覺效果
](embedding-visuals.md)
+ [

# 為已註冊使用者嵌入 Amazon Quick Sight 主控台的完整功能
](embedded-analytics-full-console-for-authenticated-users.md)
+ [

# 在 Amazon Quick Sight 生成式問答體驗中嵌入 Amazon Q
](embedding-gen-bi.md)
+ [

# 內嵌 Amazon Quick Sight Q 搜尋列 （傳統）
](embedding-quicksight-q.md)
+ [

# 使用 GetDashboardEmbedURL 和 GetSessionEmbedURL API 操作內嵌分析
](embedded-analytics-deprecated.md)

# 使用 Amazon Quick Sight API 內嵌 Amazon Quick Sight 儀表板
<a name="embedding-dashboards"></a>

使用下列主題來了解如何使用 Amazon Quick Sight API 內嵌儀表板。

**Topics**
+ [

# 內嵌已註冊使用者的 Amazon Quick Sight 儀表板
](embedded-analytics-dashboards-for-authenticated-users.md)
+ [

# 為匿名 （未註冊） 使用者嵌入 Amazon Quick Sight 儀表板
](embedded-analytics-dashboards-for-everyone.md)
+ [

# 在嵌入式儀表板中啟用執行摘要
](embedded-analytics-genbi-executive-summaries-dashboard.md)

# 內嵌已註冊使用者的 Amazon Quick Sight 儀表板
<a name="embedded-analytics-dashboards-for-authenticated-users"></a>

**重要**  
Amazon Quick Sight 有用於內嵌分析的新 API 操作： `GenerateEmbedUrlForAnonymousUser`和 `GenerateEmbedUrlForRegisteredUser`。  
您仍然可以使用 `GetDashboardEmbedUrl`和 `GetSessionEmbedUrl` API 操作來內嵌儀表板和 Amazon Quick Sight 主控台，但它們不包含最新的內嵌功能。如需使用舊 API 操作內嵌的詳細資訊，請參閱[使用 GetDashboardEmbedURL和 GetSessionEmbedURL API 操作內嵌分析](https://docs.aws.amazon.com/quicksight/latest/user/embedded-analytics-deprecated.html)。


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

在下列各節中，您可以找到有關如何為 Amazon Quick Sight 註冊使用者設定內嵌 Amazon Quick Sight 儀表板的詳細資訊。

**Topics**
+ [

## 步驟 1：設定許可
](#embedded-dashboards-for-authenticated-users-step-1)
+ [

## 步驟 2：產生帶有身分驗證碼的 URL
](#embedded-dashboards-for-authenticated-users-step-2)
+ [

## 步驟 3：內嵌儀表板 URL
](#embedded-dashboards-for-authenticated-users-step-3)

## 步驟 1：設定許可
<a name="embedded-dashboards-for-authenticated-users-step-1"></a>

在以下章節中，您可以了解如何為後端應用程式或 Web 伺服器設定許可。這個任務需要有 IAM 的管理存取權。

每個存取儀表板的使用者都會擔任一個角色，為他們提供儀表板的 Amazon Quick Sight 存取權和許可。若要實現這一點，請在 中建立 IAM 角色 AWS 帳戶。將 IAM 政策與此角色建立關聯，以提供許可給擔任此角色的任何使用者。IAM 角色需要提供許可，以擷取特定使用者集區的內嵌 URL。藉助萬用字元 *\$1*，您可以授予許可，以便為特定命名空間中的所有使用者，或特定命名空間中的使用者子集產生 URL。對於這一點，您新增 `quicksight:GenerateEmbedUrlForRegisteredUser`。

您可以在 IAM 政策中建立條件，以限制開發人員可在 `GenerateEmbedUrlForRegisteredUser` API 操作的 `AllowedDomains` 參數中列出的域。`AllowedDomains` 參數是選用參數。它授予您作為開發人員覆寫**管理 Amazon Quick Sight **選單中設定的靜態網域的選項。您則最多可以列出三個可存取產生之 URL 的域或子網域。然後，此 URL 將嵌入您建立的網站中。只有參數中列出的域可以存取內嵌視覺效果。如果沒有這種情況，您可以在 `AllowedDomains` 參數中列出網際網路上的任何域。

若要限制開發人員可搭配此參數使用的域，請在 IAM 政策中新增 `AllowedEmbeddingDomains` 條件。如需 `AllowedDomains` 參數的詳細資訊，請參閱《*Amazon Quick Sight API 參考*》中的 [GenerateEmbedUrlForRegisteredUser](https://docs.aws.amazon.com//quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html)。

**IAM 條件運算子的安全最佳實務**  
設定不當的 IAM 條件運算子可能會允許透過 URL 變化未經授權存取您的內嵌 Quick 資源。在 IAM 政策中使用 `quicksight:AllowedEmbeddingDomains`條件金鑰時，請使用允許特定網域或拒絕未明確允許的所有網域的條件運算子。如需 IAM 條件運算子的詳細資訊，請參閱《IAM [使用者指南》中的 IAM JSON 政策元素：條件運算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)。  
許多不同的 URL 變化可以指向相同的資源。例如，下列 URLs都會解析為相同的內容：  
`https://example.com`
`https://example.com/`
`https://Example.com`
如果您的政策使用未考慮這些 URL 變化的運算子，攻擊者可以透過提供同等的 URL 變化來繞過您的限制。  
您必須驗證 IAM 政策是否使用適當的條件運算子來防止繞過漏洞，並確保只有您預期的網域可以存取您的內嵌資源。

下列範例政策提供這些許可。

此外，如果您要建立將成為 Amazon Quick Sight 讀者的第一次使用者，請務必在政策中新增 `quicksight:RegisterUser`許可。

下列範例政策提供許可，以擷取初次成為 Amazon Quick Sight 讀取器之使用者的內嵌 URL。

最後，您的應用程式的 IAM 身分必須有相關聯的信任政策，以允許存取至您剛建立的角色。這表示當使用者存取您的應用程式時，您的應用程式可以代表使用者擔任該角色，並在 Amazon Quick Sight 中佈建使用者。範例信任政策如下所示。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowLambdaFunctionsToAssumeThisRole",
            "Effect": "Allow",
            "Principal": {
                "Service": "lambda.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        },
        {
            "Sid": "AllowEC2InstancesToAssumeThisRole",
            "Effect": "Allow",
            "Principal": {
                "Service": "ec2.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

如需 OpenID Connect 或 SAML 身分驗證的信任政策詳細資訊，請參閱 *IAM 使用者指南*的下列各節：
+ [建立 Web 身分或 OpenID Connect 聯合身分的角色 (主控台)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_oidc.html)
+ [建立 SAML 2.0 聯合身分的角色 (主控台)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html)

## 步驟 2：產生帶有身分驗證碼的 URL
<a name="embedded-dashboards-for-authenticated-users-step-2"></a>

在下一章節，您可以了解如何在您的應用程式伺服器上驗證使用者，以及取得可內嵌的儀表板 URL。如果您打算內嵌 IAM 或 Amazon Quick Sight 身分類型的儀表板，請與使用者共用儀表板。

當使用者存取您的應用程式時，該應用程式代表使用者擔任 IAM 角色。然後，如果使用者尚未存在，它會將使用者新增至 Amazon Quick Sight。接著，它傳遞識別符當作唯一的角色工作階段 ID。

執行這些步驟可確保儀表板的每個檢視器都是在 Amazon Quick Sight 中唯一佈建。它還會強制執行個別使用者設定，例如資料列層級的安全性和參數的動態預設值。

下列範例會代表使用者執行 IAM 身分驗證。此代碼在您的應用程式伺服器上運行。

### Java
<a name="embedded-dashboards-for-authenticated-users-java"></a>

```
import com.amazonaws.auth.AWSCredentials;
    import com.amazonaws.auth.BasicAWSCredentials;
    import com.amazonaws.auth.AWSCredentialsProvider;
    import com.amazonaws.regions.Regions;
    import com.amazonaws.services.quicksight.AmazonQuickSight;
    import com.amazonaws.services.quicksight.AmazonQuickSightClientBuilder;
    import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForRegisteredUserRequest;
    import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForRegisteredUserResult;
    import com.amazonaws.services.quicksight.model.RegisteredUserEmbeddingExperienceConfiguration;
    import com.amazonaws.services.quicksight.model.RegisteredUserDashboardEmbeddingConfiguration;

    /**
    * Class to call QuickSight AWS SDK to get url for dashboard embedding.
    */
    public class GetQuicksightEmbedUrlRegisteredUserDashboardEmbedding {

        private final AmazonQuickSight quickSightClient;

        public GetQuicksightEmbedUrlRegisteredUserDashboardEmbedding() {
            this.quickSightClient = AmazonQuickSightClientBuilder
                    .standard()
                    .withRegion(Regions.US_EAST_1.getName())
                    .withCredentials(new AWSCredentialsProvider() {
                        @Override
                        public AWSCredentials getCredentials() {
                            // provide actual IAM access key and secret key here
                            return new BasicAWSCredentials("access-key", "secret-key");
                        }

                        @Override
                        public void refresh() {}
                        }
                    )
                    .build();
        }

        public String getQuicksightEmbedUrl(
                final String accountId, // AWS Account ID
                final String dashboardId, // Dashboard ID to embed
                final List<String> allowedDomains, // Runtime allowed domain for embedding
                final String userArn // Registered user arn to use for embedding. Refer to Get Embed Url section in developer portal to find out how to get user arn for a QuickSight user.
        ) throws Exception {
            final RegisteredUserEmbeddingExperienceConfiguration experienceConfiguration = new RegisteredUserEmbeddingExperienceConfiguration()
                    .withDashboard(new RegisteredUserDashboardEmbeddingConfiguration().withInitialDashboardId(dashboardId));
            final GenerateEmbedUrlForRegisteredUserRequest generateEmbedUrlForRegisteredUserRequest = new GenerateEmbedUrlForRegisteredUserRequest();
            generateEmbedUrlForRegisteredUserRequest.setAwsAccountId(accountId);
            generateEmbedUrlForRegisteredUserRequest.setUserArn(userArn);
            generateEmbedUrlForRegisteredUserRequest.setAllowedDomains(allowedDomains);
            generateEmbedUrlForRegisteredUserRequest.setExperienceConfiguration(experienceConfiguration);

            final GenerateEmbedUrlForRegisteredUserResult generateEmbedUrlForRegisteredUserResult = quickSightClient.generateEmbedUrlForRegisteredUser(generateEmbedUrlForRegisteredUserRequest);

            return generateEmbedUrlForRegisteredUserResult.getEmbedUrl();
        }
    }
```

### JavaScript
<a name="embedded-dashboards-for-authenticated-users-js"></a>

```
global.fetch = require('node-fetch');
    const AWS = require('aws-sdk');

    function generateEmbedUrlForRegisteredUser(
        accountId,
        dashboardId,
        openIdToken, // Cognito-based token
        userArn, // registered user arn
        roleArn, // IAM user role to use for embedding
        sessionName, // Session name for the roleArn assume role
        allowedDomains, // Runtime allowed domain for embedding
        getEmbedUrlCallback, // GetEmbedUrl success callback method
        errorCallback // GetEmbedUrl error callback method
        ) {
        const stsClient = new AWS.STS();
        let stsParams = {
            RoleSessionName: sessionName,
            WebIdentityToken: openIdToken,
            RoleArn: roleArn
        }

        stsClient.assumeRoleWithWebIdentity(stsParams, function(err, data) {
            if (err) {
                console.log('Error assuming role');
                console.log(err, err.stack);
                errorCallback(err);
            } else {
                const getDashboardParams = {
                    "AwsAccountId": accountId,
                    "ExperienceConfiguration": {
                        "Dashboard": {
                            "InitialDashboardId": dashboardId
                        }
                    },
                    "UserArn": userArn,
                    "AllowedDomains": allowedDomains,
                    "SessionLifetimeInMinutes": 600
                };

                const quicksightClient = new AWS.QuickSight({
                    region: process.env.AWS_REGION,
                    credentials: {
                        accessKeyId: data.Credentials.AccessKeyId,
                        secretAccessKey: data.Credentials.SecretAccessKey,
                        sessionToken: data.Credentials.SessionToken,
                        expiration: data.Credentials.Expiration
                    }
                });

                quicksightClient.generateEmbedUrlForRegisteredUser(getDashboardParams, function(err, data) {
                    if (err) {
                        console.log(err, err.stack);
                        errorCallback(err);
                    } else {
                        const result = {
                            "statusCode": 200,
                            "headers": {
                                "Access-Control-Allow-Origin": "*", // Use your website domain to secure access to GetEmbedUrl API
                                "Access-Control-Allow-Headers": "Content-Type"
                            },
                            "body": JSON.stringify(data),
                            "isBase64Encoded": false
                        }
                        getEmbedUrlCallback(result);
                    }
                });
            }
        });
    }
```

### Python3
<a name="embedded-dashboards-for-authenticated-users-py"></a>

```
import json
import boto3
from botocore.exceptions import ClientError

sts = boto3.client('sts')

# Function to generate embedded URL  
# accountId: AWS account ID
# dashboardId: Dashboard ID to embed
# userArn: arn of registered user
# allowedDomains: Runtime allowed domain for embedding
# roleArn: IAM user role to use for embedding
# sessionName: session name for the roleArn assume role
def getEmbeddingURL(accountId, dashboardId, userArn, allowedDomains, roleArn, sessionName):
    try:
        assumedRole = sts.assume_role(
            RoleArn = roleArn,
            RoleSessionName = sessionName,
        )
    except ClientError as e:
        return "Error assuming role: " + str(e)
    else: 
        assumedRoleSession = boto3.Session(
            aws_access_key_id = assumedRole['Credentials']['AccessKeyId'],
            aws_secret_access_key = assumedRole['Credentials']['SecretAccessKey'],
            aws_session_token = assumedRole['Credentials']['SessionToken'],
        )
        try:
            quicksightClient = assumedRoleSession.client('quicksight', region_name='us-west-2')
            response = quicksightClient.generate_embed_url_for_registered_user(
                AwsAccountId=accountId,
                ExperienceConfiguration = {
                    "Dashboard": {
                        "InitialDashboardId": dashboardId
                    }
                },
                UserArn = userArn,
                AllowedDomains = allowedDomains,
                SessionLifetimeInMinutes = 600
            )
            
            return {
                'statusCode': 200,
                'headers': {"Access-Control-Allow-Origin": "*", "Access-Control-Allow-Headers": "Content-Type"},
                'body': json.dumps(response),
                'isBase64Encoded':  bool('false')
            }
        except ClientError as e:
            return "Error generating embedding url: " + str(e)
```

### Node.js
<a name="embedded-dashboards-for-authenticated-users-node"></a>

以下範例顯示的 JavaScript (Node.js) 可在應用程式伺服器上用來產生嵌入式儀表板的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示儀表板。

**Example**  

```
const AWS = require('aws-sdk');
    const https = require('https');

    var quicksightClient = new AWS.Service({
        apiConfig: require('./quicksight-2018-04-01.min.json'),
        region: 'us-east-1',
    });

    quicksightClient.generateEmbedUrlForRegisteredUser({
        'AwsAccountId': '111122223333',
        'ExperienceConfiguration': { 
            'Dashboard': {
                'InitialDashboardId': '1c1fe111-e2d2-3b30-44ef-a0e111111cde'
            }
        },
        'UserArn': 'REGISTERED_USER_ARN',
        'AllowedDomains': allowedDomains,
        'SessionLifetimeInMinutes': 100
    }, function(err, data) {
        console.log('Errors: ');
        console.log(err);
        console.log('Response: ');
        console.log(data);
    });
```

**Example**  

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
    //readability and added ellipsis to indicate that it's incomplete.
        { 
            Status: 200,
            EmbedUrl: 'https://quicksightdomain/embed/12345/dashboards/67890...'
            RequestId: '7bee030e-f191-45c4-97fe-d9faf0e03713' 
        }
```

### .NET/C\$1
<a name="embedded-dashboards-for-authenticated-users-cs"></a>

以下範例顯示的 .NET/C\$1 程式碼可在應用程式伺服器上用來產生嵌入式儀表板的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示儀表板。

**Example**  

```
using System;
    using Amazon.QuickSight;
    using Amazon.QuickSight.Model;

    namespace GenerateDashboardEmbedUrlForRegisteredUser
    {
        class Program
        {
            static void Main(string[] args)
            {
                var quicksightClient = new AmazonQuickSightClient(
                    AccessKey,
                    SecretAccessKey,
                    SessionToken,
                    Amazon.RegionEndpoint.USEast1);
                try
                {
                    RegisteredUserDashboardEmbeddingConfiguration registeredUserDashboardEmbeddingConfiguration
                        = new RegisteredUserDashboardEmbeddingConfiguration
                        {
                            InitialDashboardId = "dashboardId"
                        };
                    RegisteredUserEmbeddingExperienceConfiguration registeredUserEmbeddingExperienceConfiguration
                        = new RegisteredUserEmbeddingExperienceConfiguration
                        {
                            Dashboard = registeredUserDashboardEmbeddingConfiguration
                        };
                        
                    Console.WriteLine(
                        quicksightClient.GenerateEmbedUrlForRegisteredUserAsync(new GenerateEmbedUrlForRegisteredUserRequest
                        {
                            AwsAccountId = "111122223333",
                            ExperienceConfiguration = registeredUserEmbeddingExperienceConfiguration,
                            UserArn = "REGISTERED_USER_ARN",
                            AllowedDomains = allowedDomains,
                            SessionLifetimeInMinutes = 100
                        }).Result.EmbedUrl
                    );
                } catch (Exception ex) {
                    Console.WriteLine(ex.Message);
                }
            }
        }
    }
```

### AWS CLI
<a name="embedded-dashboards-for-authenticated-users-cli"></a>

若要擔任角色，請選擇下列其中一個 AWS Security Token Service (AWS STS) API 操作：
+ [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) – 在使用 IAM 身分擔任角色的情況下使用此操作。
+ [AssumeRoleWithWebIdentity](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html) – 在使用 Web 身分提供者驗證您的使用者時，請使用此操作。
+ [AssumeRoleWithSaml](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html) –在您使用 SAML 驗證使用者時，請使用此操作。

以下範例顯示用來設定 IAM 角色的 CLI 命令。角色需要啟用 `quicksight:GenerateEmbedUrlForRegisteredUser` 的許可。如果您正在採取即時方法在使用者第一次開啟儀表板時新增使用者，則該角色也需要啓用 `quicksight:RegisterUser` 的許可。

```
aws sts assume-role \
        --role-arn "arn:aws:iam::111122223333:role/embedding_quicksight_dashboard_role" \
        --role-session-name john.doe@example.com
```

`assume-role` 操作會傳回三個輸出參數：存取金鑰、私密金鑰和工作階段字符。

**注意**  
若您呼叫 `AssumeRole` 操作時收到 `ExpiredToken` 錯誤，原因可能是先前的 `SESSION TOKEN` 仍在環境變數中。設定以下變數便可清除此錯誤：  
*AWS\$1ACCESS\$1KEY\$1ID* 
*AWS\$1SECRET\$1ACCESS\$1KEY* 
*AWS\$1SESSION\$1TOKEN* 

以下範例說明如何在 CLI 中設定這三個參數。如果您使用 Microsoft Windows 電腦，請使用 `set`，不要使用 `export`。

```
export AWS_ACCESS_KEY_ID     = "access_key_from_assume_role"
    export AWS_SECRET_ACCESS_KEY = "secret_key_from_assume_role"
    export AWS_SESSION_TOKEN     = "session_token_from_assume_role"
```

對於瀏覽您網站的使用者，執行這些命令可將其角色工作階段 ID 設為 `embedding_quicksight_dashboard_role/john.doe@example.com`。角色工作階段 ID 由來自 `role-arn` 和 `role-session-name` 值的角色名稱所組成。對每個使用者使用唯一的角色工作階段 ID，可確保為每個使用者設定適當的許可。還能避免對使用者存取進行任何調節。*調節*是一項安全功能，可防止相同的使用者從多個位置存取 Amazon Quick Sight。

角色工作階段 ID 也會成為 Amazon Quick Sight 中的使用者名稱。您可以使用此模式提前在 Amazon Quick Sight 中佈建使用者，或在使用者第一次存取儀表板時佈建他們。

以下範例顯示可用來佈建使用者的 CLI 命令。如需 [RegisterUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_RegisterUser.html)、[DescribeUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_DescribeUser.html) 和其他 Amazon Quick Sight API 操作的詳細資訊，請參閱 [Amazon Quick Sight API 參考](https://docs.aws.amazon.com/quicksight/latest/APIReference/Welcome.html)。

```
aws quicksight register-user \
        --aws-account-id 111122223333 \
        --namespace default \
        --identity-type IAM \
        --iam-arn "arn:aws:iam::111122223333:role/embedding_quicksight_dashboard_role" \
        --user-role READER \
        --user-name jhnd \
        --session-name "john.doe@example.com" \
        --email john.doe@example.com \
        --region us-east-1 \
        --custom-permissions-name TeamA1
```

如果使用者是透過 Microsoft AD 進行身分驗證，您就不需要使用 `RegisterUser` 設定他們。相反地，他們應在第一次存取 Amazon Quick Sight 時自動訂閱。若是 Microsoft AD 使用者，您可以使用 `DescribeUser` 取得使用者的 ARN。

使用者第一次存取 Amazon Quick Sight 時，您也可以將此使用者新增至與儀表板共用的群組。以下範例顯示用於將使用者新增至群組的 CLI 命令。

```
aws quicksight create-group-membership \
    --aws-account-id=111122223333 \
    --namespace=default \
    --group-name=financeusers \
    --member-name="embedding_quicksight_dashboard_role/john.doe@example.com"
```

您現在擁有的應用程式使用者也是 Amazon Quick Sight 的使用者，以及有權存取儀表板的使用者。

最後，為了取得儀表板的簽章 URL，請從應用程式伺服器呼叫 `generate-embed-url-for-registered-user`。這會傳回可嵌入的儀表板 URL。下列範例示範如何使用伺服器端呼叫為透過 AWS Managed Microsoft AD 或單一登入 (IAM Identity Center) 驗證的使用者產生內嵌儀表板的 URL。

```
aws quicksight generate-embed-url-for-registered-user \
        --aws-account-id 111122223333 \
        --session-lifetime-in-minutes 600 \
        --user-arn arn:aws:quicksight:us-east-1:111122223333:user/default/embedding_quicksight_visual_role/embeddingsession \
        --allowed-domains '["domain1","domain2"]' \
        --experience-configuration Dashboard={InitialDashboardId=1a1ac2b2-3fc3-4b44-5e5d-c6db6778df89}
```

如需使用此操作的詳細資訊，請參閱 [https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html)。您可以在您自己的程式碼中使用這個和其他 API 操作。

## 步驟 3：內嵌儀表板 URL
<a name="embedded-dashboards-for-authenticated-users-step-3"></a>

在下一節中，您可以了解如何使用 [Amazon Quick Sight 內嵌 SDK](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) (JavaScript) 在網站或應用程式頁面的步驟 3 中內嵌儀表板 URL。您可以使用此 SDK 執行以下操作：
+ 將儀表板放在 HTML 頁面。
+ 將參數傳遞到儀表板。
+ 以針對您的應用程式而訂做的訊息來處理錯誤狀態。

呼叫 `GenerateEmbedUrlForRegisteredUser` API 操作以產生可嵌入應用程式的 URL。此 URL 的有效期為 5 分鐘，而產生的工作階段有效期最長為 10 小時。此 API 操作提供的 URL 附有可啟用單一登入工作階段的 `auth_code`。

以下是 `generate-embed-url-for-registered-user` 的回應範例。

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
//readability and added ellipsis to indicate that it's incomplete.
    {
        "Status": "200",
        "EmbedUrl": "https://quicksightdomain/embed/12345/dashboards/67890..",
        "RequestId": "7bee030e-f191-45c4-97fe-d9faf0e03713"
    }
```

使用 [Amazon Quick Sight 內嵌 SDK ](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk)或將此 URL 新增至 iframe，將此儀表板內嵌在您的網頁中。如果您設定固定高度和寬度數字 （以像素為單位），Amazon Quick Sight 會使用這些值，而且不會隨著視窗調整大小而變更視覺效果。如果您設定相對百分比高度和寬度，Amazon Quick Sight 會提供隨著視窗大小變更而修改的回應式配置。透過使用 Amazon Quick Sight 內嵌 SDK，您也可以控制儀表板中的參數，並根據頁面載入完成和錯誤接收回呼。

即將託管內嵌式儀表板的域必須列在*允許清單*中，此為您的 Quick 訂閱已獲核准的域清單。這項要求將使未獲核准的網域無法託管嵌入儀表板，進而保護您的資料。如需為內嵌儀表板新增網域的詳細資訊，請參閱[使用 Amazon Quick Sight API 在執行時間允許列出網域](https://docs.aws.amazon.com/quicksight/latest/user/embedding-run-time.html)。

下列範例示範如何使用產生的 URL。此代碼在您的應用程式伺服器上生成。

### SDK 2.0
<a name="embedded-dashboards-for-authenticated-users-sdkv2"></a>

```
<!DOCTYPE html>
<html>

    <head>
        <title>Dashboard Embedding Example</title>
        <script src="https://unpkg.com/amazon-quicksight-embedding-sdk@2.0.0/dist/quicksight-embedding-js-sdk.min.js"></script>
        <script type="text/javascript">
            const embedDashboard = async() => {
                const {
                    createEmbeddingContext,
                } = QuickSightEmbedding;

                const embeddingContext = await createEmbeddingContext({
                    onChange: (changeEvent, metadata) => {
                        console.log('Context received a change', changeEvent, metadata);
                    },
                });

                const frameOptions = {
                    url: '<YOUR_EMBED_URL>',
                    container: '#experience-container',
                    height: "700px",
                    width: "1000px",
                    onChange: (changeEvent, metadata) => {
                        switch (changeEvent.eventName) {
                            case 'FRAME_MOUNTED': {
                                console.log("Do something when the experience frame is mounted.");
                                break;
                            }
                            case 'FRAME_LOADED': {
                                console.log("Do something when the experience frame is loaded.");
                                break;
                            }
                        }
                    },
                };

                const contentOptions = {
                    parameters: [
                        {
                            Name: 'country',
                            Values: [
                                'United States'
                            ],
                        },
                        {
                            Name: 'states',
                            Values: [
                                'California',
                                'Washington'
                            ]
                        }
                    ],
                    locale: "en-US",
                    sheetOptions: {
                        initialSheetId: '<YOUR_SHEETID>',
                        singleSheet: false,                        
                        emitSizeChangedEventOnSheetChange: false,
                    },
                    toolbarOptions: {
                        export: false,
                        undoRedo: false,
                        reset: false
                    },
                    attributionOptions: {
                        overlayContent: false,
                    },
                    onMessage: async (messageEvent, experienceMetadata) => {
                        switch (messageEvent.eventName) {
                            case 'CONTENT_LOADED': {
                                console.log("All visuals are loaded. The title of the document:", messageEvent.message.title);
                                break;
                            }
                            case 'ERROR_OCCURRED': {
                                console.log("Error occurred while rendering the experience. Error code:", messageEvent.message.errorCode);
                                break;
                            }
                            case 'PARAMETERS_CHANGED': {
                                console.log("Parameters changed. Changed parameters:", messageEvent.message.changedParameters);
                                break;
                            }
                            case 'SELECTED_SHEET_CHANGED': {
                                console.log("Selected sheet changed. Selected sheet:", messageEvent.message.selectedSheet);
                                break;
                            }
                            case 'SIZE_CHANGED': {
                                console.log("Size changed. New dimensions:", messageEvent.message);
                                break;
                            }
                            case 'MODAL_OPENED': {
                                window.scrollTo({
                                    top: 0 // iframe top position
                                });
                                break;
                            }
                        }
                    },
                };
                const embeddedDashboardExperience = await embeddingContext.embedDashboard(frameOptions, contentOptions);

                const selectCountryElement = document.getElementById('country');
                selectCountryElement.addEventListener('change', (event) => {
                    embeddedDashboardExperience.setParameters([
                        {
                            Name: 'country',
                            Values: event.target.value
                        }
                    ]);
                });
            };
        </script>
    </head>

    <body onload="embedDashboard()">
        <span>
            <label for="country">Country</label>
            <select id="country" name="country">
                <option value="United States">United States</option>
                <option value="Mexico">Mexico</option>
                <option value="Canada">Canada</option>
            </select>
        </span>
        <div id="experience-container"></div>
    </body>

</html>
```

### SDK 1.0
<a name="embedded-dashboards-for-authenticated-users-sdkv1"></a>

```
<!DOCTYPE html>
<html>

    <head>
        <title>Basic Embed</title>
        <script src="https://unpkg.com/amazon-quicksight-embedding-sdk@1.0.15/dist/quicksight-embedding-js-sdk.min.js"></script>
        <script type="text/javascript">
            var dashboard
            function onDashboardLoad(payload) {
                console.log("Do something when the dashboard is fully loaded.");
            }

            function onError(payload) {
                console.log("Do something when the dashboard fails loading");
            }

            function embedDashboard() {
                var containerDiv = document.getElementById("embeddingContainer");
                var options = {
                    // replace this dummy url with the one generated via embedding API
                    url: "https://us-east-1.quicksight.aws.amazon.com/sn/dashboards/dashboardId?isauthcode=true&identityprovider=quicksight&code=authcode",
                    container: containerDiv,
                    parameters: {
                        country: "United States"
                    },
                    scrolling: "no",
                    height: "700px",
                    width: "1000px",
                    locale: "en-US",
                    footerPaddingEnabled: true
                };
                dashboard = QuickSightEmbedding.embedDashboard(options);
                dashboard.on("error", onError);
                dashboard.on("load", onDashboardLoad);
            }

            function onCountryChange(obj) {
                dashboard.setParameters({country: obj.value});
            }
        </script>
    </head>

    <body onload="embedDashboard()">
        <span>
            <label for="country">Country</label>
            <select id="country" name="country" onchange="onCountryChange(this)">
                <option value="United States">United States</option>
                <option value="Mexico">Mexico</option>
                <option value="Canada">Canada</option>
            </select>
        </span>
        <div id="embeddingContainer"></div>
    </body>

</html>
```

若要讓此範例運作，請務必使用 Amazon Quick Sight 內嵌 SDK，使用 JavaScript 在您的網站上載入內嵌儀表板。為獲得您的版本，請執行以下其中一項操作：
+ 從 GitHub 下載 [Amazon Quick Sight 內嵌 SDK](https://github.com/awslabs/amazon-quicksight-embedding-sdk#step-3-create-the-quicksight-session-object)。此儲存庫由一組 Amazon Quick Sight 開發人員維護。
+ 從 [https://www.npmjs.com/package/amazon-quicksight-embedding-sdk](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) 下載最新的內嵌開發套件版本。
+ 如果您使用 JavaScript 相依性的 `npm`，請執行下列命令來下載並安裝它。

  ```
  npm install amazon-quicksight-embedding-sdk
  ```

# 為匿名 （未註冊） 使用者嵌入 Amazon Quick Sight 儀表板
<a name="embedded-analytics-dashboards-for-everyone"></a>

**重要**  
Amazon Quick Sight 有用於內嵌分析的新 API 操作： `GenerateEmbedUrlForAnonymousUser`和 `GenerateEmbedUrlForRegisteredUser`。  
您仍然可以使用 `GetDashboardEmbedUrl`和 `GetSessionEmbedUrl` API 操作來內嵌儀表板和 Amazon Quick Sight 主控台，但它們不包含最新的內嵌功能。如需使用舊 API 操作內嵌的詳細資訊，請參閱[使用 GetDashboardEmbedURL和 GetSessionEmbedURL API 操作內嵌分析](https://docs.aws.amazon.com/quicksight/latest/user/embedded-analytics-deprecated.html)。


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

在下列各節中，您可以找到有關如何為匿名 （未註冊） 使用者設定內嵌 Amazon Quick Sight 儀表板的詳細資訊。

**Topics**
+ [

## 步驟 1：設定許可
](#embedded-analytics-dashboards-with-anonymous-users-step-1)
+ [

## 步驟 2：產生帶有身分驗證碼的 URL
](#embedded-analytics-dashboards-with-anonymous-users-step-2)
+ [

## 步驟 3：內嵌儀表板 URL
](#embedded-analytics-dashboards-with-anonymous-users-step-3)

## 步驟 1：設定許可
<a name="embedded-analytics-dashboards-with-anonymous-users-step-1"></a>


|  | 
| --- |
|  適用於：企業版本  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

在以下章節中，您可以了解如何為後端應用程式或 Web 伺服器設定許可。這個任務需要有 IAM 的管理存取權。

每個存取儀表板的使用者都會擔任一個角色，為他們提供儀表板的 Amazon Quick Sight 存取權和許可。若要實現這一點，請在 中建立 IAM 角色 AWS 帳戶。將 IAM 政策與此角色建立關聯，以提供許可給擔任此角色的任何使用者。

您可以在 IAM 政策中建立條件，以限制開發人員可在 `GenerateEmbedUrlForAnonymousUser` API 操作的 `AllowedDomains` 參數中列出的域。`AllowedDomains` 參數是選用參數。它授予身為開發人員的選項，讓您覆寫在**管理 Amazon Quick Sight **選單中設定的靜態網域。您則最多可以列出三個可存取產生之 URL 的域或子網域。然後，此 URL 將嵌入您建立的網站中。只有參數中列出的域可以存取內嵌式儀表板。如果沒有這種情況，您可以在 `AllowedDomains` 參數中列出網際網路上的任何域。

若要限制開發人員可搭配此參數使用的域，請在 IAM 政策中新增 `AllowedEmbeddingDomains` 條件。如需 `AllowedDomains` 參數的詳細資訊，請參閱《*Amazon Quick Sight API 參考*》中的 [GenerateEmbedUrlForAnonymousUser](https://docs.aws.amazon.com//quicksight/latest/APIReference/API_GenerateEmbedUrlForAnonymousUser.html)。

**IAM 條件運算子的安全最佳實務**  
設定不當的 IAM 條件運算子可能會允許透過 URL 變化未經授權存取您的內嵌 Quick 資源。在 IAM 政策中使用 `quicksight:AllowedEmbeddingDomains`條件金鑰時，請使用允許特定網域或拒絕未明確允許的所有網域的條件運算子。如需 IAM 條件運算子的詳細資訊，請參閱《IAM [使用者指南》中的 IAM JSON 政策元素：條件運算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)。  
許多不同的 URL 變化可以指向相同的資源。例如，下列 URLs都會解析為相同的內容：  
`https://example.com`
`https://example.com/`
`https://Example.com`
如果您的政策使用未考慮這些 URL 變化的運算子，攻擊者可以透過提供同等的 URL 變化來繞過您的限制。  
您必須驗證 IAM 政策是否使用適當的條件運算子來防止繞過漏洞，並確保只有您預期的網域可以存取您的內嵌資源。

下列範例政策提供搭配 `GenerateEmbedUrlForAnonymousUser` 使用的許可。若要使這種方法生效，您的 AWS 帳戶還需要一個工作階段套件。或工作階段容量定價。否則，當使用者嘗試存取儀表板時，會傳回錯誤 `UnsupportedPricingPlanException`。

您的應用程式的 IAM 身分必須有相關聯的信任政策，以允許存取至您剛建立的角色。這表示當使用者存取您的應用程式時，您的應用程式可代表使用者擔任該角色，並開啟儀表板。範例信任政策如下所示。

------
#### [ JSON ]

****  

```
{
"Version":"2012-10-17",		 	 	 
"Statement": [
    {
        "Sid": "AllowLambdaFunctionsToAssumeThisRole",
        "Effect": "Allow",
        "Principal": {
            "Service": "lambda.amazonaws.com"
        },
        "Action": "sts:AssumeRole"
    },
    {
        "Sid": "AllowEC2InstancesToAssumeThisRole",
        "Effect": "Allow",
        "Principal": {
            "Service": "ec2.amazonaws.com"
        },
        "Action": "sts:AssumeRole"
    }
]
}
```

------

如需有關信任政策的詳細資訊，請參閱**《IAM 使用者指南》中的[ IAM 中的臨時安全憑證](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html)。

## 步驟 2：產生帶有身分驗證碼的 URL
<a name="embedded-analytics-dashboards-with-anonymous-users-step-2"></a>


|  | 
| --- |
|  適用於：企業版本  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

在下一章節，您可以了解如何在您的應用程式伺服器上代表匿名訪客進行身分驗證，以及取得可內嵌的儀表板 URL。

當使用者存取您的應用程式時，該應用程式代表使用者擔任 IAM 角色。然後，如果使用者尚未存在，它會將使用者新增至 Amazon Quick Sight。接著，它傳遞識別符當作唯一的角色工作階段 ID。

下列範例會代表使用者執行 IAM 身分驗證。它傳遞識別符當作唯一的角色工作階段 ID。此代碼在您的應用程式伺服器上運行。

### Java
<a name="embedded-analytics-dashboards-with-anonymous-users-java"></a>

```
import java.util.List;
    import com.amazonaws.auth.AWSCredentials;
    import com.amazonaws.auth.AWSCredentialsProvider;
    import com.amazonaws.auth.BasicAWSCredentials;
    import com.amazonaws.regions.Regions;
    import com.amazonaws.services.quicksight.AmazonQuickSight;
    import com.amazonaws.services.quicksight.AmazonQuickSightClientBuilder;
    import com.amazonaws.services.quicksight.model.RegisteredUserDashboardEmbeddingConfiguration;
    import com.amazonaws.services.quicksight.model.AnonymousUserEmbeddingExperienceConfiguration;
    import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForAnonymousUserRequest;
    import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForAnonymousUserResult;
    import com.amazonaws.services.quicksight.model.SessionTag;


    /**
    * Class to call QuickSight AWS SDK to generate embed url for anonymous user.
    */
    public class GenerateEmbedUrlForAnonymousUserExample {

        private final AmazonQuickSight quickSightClient;

        public GenerateEmbedUrlForAnonymousUserExample() {
            quickSightClient = AmazonQuickSightClientBuilder
                .standard()
                .withRegion(Regions.US_EAST_1.getName())
                .withCredentials(new AWSCredentialsProvider() {
                        @Override
                        public AWSCredentials getCredentials() {
                            // provide actual IAM access key and secret key here
                            return new BasicAWSCredentials("access-key", "secret-key");
                        }

                        @Override
                        public void refresh() {
                        }
                    }
                )
                .build();
        }

        public String GenerateEmbedUrlForAnonymousUser(
            final String accountId, // YOUR AWS ACCOUNT ID
            final String initialDashboardId, // DASHBOARD ID TO WHICH THE CONSTRUCTED URL POINTS.
            final String namespace, // ANONYMOUS EMBEDDING REQUIRES SPECIFYING A VALID NAMESPACE FOR WHICH YOU WANT THE EMBEDDING URL
            final List<String> authorizedResourceArns, // DASHBOARD ARN LIST TO EMBED
            final List<String> allowedDomains, // RUNTIME ALLOWED DOMAINS FOR EMBEDDING
            final List<SessionTag> sessionTags // SESSION TAGS USED FOR ROW-LEVEL SECURITY
        ) throws Exception {
            AnonymousUserEmbeddingExperienceConfiguration experienceConfiguration = new AnonymousUserEmbeddingExperienceConfiguration();
            AnonymousUserDashboardEmbeddingConfiguration dashboardConfiguration = new AnonymousUserDashboardEmbeddingConfiguration();
            dashboardConfiguration.setInitialDashboardId(initialDashboardId);
            experienceConfiguration.setDashboard(dashboardConfiguration);

            GenerateEmbedUrlForAnonymousUserRequest generateEmbedUrlForAnonymousUserRequest = new GenerateEmbedUrlForAnonymousUserRequest()
                .withAwsAccountId(accountId)
                .withNamespace(namespace)
                .withAuthorizedResourceArns(authorizedResourceArns)
                .withExperienceConfiguration(experienceConfiguration)
                .withSessionTags(sessionTags)
                .withSessionLifetimeInMinutes(600L); // OPTIONAL: VALUE CAN BE [15-600]. DEFAULT: 600
                .withAllowedDomains(allowedDomains);

            GenerateEmbedUrlForAnonymousUserResult dashboardEmbedUrl = quickSightClient.generateEmbedUrlForAnonymousUser(generateEmbedUrlForAnonymousUserRequest);

            return dashboardEmbedUrl.getEmbedUrl();
        }

    }
```

### JavaScript
<a name="embedded-analytics-dashboards-with-anonymous-users-js"></a>

```
global.fetch = require('node-fetch');
const AWS = require('aws-sdk');

function generateEmbedUrlForAnonymousUser(
accountId, // YOUR AWS ACCOUNT ID
initialDashboardId, // DASHBOARD ID TO WHICH THE CONSTRUCTED URL POINTS
quicksightNamespace, // VALID NAMESPACE WHERE YOU WANT TO DO NOAUTH EMBEDDING
authorizedResourceArns, // DASHBOARD ARN LIST TO EMBED
allowedDomains, // RUNTIME ALLOWED DOMAINS FOR EMBEDDING
sessionTags, // SESSION TAGS USED FOR ROW-LEVEL SECURITY
generateEmbedUrlForAnonymousUserCallback, // GENERATEEMBEDURLFORANONYMOUSUSER SUCCESS CALLBACK METHOD
errorCallback // GENERATEEMBEDURLFORANONYMOUSUSER ERROR CALLBACK METHOD
) {
const experienceConfiguration = {
    "DashboardVisual": {
        "InitialDashboardVisualId": {
            "DashboardId": "dashboard_id",
            "SheetId": "sheet_id",
            "VisualId": "visual_id"
        }
    }
};

const generateEmbedUrlForAnonymousUserParams = {
    "AwsAccountId": accountId,
    "Namespace": quicksightNamespace,
    "AuthorizedResourceArns": authorizedResourceArns,
    "AllowedDomains": allowedDomains,
    "ExperienceConfiguration": experienceConfiguration,
    "SessionTags": sessionTags,
    "SessionLifetimeInMinutes": 600
};

const quicksightClient = new AWS.QuickSight({
    region: process.env.AWS_REGION,
    credentials: {
        accessKeyId: AccessKeyId,
        secretAccessKey: SecretAccessKey,
        sessionToken: SessionToken,
        expiration: Expiration
    }
});

quicksightClient.generateEmbedUrlForAnonymousUser(generateEmbedUrlForAnonymousUserParams, function(err, data) {
    if (err) {
        console.log(err, err.stack);
        errorCallback(err);
    } else {
        const result = {
            "statusCode": 200,
            "headers": {
                "Access-Control-Allow-Origin": "*", // USE YOUR WEBSITE DOMAIN TO SECURE ACCESS TO THIS API
                "Access-Control-Allow-Headers": "Content-Type"
            },
            "body": JSON.stringify(data),
            "isBase64Encoded": false
        }
        generateEmbedUrlForAnonymousUserCallback(result);
    }
});
}
```

### Python3
<a name="embedded-analytics-dashboards-with-anonymous-users-py"></a>

```
import json
import boto3
from botocore.exceptions import ClientError
import time

# Create QuickSight and STS clients
quicksightClient = boto3.client('quicksight',region_name='us-west-2')
sts = boto3.client('sts')

# Function to generate embedded URL for anonymous user
# accountId: YOUR AWS ACCOUNT ID
# quicksightNamespace: VALID NAMESPACE WHERE YOU WANT TO DO NOAUTH EMBEDDING
# authorizedResourceArns: DASHBOARD ARN LIST TO EMBED
# allowedDomains: RUNTIME ALLOWED DOMAINS FOR EMBEDDING
# dashboardId: DASHBOARD ID TO WHICH THE CONSTRUCTED URL POINTS
# sessionTags: SESSION TAGS USED FOR ROW-LEVEL SECURITY
def generateEmbedUrlForAnonymousUser(accountId, quicksightNamespace, authorizedResourceArns, allowedDomains, dashboardId, sessionTags):
try:
    response = quicksightClient.generate_embed_url_for_anonymous_user(
        AwsAccountId = accountId,
        Namespace = quicksightNamespace,
        AuthorizedResourceArns = authorizedResourceArns,
        AllowedDomains = allowedDomains,
            ExperienceConfiguration = {
                "Dashboard": {
                    "InitialDashboardId": dashboardId
                }
            },
        SessionTags = sessionTags,
        SessionLifetimeInMinutes = 600
    )
        
    return {
        'statusCode': 200,
        'headers': {"Access-Control-Allow-Origin": "*", "Access-Control-Allow-Headers": "Content-Type"},
        'body': json.dumps(response),
        'isBase64Encoded':  bool('false')
    }
except ClientError as e:
    print(e)
    return "Error generating embeddedURL: " + str(e)
```

### Node.js
<a name="embedded-analytics-dashboards-with-anonymous-users-node"></a>

以下範例顯示的 JavaScript (Node.js) 可在應用程式伺服器上用來產生嵌入式儀表板的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示儀表板。

**Example**  

```
const AWS = require('aws-sdk');
    const https = require('https');

    var quicksightClient = new AWS.Service({
        apiConfig: require('./quicksight-2018-04-01.min.json'),
        region: 'us-east-1',
    });

    quicksightClient.generateEmbedUrlForAnonymousUser({
        'AwsAccountId': '111122223333',
        'Namespace' : 'default',
        'AuthorizedResourceArns': authorizedResourceArns,
        'AllowedDomains': allowedDomains,
        'ExperienceConfiguration': experienceConfiguration,
        'SessionTags': sessionTags,
        'SessionLifetimeInMinutes': 600

    }, function(err, data) {
        console.log('Errors: ');
        console.log(err);
        console.log('Response: ');
        console.log(data);
    });
```

**Example**  

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
    //readability and added ellipsis to indicate that it's incomplete.
        { 
            Status: 200,
            EmbedUrl: 'https://quicksightdomain/embed/12345/dashboards/67890..',
            RequestId: '7bee030e-f191-45c4-97fe-d9faf0e03713' 
        }
```

### .NET/C\$1
<a name="embedded-analytics-dashboards-with-anonymous-users-cs"></a>

以下範例顯示的 .NET/C\$1 程式碼可在應用程式伺服器上用來產生嵌入式儀表板的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示儀表板。

**Example**  

```
using System;
    using Amazon.QuickSight;
    using Amazon.QuickSight.Model;

    var quicksightClient = new AmazonQuickSightClient(
        AccessKey,
        SecretAccessKey,
        sessionToken,
        Amazon.RegionEndpoint.USEast1);
        
    try
    {
        Console.WriteLine(
            quicksightClient.GenerateEmbedUrlForAnonymousUserAsync(new GenerateEmbedUrlForAnonymousUserRequest
            {
                AwsAccountId = "111122223333",
                Namespace = default,
                AuthorizedResourceArns = authorizedResourceArns,
                AllowedDomains = allowedDomains,
                ExperienceConfiguration = experienceConfiguration,
                SessionTags = sessionTags,
                SessionLifetimeInMinutes = 600,
            }).Result.EmbedUrl
        );
    } catch (Exception ex) {
        Console.WriteLine(ex.Message);
    }
```

### AWS CLI
<a name="embedded-analytics-dashboards-with-anonymous-users-cli"></a>

若要擔任角色，請選擇下列其中一個 AWS Security Token Service (AWS STS) API 操作：
+ [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) – 在使用 IAM 身分擔任角色的情況下使用此操作。
+ [AssumeRoleWithWebIdentity](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html) – 在使用 Web 身分提供者驗證您的使用者時，請使用此操作。
+ [AssumeRoleWithSaml](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html) –在您使用安全性聲明標記語言 (SAML) 驗證使用者時，請使用此操作。

以下範例顯示用來設定 IAM 角色的 CLI 命令。角色需要啟用 `quicksight:GenerateEmbedUrlForAnonymousUser` 的許可。

```
aws sts assume-role \
    --role-arn "arn:aws:iam::11112222333:role/QuickSightEmbeddingAnonymousPolicy" \
    --role-session-name anonymous caller
```

`assume-role` 操作會傳回三個輸出參數：存取金鑰、私密金鑰和工作階段字符。

**注意**  
若您呼叫 `AssumeRole` 操作時收到 `ExpiredToken` 錯誤，原因可能是先前的 `SESSION TOKEN` 仍在環境變數中。設定以下變數便可清除此錯誤：  
*AWS\$1ACCESS\$1KEY\$1ID* 
*AWS\$1SECRET\$1ACCESS\$1KEY* 
*AWS\$1SESSION\$1TOKEN* 

以下範例說明如何在 CLI 中設定這三個參數。如果您使用 Microsoft Windows 電腦，請使用 `set`，不要使用 `export`。

```
export AWS_ACCESS_KEY_ID     = "access_key_from_assume_role"
    export AWS_SECRET_ACCESS_KEY = "secret_key_from_assume_role"
    export AWS_SESSION_TOKEN     = "session_token_from_assume_role"
```

對於瀏覽您網站的使用者，執行這些命令可將其角色工作階段 ID 設為 `embedding_quicksight_dashboard_role/QuickSightEmbeddingAnonymousPolicy`。角色工作階段 ID 由來自 `role-arn` 和 `role-session-name` 值的角色名稱所組成。對每個使用者使用唯一的角色工作階段 ID，可確保為每個訪問使用者設定適當的許可。它還使每個會話獨立且不同。如果您正在使用 Web 伺服器陣列 (例如負載平衡)，且工作階段重新連線到不同的伺服器，則會開始新的工作階段。

為了取得儀表板的簽章 URL，請從應用程式伺服器呼叫 `generate-embed-url-for-anynymous-user`。這會傳回可嵌入的儀表板 URL。下列範例會顯示如何使用伺服器端呼叫，針對匿名造訪您的 Web 入口網站或應用程式的使用者，產生內嵌式儀表板的 URL。

```
aws quicksight generate-embed-url-for-anonymous-user \
--aws-account-id 111122223333 \
--namespace default-or-something-else \
--session-lifetime-in-minutes 15 \
--authorized-resource-arns '["dashboard-arn-1","dashboard-arn-2"]' \
--allowed-domains '["domain1","domain2"]' \
--session-tags '["Key": tag-key-1,"Value": tag-value-1,{"Key": tag-key-1,"Value": tag-value-1}]' \
--experience-configuration 'DashboardVisual={InitialDashboardVisualId={DashboardId=dashboard_id,SheetId=sheet_id,VisualId=visual_id}}'
```

如需使用此操作的詳細資訊，請參閱 [https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForAnonymousUser.html](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForAnonymousUser.html)。您可以在您自己的程式碼中使用這個和其他 API 操作。

## 步驟 3：內嵌儀表板 URL
<a name="embedded-analytics-dashboards-with-anonymous-users-step-3"></a>


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

在下一節中，您可以了解如何使用 [Amazon Quick Sight 內嵌 SDK](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) (JavaScript)，在網站或應用程式頁面的步驟 2 中內嵌儀表板 URL。您可以使用此 SDK 執行以下操作：
+ 將儀表板放在 HTML 頁面。
+ 將參數傳遞到儀表板。
+ 以針對您的應用程式而訂做的訊息來處理錯誤狀態。

呼叫 `GenerateEmbedUrlForAnynymousUser` API 操作以產生可嵌入應用程式的 URL。此 URL 的有效期為 5 分鐘，而產生的工作階段有效期為 10 小時。此 API 操作提供的 URL 附有可啟用單一登入工作階段的 `auth_code`。

以下是 `generate-embed-url-for-anynymous-user` 的回應範例。

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
//readability and added ellipsis to indicate that it's incomplete.
        {
            "Status": "200",
            "EmbedUrl": "https://quicksightdomain/embed/12345/dashboards/67890..",
            "RequestId": "7bee030e-f191-45c4-97fe-d9faf0e03713"
        }
```

使用 [Amazon Quick Sight 內嵌 SDK ](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk)或將此 URL 新增至 iframe，將此儀表板內嵌在您的網頁中。如果您設定固定高度和寬度數字 （以像素為單位），Amazon Quick Sight 會使用這些值，而且不會隨著視窗調整大小而變更視覺效果。如果您設定相對百分比高度和寬度，Amazon Quick Sight 會提供隨著視窗大小變更而修改的回應式配置。透過使用 Amazon Quick Sight 內嵌 SDK，您也可以控制儀表板中的參數，並根據頁面載入完成和錯誤接收回呼。

即將託管內嵌式儀表板的域必須列在*允許清單*中，此為您的 Quick 訂閱已獲核准的域清單。這項要求將使未獲核准的網域無法託管嵌入儀表板，進而保護您的資料。如需為內嵌儀表板新增網域的詳細資訊，請參閱[使用 Amazon Quick Sight API 在執行時間允許列出網域](https://docs.aws.amazon.com/quicksight/latest/user/embedding-run-time.html)。

下列範例示範如何使用產生的 URL。此代碼駐留在您的應用程式伺服器上。

### SDK 2.0
<a name="embedded-analytics-dashboards-with-anonymous-users-sdkv2"></a>

```
<!DOCTYPE html>
<html>

<head>
    <title>Dashboard Embedding Example</title>
    <script src="https://unpkg.com/amazon-quicksight-embedding-sdk@2.0.0/dist/quicksight-embedding-js-sdk.min.js"></script>
    <script type="text/javascript">
        const embedDashboard = async() => {
            const {
                createEmbeddingContext,
            } = QuickSightEmbedding;

            const embeddingContext = await createEmbeddingContext({
                onChange: (changeEvent, metadata) => {
                    console.log('Context received a change', changeEvent, metadata);
                },
            });

            const frameOptions = {
                url: '<YOUR_EMBED_URL>',
                container: '#experience-container',
                height: "700px",
                width: "1000px",
                onChange: (changeEvent, metadata) => {
                    switch (changeEvent.eventName) {
                        case 'FRAME_MOUNTED': {
                            console.log("Do something when the experience frame is mounted.");
                            break;
                        }
                        case 'FRAME_LOADED': {
                            console.log("Do something when the experience frame is loaded.");
                            break;
                        }
                    }
                },
            };

            const contentOptions = {
                parameters: [
                    {
                        Name: 'country',
                        Values: [
                            'United States'
                        ],
                    },
                    {
                        Name: 'states',
                        Values: [
                            'California',
                            'Washington'
                        ]
                    }
                ],
                locale: "en-US",
                sheetOptions: {
                    initialSheetId: '<YOUR_SHEETID>',
                    singleSheet: false,                        
                    emitSizeChangedEventOnSheetChange: false,
                },
                toolbarOptions: {
                    export: false,
                    undoRedo: false,
                    reset: false
                },
                attributionOptions: {
                    overlayContent: false,
                },
                onMessage: async (messageEvent, experienceMetadata) => {
                    switch (messageEvent.eventName) {
                        case 'CONTENT_LOADED': {
                            console.log("All visuals are loaded. The title of the document:", messageEvent.message.title);
                            break;
                        }
                        case 'ERROR_OCCURRED': {
                            console.log("Error occurred while rendering the experience. Error code:", messageEvent.message.errorCode);
                            break;
                        }
                        case 'PARAMETERS_CHANGED': {
                            console.log("Parameters changed. Changed parameters:", messageEvent.message.changedParameters);
                            break;
                        }
                        case 'SELECTED_SHEET_CHANGED': {
                            console.log("Selected sheet changed. Selected sheet:", messageEvent.message.selectedSheet);
                            break;
                        }
                        case 'SIZE_CHANGED': {
                            console.log("Size changed. New dimensions:", messageEvent.message);
                            break;
                        }
                        case 'MODAL_OPENED': {
                            window.scrollTo({
                                top: 0 // iframe top position
                            });
                            break;
                        }
                    }
                },
            };
            const embeddedDashboardExperience = await embeddingContext.embedDashboard(frameOptions, contentOptions);

            const selectCountryElement = document.getElementById('country');
            selectCountryElement.addEventListener('change', (event) => {
                embeddedDashboardExperience.setParameters([
                    {
                        Name: 'country',
                        Values: event.target.value
                    }
                ]);
            });
        };
    </script>
</head>

<body onload="embedDashboard()">
    <span>
        <label for="country">Country</label>
        <select id="country" name="country">
            <option value="United States">United States</option>
            <option value="Mexico">Mexico</option>
            <option value="Canada">Canada</option>
        </select>
    </span>
    <div id="experience-container"></div>
</body>

</html>
```

### SDK 1.0
<a name="embedded-analytics-dashboards-with-anonymous-users-sdkv1"></a>

```
<!DOCTYPE html>
<html>

<head>
    <title>Basic Embed</title>
    <script src="https://unpkg.com/amazon-quicksight-embedding-sdk@1.0.15/dist/quicksight-embedding-js-sdk.min.js"></script>
    <script type="text/javascript">
        var dashboard
        function onDashboardLoad(payload) {
            console.log("Do something when the dashboard is fully loaded.");
        }

        function onError(payload) {
            console.log("Do something when the dashboard fails loading");
        }

        function embedDashboard() {
            var containerDiv = document.getElementById("embeddingContainer");
            var options = {
                // replace this dummy url with the one generated via embedding API
                url: "https://us-east-1.quicksight.aws.amazon.com/sn/dashboards/dashboardId?isauthcode=true&identityprovider=quicksight&code=authcode",
                container: containerDiv,
                parameters: {
                    country: "United States"
                },
                scrolling: "no",
                height: "700px",
                width: "1000px",
                locale: "en-US",
                footerPaddingEnabled: true
            };
            dashboard = QuickSightEmbedding.embedDashboard(options);
            dashboard.on("error", onError);
            dashboard.on("load", onDashboardLoad);
        }

        function onCountryChange(obj) {
            dashboard.setParameters({country: obj.value});
        }
    </script>
</head>

<body onload="embedDashboard()">
    <span>
        <label for="country">Country</label>
        <select id="country" name="country" onchange="onCountryChange(this)">
            <option value="United States">United States</option>
            <option value="Mexico">Mexico</option>
            <option value="Canada">Canada</option>
        </select>
    </span>
    <div id="embeddingContainer"></div>
</body>

</html>
```

若要讓此範例運作，請務必使用 Amazon Quick Sight 內嵌 SDK，使用 JavaScript 在您的網站上載入內嵌儀表板。為獲得您的版本，請執行以下其中一項操作：
+ 從 GitHub 下載 [Amazon Quick Sight 內嵌 SDK](https://github.com/awslabs/amazon-quicksight-embedding-sdk#step-3-create-the-quicksight-session-object)。此儲存庫由一組 Amazon Quick Sight 開發人員維護。
+ 從 [https://www.npmjs.com/package/amazon-quicksight-embedding-sdk](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk)：// 下載最新的 Amazon Quick Sight 內嵌 SDK 版本。
+ 如果您使用 JavaScript 相依性的 `npm`，請執行下列命令來下載並安裝它。

  ```
  npm install amazon-quicksight-embedding-sdk
  ```

# 在嵌入式儀表板中啟用執行摘要
<a name="embedded-analytics-genbi-executive-summaries-dashboard"></a>


|  | 
| --- |
|  適用於：企業版本  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

您可以在您的嵌入式儀表板中啟用執行摘要。啟用時，已註冊的使用者可產生執行摘要，提供 Amazon Quick Sight 為儀表板產生之所有洞見的摘要。執行摘要可讓讀者更輕鬆地找到有關儀表板的關鍵洞察與資訊。如需使用者如何產生儀表板的執行摘要的詳細資訊，請參閱[產生 Amazon Quick Sight 儀表板的執行摘要](https://docs.aws.amazon.com/quicksight/latest/user/use-executive-summaries.html)。

**注意**  
僅已註冊使用者在嵌入式儀表板可使用執行摘要，匿名或未註冊使用者在嵌入式儀表板中無法使用此功能。

**在嵌入式儀表板中為已註冊使用者啟用執行摘要**
+ 請依照[內嵌 Amazon Quick Sight 儀表板中的步驟，讓已註冊的使用者](https://docs.aws.amazon.com/quicksight/latest/user/embedded-analytics-dashboards-for-authenticated-users.html)內嵌具有下列變更的儀表板：

  1. 在步驟 2 中產生 URL 時，請在 [GenerateEmbedUrlForRegisteredUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html) 或 [GenerateEmbedUrlForRegisteredUserWithIdentity](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUserWithIdentity.html) 中的 `ExecutiveSummary` 參數中設定 `Enabled: true`，如下列範例所示：

     ```
     ExperienceConfiguration: {
             Dashboard: {
                 InitialDashboardId: dashboard_id,
                 FeatureConfigurations: {
                     AmazonQInQuickSight: {
                         ExecutiveSummary: {
                             Enabled: true
                         }
                     }
                 }
             }
         }
     }
     ```

  1. 在步驟 3 中使用 Amazon Quick Sight 內嵌 SDK 內嵌儀表板 URL 時，請在 `executiveSummary: true`中設定 `contentOptions`，如下列範例所示：

     ```
     const contentOptions = {
         toolbarOptions: {
             executiveSummary: true
         }
     };
     ```

# 使用 Amazon Quick Sight APIs 內嵌 Amazon Quick Sight 視覺效果
<a name="embedding-visuals"></a>

您可以使用 Amazon Quick Sight API，在應用程式中嵌入屬於已發佈儀表板一部分的個別視覺效果。

**Topics**
+ [

# 內嵌已註冊使用者的 Amazon Quick Sight 視覺效果
](embedded-analytics-visuals-for-authenticated-users.md)
+ [

# 為匿名 （未註冊） 使用者嵌入 Amazon Quick Sight 視覺效果
](embedded-analytics-visuals-for-everyone.md)

# 內嵌已註冊使用者的 Amazon Quick Sight 視覺效果
<a name="embedded-analytics-visuals-for-authenticated-users"></a>


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

在下列各節中，您可以找到如何為 Amazon Quick Sight 註冊使用者設定內嵌 Amazon Quick Sight 視覺效果的詳細資訊。

**Topics**
+ [

## 步驟 1：設定許可
](#embedded-visuals-for-authenticated-users-step-1)
+ [

## 步驟 2：產生帶有身分驗證碼的 URL
](#embedded-visuals-for-authenticated-users-step-2)
+ [

## 步驟 3：內嵌視覺效果 URL
](#embedded-visuals-for-authenticated-users-step-3)

## 步驟 1：設定許可
<a name="embedded-visuals-for-authenticated-users-step-1"></a>

在以下章節中，您可以了解如何為後端應用程式或 Web 伺服器設定許可。這個任務需要有 IAM 的管理存取權。

每個存取視覺效果的使用者都會擔任一個角色，為他們提供視覺效果的 Amazon Quick Sight 存取權和許可。若要實現此目的，請在 中建立 IAM 角色 AWS 帳戶。將 IAM 政策與此角色建立關聯，以提供許可給擔任此角色的任何使用者。IAM 角色需要提供許可，以擷取特定使用者集區的內嵌 URL。藉助萬用字元 *\$1*，您可以授予許可，以便為特定命名空間中的所有使用者，或特定命名空間中的使用者子集產生 URL。對於這一點，您新增 `quicksight:GenerateEmbedUrlForRegisteredUser`。

您可以在 IAM 政策中建立條件，以限制開發人員可在 `GenerateEmbedUrlForAnonymousUser` API 操作的 `AllowedDomains` 參數中列出的域。`AllowedDomains` 參數是選用參數。它授予您作為開發人員覆寫**管理 Amazon Quick Sight **選單中設定的靜態網域的選項。您則最多可以列出三個可存取產生之 URL 的域或子網域。然後，此 URL 將嵌入您建立的網站中。只有參數中列出的域可以存取內嵌式儀表板。如果沒有這種情況，您可以在 `AllowedDomains` 參數中列出網際網路上的任何域。

若要限制開發人員可搭配此參數使用的域，請在 IAM 政策中新增 `AllowedEmbeddingDomains` 條件。如需 `AllowedDomains` 參數的詳細資訊，請參閱《*Amazon Quick Sight API 參考*》中的 [GenerateEmbedUrlForRegisteredUser](https://docs.aws.amazon.com//quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html)。

**IAM 條件運算子的安全最佳實務**  
設定不當的 IAM 條件運算子可能會允許透過 URL 變化未經授權存取您的內嵌 Quick 資源。在 IAM 政策中使用 `quicksight:AllowedEmbeddingDomains`條件金鑰時，請使用允許特定網域或拒絕未特別允許的所有網域的條件運算子。如需 IAM 條件運算子的詳細資訊，請參閱《IAM [使用者指南》中的 IAM JSON 政策元素：條件運算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)。  
許多不同的 URL 變化可以指向相同的資源。例如，下列 URLs全部解析為相同的內容：  
`https://example.com`
`https://example.com/`
`https://Example.com`
如果您的政策使用未考慮這些 URL 變化的運算子，攻擊者可以透過提供同等的 URL 變化來繞過您的限制。  
您必須驗證 IAM 政策是否使用適當的條件運算子來防止繞過漏洞，並確保只有預期的網域可以存取您的內嵌資源。

下列範例政策提供這些許可。

此外，如果您要建立將成為 Amazon Quick Sight 讀者的第一次使用者，請務必在政策中新增 `quicksight:RegisterUser`許可。

下列範例政策提供許可，以擷取第一次成為 Amazon Quick Sight 讀取器之使用者的內嵌 URL。

最後，您的應用程式的 IAM 身分必須有相關聯的信任政策，以允許存取至您剛建立的角色。這表示當使用者存取您的應用程式時，您的應用程式可以代表使用者擔任該角色，並在 Amazon Quick Sight 中佈建使用者。範例信任政策如下所示。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowLambdaFunctionsToAssumeThisRole",
            "Effect": "Allow",
            "Principal": {
                "Service": "lambda.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        },
        {
            "Sid": "AllowEC2InstancesToAssumeThisRole",
            "Effect": "Allow",
            "Principal": {
                "Service": "ec2.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

如需 OpenID Connect 或 SAML 身分驗證的信任政策詳細資訊，請參閱 *IAM 使用者指南*的下列各節：
+ [建立 Web 身分或 OpenID Connect 聯合身分的角色 (主控台)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_oidc.html)
+ [建立 SAML 2.0 聯合身分的角色 (主控台)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html)

## 步驟 2：產生帶有身分驗證碼的 URL
<a name="embedded-visuals-for-authenticated-users-step-2"></a>

在下一節中，您可以了解如何驗證 Amazon Quick Sight 使用者，並在應用程式伺服器上取得可內嵌的視覺化 URL。如果您打算內嵌 IAM 或 Amazon Quick Sight 身分類型的視覺效果，請與 Amazon Quick Sight 使用者共用視覺效果。

當 Amazon Quick Sight 使用者存取您的應用程式時，應用程式會代表 Amazon Quick Sight 使用者擔任 IAM 角色。然後，如果該 Amazon Quick Sight 使用者尚未存在，它會將使用者新增至 Amazon Quick Sight。接著，它傳遞識別符當作唯一的角色工作階段 ID。

執行所述的步驟可確保視覺效果的每個檢視器在 Amazon Quick Sight 中唯一佈建。它還會強制執行個別使用者設定，例如資料列層級的安全性和參數的動態預設值。

下列範例代表 Amazon Quick Sight 使用者執行 IAM 身分驗證。此代碼在您的應用程式伺服器上運行。

### Java
<a name="embedded-visuals-for-authenticated-users-java"></a>

```
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.auth.AWSCredentialsProvider;
import com.amazonaws.regions.Regions;
import com.amazonaws.services.quicksight.AmazonQuickSight;
import com.amazonaws.services.quicksight.AmazonQuickSightClientBuilder;
import com.amazonaws.services.quicksight.model.DashboardVisualId;
import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForRegisteredUserRequest;
import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForRegisteredUserResult;
import com.amazonaws.services.quicksight.model.RegisteredUserDashboardVisualEmbeddingConfiguration;
import com.amazonaws.services.quicksight.model.RegisteredUserEmbeddingExperienceConfiguration;

import java.util.List;

/**
 * Class to call QuickSight AWS SDK to get url for Visual embedding.
 */
public class GenerateEmbedUrlForRegisteredUserTest {

    private final AmazonQuickSight quickSightClient;

    public GenerateEmbedUrlForRegisteredUserTest() {
        this.quickSightClient = AmazonQuickSightClientBuilder
            .standard()
            .withRegion(Regions.US_EAST_1.getName())
            .withCredentials(new AWSCredentialsProvider() {
                    @Override
                    public AWSCredentials getCredentials() {
                        // provide actual IAM access key and secret key here
                        return new BasicAWSCredentials("access-key", "secret-key");
                    }

                    @Override
                    public void refresh() {                        
                    }
                }
            )
            .build();
    }

    public String getEmbedUrl(
            final String accountId, // AWS Account ID
            final String dashboardId, // Dashboard ID of the dashboard to embed
            final String sheetId, // Sheet ID of the sheet to embed
            final String visualId, // Visual ID of the visual to embed
            final List<String> allowedDomains, // Runtime allowed domains for embedding
            final String userArn // Registered user arn of the user that you want to provide embedded visual. Refer to Get Embed Url section in developer portal to find out how to get user arn for a QuickSight user.
    ) throws Exception {
        final DashboardVisualId dashboardVisual = new DashboardVisualId()
            .withDashboardId(dashboardId)
            .withSheetId(sheetId)
            .withVisualId(visualId);
        final RegisteredUserDashboardVisualEmbeddingConfiguration registeredUserDashboardVisualEmbeddingConfiguration
            = new RegisteredUserDashboardVisualEmbeddingConfiguration()
                .withInitialDashboardVisualId(dashboardVisual);
        final RegisteredUserEmbeddingExperienceConfiguration registeredUserEmbeddingExperienceConfiguration
            = new RegisteredUserEmbeddingExperienceConfiguration()
                .withDashboardVisual(registeredUserDashboardVisualEmbeddingConfiguration);
        final GenerateEmbedUrlForRegisteredUserRequest generateEmbedUrlForRegisteredUserRequest
            = new GenerateEmbedUrlForRegisteredUserRequest()
                .withAwsAccountId(accountId)
                .withUserArn(userArn)
                .withExperienceConfiguration(registeredUserEmbeddingExperienceConfiguration)
                .withAllowedDomains(allowedDomains);

        final GenerateEmbedUrlForRegisteredUserResult generateEmbedUrlForRegisteredUserResult = quickSightClient.generateEmbedUrlForRegisteredUser(generateEmbedUrlForRegisteredUserRequest);

        return generateEmbedUrlForRegisteredUserResult.getEmbedUrl();
    }
}
```

### JavaScript
<a name="embedded-visuals-for-authenticated-users-js"></a>

```
global.fetch = require('node-fetch');
const AWS = require('aws-sdk');

function generateEmbedUrlForRegisteredUser(
    accountId, // Your AWS account ID
    dashboardId, // Dashboard ID to which the constructed URL points
    sheetId, // Sheet ID to which the constructed URL points
    visualId, // Visual ID to which the constructed URL points
    openIdToken, // Cognito-based token
    userArn, // registered user arn
    roleArn, // IAM user role to use for embedding
    sessionName, // Session name for the roleArn assume role
    allowedDomains, // Runtime allowed domain for embedding
    getEmbedUrlCallback, // GetEmbedUrl success callback method
    errorCallback // GetEmbedUrl error callback method
    ) {
    const stsClient = new AWS.STS();
    let stsParams = {
        RoleSessionName: sessionName,
        WebIdentityToken: openIdToken,
        RoleArn: roleArn
    }

    stsClient.assumeRoleWithWebIdentity(stsParams, function(err, data) {
        if (err) {
            console.log('Error assuming role');
            console.log(err, err.stack);
            errorCallback(err);
        } else {
            const getDashboardParams = {
                "AwsAccountId": accountId,
                "ExperienceConfiguration": {
                    "DashboardVisual": {
                        "InitialDashboardVisualId": {
                            "DashboardId": dashboardId,
                            "SheetId": sheetId,
                            "VisualId": visualId
                        }
                    }
                },
                "UserArn": userArn,
                "AllowedDomains": allowedDomains,
                "SessionLifetimeInMinutes": 600
            };

            const quicksightGetDashboard = new AWS.QuickSight({
                region: process.env.AWS_REGION,
                credentials: {
                    accessKeyId: data.Credentials.AccessKeyId,
                    secretAccessKey: data.Credentials.SecretAccessKey,
                    sessionToken: data.Credentials.SessionToken,
                    expiration: data.Credentials.Expiration
                }
            });

            quicksightGetDashboard.generateEmbedUrlForRegisteredUser(getDashboardParams, function(err, data) {
                if (err) {
                    console.log(err, err.stack);
                    errorCallback(err);
                } else {
                    const result = {
                        "statusCode": 200,
                        "headers": {
                            "Access-Control-Allow-Origin": "*", // Use your website domain to secure access to GetEmbedUrl API
                            "Access-Control-Allow-Headers": "Content-Type"
                        },
                        "body": JSON.stringify(data),
                        "isBase64Encoded": false
                    }
                    getEmbedUrlCallback(result);
                }
            });
        }
    });
}
```

### Python3
<a name="embedded-visuals-for-authenticated-users-py"></a>

```
import json
import boto3
from botocore.exceptions import ClientError

sts = boto3.client('sts')

# Function to generate embedded URL  
# accountId: AWS account ID
# dashboardId: Dashboard ID to embed
# sheetId: SHEET ID to embed from the dashboard 
# visualId: Id for the Visual you want to embedded from the dashboard sheet. 
# userArn: arn of registered user
# allowedDomains: Runtime allowed domain for embedding
# roleArn: IAM user role to use for embedding
# sessionName: session name for the roleArn assume role
def getEmbeddingURL(accountId, dashboardId, sheetId, visualId, userArn, allowedDomains, roleArn, sessionName):
    try:
        assumedRole = sts.assume_role(
            RoleArn = roleArn,
            RoleSessionName = sessionName,
        )
    except ClientError as e:
        return "Error assuming role: " + str(e)
    else: 
        assumedRoleSession = boto3.Session(
            aws_access_key_id = assumedRole['Credentials']['AccessKeyId'],
            aws_secret_access_key = assumedRole['Credentials']['SecretAccessKey'],
            aws_session_token = assumedRole['Credentials']['SessionToken'],
        )
        try:
            quicksightClient = assumedRoleSession.client('quicksight', region_name='us-west-2')
            response = quicksightClient.generate_embed_url_for_registered_user(
                AwsAccountId=accountId,
                ExperienceConfiguration = {
                    'DashboardVisual': {
                        'InitialDashboardVisualId': {
                            'DashboardId': dashboardId,
                            'SheetId': sheetId,
                            'VisualId': visualId
                        }
                    },
                },
                UserArn = userArn,
                AllowedDomains = allowedDomains,
                SessionLifetimeInMinutes = 600
            )
            
            return {
                'statusCode': 200,
                'headers': {"Access-Control-Allow-Origin": "*", "Access-Control-Allow-Headers": "Content-Type"},
                'body': json.dumps(response),
                'isBase64Encoded':  bool('false')
            }
        except ClientError as e:
            return "Error generating embedding url: " + str(e)
```

### Node.js
<a name="embedded-visuals-for-authenticated-users-node"></a>

以下範例顯示的 JavaScript (Node.js) 可在應用程式伺服器上用來產生嵌入式儀表板的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示儀表板。

**Example**  

```
const AWS = require('aws-sdk');
const https = require('https');

var quicksightClient = new AWS.Service({
    apiConfig: require('./quicksight-2018-04-01.min.json'),
    region: 'us-east-1',
});

quicksightClient.generateEmbedUrlForRegisteredUser({
    'AwsAccountId': '111122223333',
    'ExperienceConfiguration': { 
        'DashboardVisual': {
            'InitialDashboardVisualId': {
                'DashboardId': 'dashboard_id',
                'SheetId': 'sheet_id',
                'VisualId': 'visual_id'
            }
        }
    },
    'UserArn': 'REGISTERED_USER_ARN',
    'AllowedDomains': allowedDomains,
    'SessionLifetimeInMinutes': 100
}, function(err, data) {
    console.log('Errors: ');
    console.log(err);
    console.log('Response: ');
    console.log(data);
});
```

**Example**  

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
//readability and added ellipsis to indicate that it's incomplete.
    {
        "Status": "200",
        "EmbedUrl": "https://quicksightdomain/embed/12345/dashboards/67890/sheets/12345/visuals/67890...",
        "RequestId": "7bee030e-f191-45c4-97fe-d9faf0e03713"
    }
```

### .NET/C\$1
<a name="embedded-visuals-for-authenticated-users-cs"></a>

以下範例顯示的 .NET/C\$1 程式碼可在應用程式伺服器上用來產生嵌入式儀表板的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示儀表板。

**Example**  

```
using System;
using Amazon.QuickSight;
using Amazon.QuickSight.Model;

namespace GenerateDashboardEmbedUrlForRegisteredUser
{
    class Program
    {
        static void Main(string[] args)
        {
            var quicksightClient = new AmazonQuickSightClient(
                AccessKey,
                SecretAccessKey,
                SessionToken,
                Amazon.RegionEndpoint.USEast1);
            try
            {
                DashboardVisualId dashboardVisual = new DashboardVisualId
                {
                    DashboardId = "dashboard_id",
                    SheetId = "sheet_id",
                    VisualId = "visual_id"
                };

                RegisteredUserDashboardVisualEmbeddingConfiguration registeredUserDashboardVisualEmbeddingConfiguration
                    = new RegisteredUserDashboardVisualEmbeddingConfiguration
                    {
                        InitialDashboardVisualId = dashboardVisual                        
                    };               
                    
                RegisteredUserEmbeddingExperienceConfiguration registeredUserEmbeddingExperienceConfiguration
                    = new RegisteredUserEmbeddingExperienceConfiguration
                    {
                        DashboardVisual = registeredUserDashboardVisualEmbeddingConfiguration
                    };
                    
                Console.WriteLine(
                    quicksightClient.GenerateEmbedUrlForRegisteredUserAsync(new GenerateEmbedUrlForRegisteredUserRequest
                    {
                        AwsAccountId = "111122223333",
                        ExperienceConfiguration = registeredUserEmbeddingExperienceConfiguration,
                        UserArn = "REGISTERED_USER_ARN",
                        AllowedDomains = allowedDomains,
                        SessionLifetimeInMinutes = 100
                    }).Result.EmbedUrl
                );
            } catch (Exception ex) {
                Console.WriteLine(ex.Message);
            }
        }
    }
}
```

### AWS CLI
<a name="embedded-visuals-for-authenticated-users-cli"></a>

若要擔任角色，請選擇下列其中一個 AWS Security Token Service (AWS STS) API 操作：
+ [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) – 在使用 IAM 身分擔任角色的情況下使用此操作。
+ [AssumeRoleWithWebIdentity](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html) – 在使用 Web 身分提供者驗證您的使用者時，請使用此操作。
+ [AssumeRoleWithSaml](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html) –在您使用 SAML 驗證使用者時，請使用此操作。

以下範例顯示用來設定 IAM 角色的 CLI 命令。角色需要啟用 `quicksight:GenerateEmbedUrlForRegisteredUser` 的許可。如果您正在採取即時方法在使用者第一次開啟儀表板時新增使用者，則該角色也需要啓用 `quicksight:RegisterUser` 的許可。

```
aws sts assume-role \
    --role-arn "arn:aws:iam::111122223333:role/embedding_quicksight_visual_role" \
    --role-session-name john.doe@example.com
```

`assume-role` 操作會傳回三個輸出參數：存取金鑰、私密金鑰和工作階段字符。

**注意**  
若您呼叫 `AssumeRole` 操作時收到 `ExpiredToken` 錯誤，原因可能是先前的 `SESSION TOKEN` 仍在環境變數中。設定以下變數便可清除此錯誤：  
*AWS\$1ACCESS\$1KEY\$1ID* 
*AWS\$1SECRET\$1ACCESS\$1KEY* 
*AWS\$1SESSION\$1TOKEN* 

以下範例說明如何在 CLI 中設定這三個參數。如果您使用 Microsoft Windows 電腦，請使用 `set`，不要使用 `export`。

```
export AWS_ACCESS_KEY_ID     = "access_key_from_assume_role"
    export AWS_SECRET_ACCESS_KEY = "secret_key_from_assume_role"
    export AWS_SESSION_TOKEN     = "session_token_from_assume_role"
```

對於瀏覽您網站的使用者，執行這些命令可將其角色工作階段 ID 設為 `embedding_quicksight_visual_role/john.doe@example.com`。角色工作階段 ID 由來自 `role-arn` 和 `role-session-name` 值的角色名稱所組成。對每個使用者使用唯一的角色工作階段 ID，可確保為每個使用者設定適當的許可。還能避免對使用者存取進行任何調節。*調節*是一項安全功能，可防止相同的使用者從多個位置存取 Amazon Quick Sight。

角色工作階段 ID 也會成為 Amazon Quick Sight 中的使用者名稱。您可以使用此模式提前在 Amazon Quick Sight 中佈建使用者，或在使用者第一次存取儀表板時佈建他們。

以下範例顯示可用來佈建使用者的 CLI 命令。如需 [RegisterUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_RegisterUser.html)、[DescribeUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_DescribeUser.html) 和其他 Amazon Quick Sight API 操作的詳細資訊，請參閱 [Amazon Quick Sight API 參考](https://docs.aws.amazon.com/quicksight/latest/APIReference/Welcome.html)。

```
aws quicksight register-user \
    --aws-account-id 111122223333 \
    --namespace default \
    --identity-type IAM \
    --iam-arn "arn:aws:iam::111122223333:role/embedding_quicksight_visual_role" \
    --user-role READER \
    --user-name jhnd \
    --session-name "john.doe@example.com" \
    --email john.doe@example.com \
    --region us-east-1 \
    --custom-permissions-name TeamA1
```

如果使用者是透過 Microsoft AD 進行身分驗證，您就不需要使用 `RegisterUser` 設定他們。相反地，他們應在第一次存取 Amazon Quick Sight 時自動訂閱。若是 Microsoft AD 使用者，您可以使用 `DescribeUser` 取得使用者的 ARN。

使用者第一次存取 Amazon Quick Sight 時，您也可以將此使用者新增至共用視覺效果的群組。以下範例顯示用於將使用者新增至群組的 CLI 命令。

```
aws quicksight create-group-membership \
    --aws-account-id=111122223333 \
    --namespace=default \
    --group-name=financeusers \
    --member-name="embedding_quicksight_visual_role/john.doe@example.com"
```

您現在擁有的應用程式使用者，同時也是 Amazon Quick Sight 的使用者，而且可存取視覺效果。

最後，為了取得視覺效果的簽章 URL，請從應用程式伺服器呼叫 `generate-embed-url-for-registered-user`。這會傳回可內嵌的視覺效果 URL。下列範例示範如何使用伺服器端呼叫為透過 AWS Managed Microsoft AD 或單一登入 (IAM Identity Center) 驗證的使用者產生內嵌視覺效果的 URL。

```
aws quicksight generate-embed-url-for-registered-user \
    --aws-account-id 111122223333 \
    --session-lifetime-in-minutes 600 \
    --user-arn arn:aws:quicksight:us-east-1:111122223333:user/default/embedding_quicksight_visual_role/embeddingsession \
    --allowed-domains '["domain1","domain2"]' \
    --experience-configuration 'DashboardVisual={InitialDashboardVisualId={DashboardId=dashboard_id,SheetId=sheet_id,VisualId=visual_id}}'
```

如需使用此操作的詳細資訊，請參閱 [https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html)。您可以在您自己的程式碼中使用這個和其他 API 操作。

## 步驟 3：內嵌視覺效果 URL
<a name="embedded-visuals-for-authenticated-users-step-3"></a>

在下一節中，您可以了解如何使用 [Amazon Quick Sight 內嵌 SDK](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) (JavaScript)，在網站或應用程式頁面中嵌入步驟 3 的視覺化 URL。您可以使用此 SDK 執行以下操作：
+ 將視覺效果放置在 HTML 頁面上。
+ 將參數傳遞到視覺效果中。
+ 以針對您的應用程式而訂做的訊息來處理錯誤狀態。

呼叫 `GenerateEmbedUrlForRegisteredUser` API 操作以產生可嵌入應用程式的 URL。此 URL 的有效期為 5 分鐘，而產生的工作階段有效期最長為 10 小時。此 API 操作提供的 URL 附有可啟用單一登入工作階段的 `auth_code`。

以下是 `generate-embed-url-for-registered-user` 的回應範例。此範例中`quicksightdomain`的 是您用來存取 Amazon Quick Sight 帳戶的 URL。

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
//readability and added ellipsis to indicate that it's incomplete.
    {
        "Status": "200",
        "EmbedUrl": "https://quicksightdomain/embed/12345/dashboards/67890/sheets/12345/visuals/67890...",
        "RequestId": "7bee030e-f191-45c4-97fe-d9faf0e03713"
    }
```

使用 [Amazon Quick Sight 內嵌 SDK 或將此 URL 新增至 iframe，將此視覺效果內嵌](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk)在您的網頁中。如果您設定固定高度和寬度數字 （以像素為單位），Amazon Quick Sight 會使用這些值，而且不會隨著視窗調整大小而變更視覺效果。如果您設定相對百分比高度和寬度，Amazon Quick Sight 會提供隨著視窗大小變更而修改的回應式配置。透過使用 Amazon Quick Sight 內嵌 SDK，您也可以控制視覺效果中的參數，並根據頁面載入完成和錯誤接收回呼。

將託管內嵌視覺效果和儀表板的網域必須列在*允許清單*上，即 Quick 訂閱的已核准網域清單。這項要求將使未獲核准的域無法託管內嵌視覺效果和儀表板，進而保護您的資料。如需為內嵌視覺效果和儀表板新增網域的詳細資訊，請參閱[使用 Amazon Quick Sight API 在執行時間允許列出網域](https://docs.aws.amazon.com/quicksight/latest/user/embedding-run-time.html)。

下列範例示範如何使用產生的 URL。此代碼在您的應用程式伺服器上生成。

### SDK 2.0
<a name="embedded-visuals-for-authenticated-users-sdkv2"></a>

```
<!DOCTYPE html>
<html>

    <head>
        <title>Visual Embedding Example</title>
        <script src="https://unpkg.com/amazon-quicksight-embedding-sdk@2.0.0/dist/quicksight-embedding-js-sdk.min.js"></script>
        <script type="text/javascript">
            const embedVisual = async() => {    
                const {
                    createEmbeddingContext,
                } = QuickSightEmbedding;

                const embeddingContext = await createEmbeddingContext({
                    onChange: (changeEvent, metadata) => {
                        console.log('Context received a change', changeEvent, metadata);
                    },
                });

                const frameOptions = {
                    url: "<YOUR_EMBED_URL>", // replace this value with the url generated via embedding API
                    container: '#experience-container',
                    height: "700px",
                    width: "1000px",
                    onChange: (changeEvent, metadata) => {
                        switch (changeEvent.eventName) {
                            case 'FRAME_MOUNTED': {
                                console.log("Do something when the experience frame is mounted.");
                                break;
                            }
                            case 'FRAME_LOADED': {
                                console.log("Do something when the experience frame is loaded.");
                                break;
                            }
                        }
                    },
                };

                const contentOptions = {
                    parameters: [
                        {
                            Name: 'country',
                            Values: ['United States'],
                        },
                        {
                            Name: 'states',
                            Values: [
                                'California',
                                'Washington'
                            ]
                        }
                    ],
                    locale: "en-US",
                    onMessage: async (messageEvent, experienceMetadata) => {
                        switch (messageEvent.eventName) {
                            case 'CONTENT_LOADED': {
                                console.log("All visuals are loaded. The title of the document:", messageEvent.message.title);
                                break;
                            }
                            case 'ERROR_OCCURRED': {
                                console.log("Error occurred while rendering the experience. Error code:", messageEvent.message.errorCode);
                                break;
                            }
                            case 'PARAMETERS_CHANGED': {
                                console.log("Parameters changed. Changed parameters:", messageEvent.message.changedParameters);
                                break;
                            }
                            case 'SIZE_CHANGED': {
                                console.log("Size changed. New dimensions:", messageEvent.message);
                                break;
                            }
                        }
                    },
                };
                const embeddedVisualExperience = await embeddingContext.embedVisual(frameOptions, contentOptions);

                const selectCountryElement = document.getElementById('country');
                selectCountryElement.addEventListener('change', (event) => {
                    embeddedVisualExperience.setParameters([
                        {
                            Name: 'country',
                            Values: event.target.value
                        }
                    ]);
                });
            };
        </script>
    </head>

    <body onload="embedVisual()">
        <span>
            <label for="country">Country</label>
            <select id="country" name="country">
                <option value="United States">United States</option>
                <option value="Mexico">Mexico</option>
                <option value="Canada">Canada</option>
            </select>
        </span>
        <div id="experience-container"></div>
    </body>

</html>
```

### SDK 1.0
<a name="embedded-visuals-for-authenticated-users-sdkv1"></a>

```
<!DOCTYPE html>
<html>

    <head>
        <title>Visual Embedding Example</title>
        <!-- You can download the latest QuickSight embedding SDK version from https://www.npmjs.com/package/amazon-quicksight-embedding-sdk -->
        <!-- Or you can do "npm install amazon-quicksight-embedding-sdk", if you use npm for javascript dependencies -->
        <script src="./quicksight-embedding-js-sdk.min.js"></script>
        <script type="text/javascript">
            let embeddedVisualExperience;
            function onVisualLoad(payload) {
                console.log("Do something when the visual is fully loaded.");
            }

            function onError(payload) {
                console.log("Do something when the visual fails loading");
            }

            function embedVisual() {
                const containerDiv = document.getElementById("embeddingContainer");
                const options = {
                    url: "<YOUR_EMBED_URL>", // replace this value with the url generated via embedding API
                    container: containerDiv,
                    parameters: {
                        country: "United States"
                    },
                    height: "700px",
                    width: "1000px",
                    locale: "en-US"
                };
                embeddedVisualExperience = QuickSightEmbedding.embedVisual(options);
                embeddedVisualExperience.on("error", onError);
                embeddedVisualExperience.on("load", onVisualLoad);
            }

            function onCountryChange(obj) {
                embeddedVisualExperience.setParameters({country: obj.value});
            }
        </script>
    </head>

    <body onload="embedVisual()">
        <span>
            <label for="country">Country</label>
            <select id="country" name="country" onchange="onCountryChange(this)">
                <option value="United States">United States</option>
                <option value="Mexico">Mexico</option>
                <option value="Canada">Canada</option>
            </select>
        </span>
        <div id="embeddingContainer"></div>
    </body>

</html>
```

若要讓此範例運作，請務必使用 Amazon Quick Sight 內嵌 SDK，使用 JavaScript 在您的網站上載入內嵌視覺效果。為獲得您的版本，請執行以下其中一項操作：
+ 從 GitHub 下載 [Amazon Quick Sight 內嵌 SDK](https://github.com/awslabs/amazon-quicksight-embedding-sdk#step-3-create-the-quicksight-session-object)。此儲存庫由一組 Amazon Quick Sight 開發人員維護。
+ 從 [https://www.npmjs.com/package/amazon-quicksight-embedding-sdk](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) 下載最新的內嵌開發套件版本。
+ 如果您使用 JavaScript 相依性的 `npm`，請執行下列命令來下載並安裝它。

  ```
  npm install amazon-quicksight-embedding-sdk
  ```

# 為匿名 （未註冊） 使用者嵌入 Amazon Quick Sight 視覺效果
<a name="embedded-analytics-visuals-for-everyone"></a>


|  | 
| --- |
|  適用於：企業版本  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

在下列各節中，您可以找到有關如何為匿名 （未註冊） 使用者設定內嵌 Amazon Quick Sight 視覺效果的詳細資訊。

**Topics**
+ [

## 步驟 1：設定許可
](#embedded-analytics-visuals-with-anonymous-users-step-1)
+ [

## 步驟 2：產生帶有身分驗證碼的 URL
](#embedded-analytics-visuals-with-anonymous-users-step-2)
+ [

## 步驟 3：內嵌視覺效果 URL
](#embedded-analytics-visuals-with-anonymous-users-step-3)

## 步驟 1：設定許可
<a name="embedded-analytics-visuals-with-anonymous-users-step-1"></a>


|  | 
| --- |
|  適用於：企業版本  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

在以下章節中，您可以了解如何為後端應用程式或 Web 伺服器設定許可。這個任務需要有 IAM 的管理存取權。

每個存取視覺效果的使用者都會擔任一個角色，為他們提供視覺效果的 Amazon Quick Sight 存取權和許可。若要實現此目的，請在 中建立 IAM 角色 AWS 帳戶。將 IAM 政策與此角色建立關聯，以提供許可給擔任此角色的任何使用者。

您可以在 IAM 政策中建立條件，以限制開發人員可在 `GenerateEmbedUrlForAnonymousUser` API 操作的 `AllowedDomains` 參數中列出的域。`AllowedDomains` 參數是選用參數。它可讓您以開發人員身分選擇覆寫**管理 Amazon Quick Sight **選單中設定的靜態網域。您則最多可以列出三個可存取產生之 URL 的域或子網域。然後，此 URL 將嵌入您建立的網站中。只有參數中列出的域可以存取內嵌式儀表板。如果沒有這種情況，您可以在 `AllowedDomains` 參數中列出網際網路上的任何域。

若要限制開發人員可搭配此參數使用的域，請在 IAM 政策中新增 `AllowedEmbeddingDomains` 條件。如需 `AllowedDomains` 參數的詳細資訊，請參閱《*Amazon Quick Sight API 參考*》中的 [GenerateEmbedUrlForAnonymousUser](https://docs.aws.amazon.com//quicksight/latest/APIReference/API_GenerateEmbedUrlForAnonymousUser.html)。

**IAM 條件運算子的安全最佳實務**  
設定不當的 IAM 條件運算子可能會允許透過 URL 變化未經授權存取您的內嵌 Quick 資源。在 IAM 政策中使用 `quicksight:AllowedEmbeddingDomains`條件金鑰時，請使用允許特定網域或拒絕未明確允許的所有網域的條件運算子。如需 IAM 條件運算子的詳細資訊，請參閱《IAM [使用者指南》中的 IAM JSON 政策元素：條件運算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)。  
許多不同的 URL 變化可以指向相同的資源。例如，下列 URLs全部解析為相同的內容：  
`https://example.com`
`https://example.com/`
`https://Example.com`
如果您的政策使用未考慮這些 URL 變化的運算子，攻擊者可以透過提供同等的 URL 變化來繞過您的限制。  
您必須驗證 IAM 政策是否使用適當的條件運算子來防止繞過漏洞，並確保只有您預期的網域可以存取您的內嵌資源。

您的應用程式的 IAM 身分必須有相關聯的信任政策，以允許存取至您剛建立的角色。這表示當使用者存取您的應用程式時，您的應用程式可代表使用者擔任該角色，並開啟視覺效果。範例信任政策如下所示。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowLambdaFunctionsToAssumeThisRole",
            "Effect": "Allow",
            "Principal": {
                "Service": "lambda.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        },
        {
            "Sid": "AllowEC2InstancesToAssumeThisRole",
            "Effect": "Allow",
            "Principal": {
                "Service": "ec2.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

如需有關信任政策的詳細資訊，請參閱**《IAM 使用者指南》中的[ IAM 中的臨時安全憑證](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html)。

## 步驟 2：產生帶有身分驗證碼的 URL
<a name="embedded-analytics-visuals-with-anonymous-users-step-2"></a>


|  | 
| --- |
|  適用於：企業版本  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

在下一章節，您可以了解如何在您的應用程式伺服器上代表匿名訪客進行身分驗證，以及取得可內嵌的視覺效果 URL。

當使用者存取您的應用程式時，該應用程式代表使用者擔任 IAM 角色。然後，如果使用者尚未存在，它會將使用者新增至 Amazon Quick Sight。接著，它傳遞識別符當作唯一的角色工作階段 ID。

下列範例會代表使用者執行 IAM 身分驗證。它傳遞識別符當作唯一的角色工作階段 ID。此代碼在您的應用程式伺服器上運行。

### Java
<a name="embedded-analytics-visuals-with-anonymous-users-java"></a>

```
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.auth.AWSCredentialsProvider;
import com.amazonaws.regions.Regions;
import com.amazonaws.services.quicksight.AmazonQuickSight;
import com.amazonaws.services.quicksight.AmazonQuickSightClientBuilder;
import com.amazonaws.services.quicksight.model.AnonymousUserDashboardVisualEmbeddingConfiguration;
import com.amazonaws.services.quicksight.model.AnonymousUserEmbeddingExperienceConfiguration;
import com.amazonaws.services.quicksight.model.DashboardVisualId;
import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForAnonymousUserRequest;
import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForAnonymousUserResult;
import com.amazonaws.services.quicksight.model.SessionTag;

import java.util.List;

/**
 * Class to call QuickSight AWS SDK to get url for Visual embedding.
 */
public class GenerateEmbedUrlForAnonymousUserTest {
    private final AmazonQuickSight quickSightClient;

    public GenerateEmbedUrlForAnonymousUserTest() {
        this.quickSightClient = AmazonQuickSightClientBuilder
            .standard()
            .withRegion(Regions.US_EAST_1.getName())
            .withCredentials(new AWSCredentialsProvider() {
                    @Override
                    public AWSCredentials getCredentials() {
                        // provide actual IAM access key and secret key here
                        return new BasicAWSCredentials("access-key", "secret-key");
                    }

                    @Override
                    public void refresh() {                           
                    }
                }
            )
            .build();
    }

    public String getEmbedUrl(
            final String accountId, // AWS Account ID
            final String namespace, // Anonymous embedding required specifying a valid namespace for which you want the enbedding URL
            final List<String> authorizedResourceArns, // Dashboard arn list of dashboard visuals to embed
            final String dashboardId, // Dashboard ID of the dashboard to embed
            final String sheetId, // Sheet ID of the sheet to embed
            final String visualId, // Visual ID of the visual to embed
            final List<String> allowedDomains, // Runtime allowed domains for embedding
            final List<SessionTag> sessionTags // Session tags used for row-level security
    ) throws Exception {
        final DashboardVisualId dashboardVisual = new DashboardVisualId()
            .withDashboardId(dashboardId)
            .withSheetId(sheetId)
            .withVisualId(visualId);
        final AnonymousUserDashboardVisualEmbeddingConfiguration anonymousUserDashboardVisualEmbeddingConfiguration
            = new AnonymousUserDashboardVisualEmbeddingConfiguration()
                .withInitialDashboardVisualId(dashboardVisual);
        final AnonymousUserEmbeddingExperienceConfiguration anonymousUserEmbeddingExperienceConfiguration
            = new AnonymousUserEmbeddingExperienceConfiguration()
                .withDashboardVisual(anonymousUserDashboardVisualEmbeddingConfiguration);
        final GenerateEmbedUrlForAnonymousUserRequest generateEmbedUrlForAnonymousUserRequest
            = new GenerateEmbedUrlForAnonymousUserRequest()
                .withAwsAccountId(accountId)
                .withNamespace(namespace)
                // authorizedResourceArns should contain ARN of dashboard used below in ExperienceConfiguration
                .withAuthorizedResourceArns(authorizedResourceArns)
                .withExperienceConfiguration(anonymousUserEmbeddingExperienceConfiguration)
                .withAllowedDomains(allowedDomains)
                .withSessionTags(sessionTags)
                .withSessionLifetimeInMinutes(600L);

        final GenerateEmbedUrlForAnonymousUserResult generateEmbedUrlForAnonymousUserResult
            = quickSightClient.generateEmbedUrlForAnonymousUser(generateEmbedUrlForAnonymousUserRequest);

        return generateEmbedUrlForAnonymousUserResult.getEmbedUrl();
    }
}
```

### JavaScript
<a name="embedded-analytics-visuals-with-anonymous-users-js"></a>

```
global.fetch = require('node-fetch');
const AWS = require('aws-sdk');

function generateEmbedUrlForAnonymousUser(
    accountId, // Your AWS account ID
    dashboardId, // Dashboard ID to which the constructed url points
    sheetId, // Sheet ID to which the constructed url points
    visualId, // Visual ID to which the constructed url points
    quicksightNamespace, // valid namespace where you want to do embedding
    authorizedResourceArns, // dashboard arn list of dashboard visuals to embed
    allowedDomains, // runtime allowed domains for embedding
    sessionTags, // session tags used for row-level security
    generateEmbedUrlForAnonymousUserCallback, // success callback method
    errorCallback // error callback method
    ) {
    const experienceConfiguration = {
        "DashboardVisual": {
            "InitialDashboardVisualId": {
                "DashboardId": dashboardId,
                "SheetId": sheetId,
                "VisualId": visualId
            }
        }
    };
    
    const generateEmbedUrlForAnonymousUserParams = {
        "AwsAccountId": accountId,
        "Namespace": quicksightNamespace,
        // authorizedResourceArns should contain ARN of dashboard used below in ExperienceConfiguration
        "AuthorizedResourceArns": authorizedResourceArns,
        "AllowedDomains": allowedDomains,
        "ExperienceConfiguration": experienceConfiguration,
        "SessionTags": sessionTags,
        "SessionLifetimeInMinutes": 600
    };

    const quicksightClient = new AWS.QuickSight({
        region: process.env.AWS_REGION,
        credentials: {
            accessKeyId: AccessKeyId,
            secretAccessKey: SecretAccessKey,
            sessionToken: SessionToken,
            expiration: Expiration
        }
    });

    quicksightClient.generateEmbedUrlForAnonymousUser(generateEmbedUrlForAnonymousUserParams, function(err, data) {
        if (err) {
            console.log(err, err.stack);
            errorCallback(err);
        } else {
            const result = {
                "statusCode": 200,
                "headers": {
                    "Access-Control-Allow-Origin": "*", // USE YOUR WEBSITE DOMAIN TO SECURE ACCESS TO THIS API
                    "Access-Control-Allow-Headers": "Content-Type"
                },
                "body": JSON.stringify(data),
                "isBase64Encoded": false
            }
            generateEmbedUrlForAnonymousUserCallback(result);
        }
    });
}
```

### Python3
<a name="embedded-analytics-visuals-with-anonymous-users-py"></a>

```
import json
import boto3
from botocore.exceptions import ClientError
import time

# Create QuickSight and STS clients
quicksightClient = boto3.client('quicksight',region_name='us-west-2')
sts = boto3.client('sts')

# Function to generate embedded URL for anonymous user
# accountId: YOUR AWS ACCOUNT ID
# quicksightNamespace: VALID NAMESPACE WHERE YOU WANT TO DO NOAUTH EMBEDDING
# authorizedResourceArns: DASHBOARD ARN LIST TO EMBED
# allowedDomains: RUNTIME ALLOWED DOMAINS FOR EMBEDDING
# experienceConfiguration: DASHBOARD ID, SHEET ID and VISUAL ID TO WHICH THE CONSTRUCTED URL POINTS
# Example experienceConfig -> 'DashboardVisual': {
#     'InitialDashboardVisualId': {
#         'DashboardId': 'dashboardId',
#         'SheetId': 'sheetId',
#         'VisualId': 'visualId'
#     }
# },
# sessionTags: SESSION TAGS USED FOR ROW-LEVEL SECURITY
def generateEmbedUrlForAnonymousUser(accountId, quicksightNamespace, authorizedResourceArns, allowedDomains, experienceConfiguration, sessionTags):
    try:
        response = quicksightClient.generate_embed_url_for_anonymous_user(
            AwsAccountId = accountId,
            Namespace = quicksightNamespace,
            AuthorizedResourceArns = authorizedResourceArns,
            AllowedDomains = allowedDomains,
            ExperienceConfiguration = experienceConfiguration,
            SessionTags = sessionTags,
            SessionLifetimeInMinutes = 600
        )
            
        return {
            'statusCode': 200,
            'headers': {"Access-Control-Allow-Origin": "*", "Access-Control-Allow-Headers": "Content-Type"},
            'body': json.dumps(response),
            'isBase64Encoded':  bool('false')
        }
    except ClientError as e:
        print(e)
        return "Error generating embeddedURL: " + str(e)
```

### Node.js
<a name="embedded-analytics-visuals-with-anonymous-users-node"></a>

以下範例顯示的 JavaScript (Node.js) 可在應用程式伺服器上用來產生嵌入式儀表板的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示儀表板。

**Example**  

```
const AWS = require('aws-sdk');
const https = require('https');

var quicksightClient = new AWS.Service({
    apiConfig: require('./quicksight-2018-04-01.min.json'),
    region: 'us-east-1',
});

quicksightClient.generateEmbedUrlForAnonymousUser({
    'AwsAccountId': '111122223333',
    'Namespace' : 'default',
    // authorizedResourceArns should contain ARN of dashboard used below in ExperienceConfiguration
    'AuthorizedResourceArns': authorizedResourceArns,
    'ExperienceConfiguration': { 
        'DashboardVisual': {
            'InitialDashboardVisualId': {
                'DashboardId': 'dashboard_id',
                'SheetId': 'sheet_id',
                'VisualId': 'visual_id'
            }
        }
    },
    'AllowedDomains': allowedDomains,    
    'SessionTags': sessionTags,
    'SessionLifetimeInMinutes': 600

}, function(err, data) {
    console.log('Errors: ');
    console.log(err);
    console.log('Response: ');
    console.log(data);
});
```

**Example**  

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
//readability and added ellipsis to indicate that it's incomplete.
    {
        "Status": "200",
        "EmbedUrl": "https://quicksightdomain/embed/12345/dashboards/67890/sheets/12345/visuals/67890...",
        "RequestId": "7bee030e-f191-45c4-97fe-d9faf0e03713"
    }
```

### .NET/C\$1
<a name="embedded-analytics-visuals-with-anonymous-users-cs"></a>

以下範例顯示的 .NET/C\$1 程式碼可在應用程式伺服器上用來產生嵌入式儀表板的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示儀表板。

**Example**  

```
using System;
using Amazon.QuickSight;
using Amazon.QuickSight.Model;

namespace GenerateDashboardEmbedUrlForAnonymousUser
{
    class Program
    {
        static void Main(string[] args)
        {
            var quicksightClient = new AmazonQuickSightClient(
                AccessKey,
                SecretAccessKey,
                SessionToken,
                Amazon.RegionEndpoint.USEast1);
            try
            {
                DashboardVisualId dashboardVisual = new DashboardVisualId
                {
                    DashboardId = "dashboard_id",
                    SheetId = "sheet_id",
                    VisualId = "visual_id"
                };

                AnonymousUserDashboardVisualEmbeddingConfiguration anonymousUserDashboardVisualEmbeddingConfiguration
                    = new AnonymousUserDashboardVisualEmbeddingConfiguration
                    {
                        InitialDashboardVisualId = dashboardVisual                        
                    };               
                    
                AnonymousUserEmbeddingExperienceConfiguration anonymousUserEmbeddingExperienceConfiguration
                    = new AnonymousUserEmbeddingExperienceConfiguration
                    {
                        DashboardVisual = anonymousUserDashboardVisualEmbeddingConfiguration
                    }; 
                    
                Console.WriteLine(
                    quicksightClient.GenerateEmbedUrlForAnonymousUserAsync(new GenerateEmbedUrlForAnonymousUserRequest
                    {
                        AwsAccountId = "111222333444",
                        Namespace = default,
                        // authorizedResourceArns should contain ARN of dashboard used below in ExperienceConfiguration
                        AuthorizedResourceArns = { "dashboard_id" },
                        ExperienceConfiguration = anonymousUserEmbeddingExperienceConfiguration,
                        SessionTags = sessionTags,
                        SessionLifetimeInMinutes = 600,
                    }).Result.EmbedUrl
                );
            } catch (Exception ex) {
                Console.WriteLine(ex.Message);
            }
        }
    }
}
```

### AWS CLI
<a name="embedded-analytics-visuals-with-anonymous-users-cli"></a>

若要擔任角色，請選擇下列其中一個 AWS Security Token Service (AWS STS) API 操作：
+ [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) – 在使用 IAM 身分擔任角色的情況下使用此操作。
+ [AssumeRoleWithWebIdentity](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html) – 在使用 Web 身分提供者驗證您的使用者時，請使用此操作。
+ [AssumeRoleWithSaml](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html) –在您使用安全性聲明標記語言 (SAML) 驗證使用者時，請使用此操作。

以下範例顯示用來設定 IAM 角色的 CLI 命令。角色需要啟用 `quicksight:GenerateEmbedUrlForAnonymousUser` 的許可。

```
aws sts assume-role \
    --role-arn "arn:aws:iam::11112222333:role/QuickSightEmbeddingAnonymousPolicy" \
    --role-session-name anonymous caller
```

`assume-role` 操作會傳回三個輸出參數：存取金鑰、私密金鑰和工作階段字符。

**注意**  
若您呼叫 `AssumeRole` 操作時收到 `ExpiredToken` 錯誤，原因可能是先前的 `SESSION TOKEN` 仍在環境變數中。設定以下變數便可清除此錯誤：  
*AWS\$1ACCESS\$1KEY\$1ID* 
*AWS\$1SECRET\$1ACCESS\$1KEY* 
*AWS\$1SESSION\$1TOKEN* 

以下範例說明如何在 CLI 中設定這三個參數。如果您使用 Microsoft Windows 電腦，請使用 `set`，不要使用 `export`。

```
export AWS_ACCESS_KEY_ID     = "access_key_from_assume_role"
        export AWS_SECRET_ACCESS_KEY = "secret_key_from_assume_role"
        export AWS_SESSION_TOKEN     = "session_token_from_assume_role"
```

對於瀏覽您網站的使用者，執行這些命令可將其角色工作階段 ID 設為 `embedding_quicksight_visual_role/QuickSightEmbeddingAnonymousPolicy`。角色工作階段 ID 由來自 `role-arn` 和 `role-session-name` 值的角色名稱所組成。對每個使用者使用唯一的角色工作階段 ID，可確保為每個訪問使用者設定適當的許可。它還使每個會話獨立且不同。如果您正在使用 Web 伺服器陣列 (例如負載平衡)，且工作階段重新連線到不同的伺服器，則會開始新的工作階段。

為了取得視覺效果的簽章 URL，請從應用程式伺服器呼叫 `generate-embed-url-for-anynymous-user`。這會傳回可內嵌的視覺效果 URL。下列範例顯示如何使用伺服器端呼叫，針對匿名造訪您的 Web 入口網站或應用程式的使用者，產生內嵌視覺效果的 URL。

```
aws quicksight generate-embed-url-for-anonymous-user \
    --aws-account-id 111122223333 \
    --namespace default-or-something-else \
    --session-lifetime-in-minutes 15 \
    --authorized-resource-arns '["dashboard-arn-1","dashboard-arn-2"]' \
    --allowed-domains '["domain1","domain2"]' \
    --session-tags '["Key": tag-key-1,"Value": tag-value-1,{"Key": tag-key-1,"Value": tag-value-1}]' \
    --experience-configuration 'DashboardVisual={InitialDashboardVisualId={DashboardId=dashboard_id,SheetId=sheet_id,VisualId=visual_id}}'
```

如需使用此操作的詳細資訊，請參閱 [https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForAnonymousUser.html](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForAnonymousUser.html)。您可以在您自己的程式碼中使用這個和其他 API 操作。

## 步驟 3：內嵌視覺效果 URL
<a name="embedded-analytics-visuals-with-anonymous-users-step-3"></a>


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

在下一節中，您可以了解如何使用 [Amazon Quick Sight 內嵌 SDK](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) (JavaScript)，在網站或應用程式頁面中嵌入步驟 2 的視覺化 URL。您可以使用此 SDK 執行以下操作：
+ 將視覺效果放置在 HTML 頁面上。
+ 將參數傳遞到視覺效果中。
+ 以針對您的應用程式而訂做的訊息來處理錯誤狀態。

呼叫 `GenerateEmbedUrlForAnonymousUser` API 操作以產生可嵌入應用程式的 URL。此 URL 的有效期為 5 分鐘，而產生的工作階段有效期為 10 小時。API 操作為 URL 提供的授權 (auth) 代碼將啟用單一登入工作階段。

以下是 `generate-embed-url-for-anonymous-user` 的回應範例。此範例中`quicksightdomain`的 是您用來存取 Amazon Quick Sight 帳戶的 URL。

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
//readability and added ellipsis to indicate that it's incomplete.
    {
        "Status": "200",
        "EmbedUrl": "https://quicksightdomain/embed/12345/dashboards/67890/sheets/12345/visuals/67890...",
        "RequestId": "7bee030e-f191-45c4-97fe-d9faf0e03713"
    }
```

使用 Amazon Quick Sight [內嵌 SDK 或將此 URL 新增至 iframe，將此視覺效果內嵌](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk)在您的網頁中。如果您設定固定高度和寬度數字 （以像素為單位），Amazon Quick Sight 會使用這些值，而且不會隨著視窗調整大小而變更視覺效果。如果您設定相對百分比高度和寬度，Amazon Quick Sight 會提供隨著視窗大小變更而修改的回應式配置。透過使用 Amazon Quick Sight 內嵌 SDK，您也可以控制視覺效果中的參數，並在視覺效果載入完成和錯誤方面接收回呼。

即將託管內嵌視覺效果的網域必須列在*允許清單*中，此為您的 Quick 訂閱已獲核准的域清單。這項要求將使未獲核准的域無法託管內嵌視覺效果和儀表板，進而保護您的資料。如需為內嵌視覺效果和儀表板新增網域的詳細資訊，請參閱[使用 Amazon Quick Sight API 在執行時間允許列出網域](https://docs.aws.amazon.com/quicksight/latest/user/embedding-run-time.html)。

下列範例示範如何使用產生的 URL。此代碼駐留在您的應用程式伺服器上。

### SDK 2.0
<a name="embedded-analytics-visuals-with-anonymous-users-sdkv2"></a>

```
<!DOCTYPE html>
<html>

    <head>
        <title>Visual Embedding Example</title>
        <script src="https://unpkg.com/amazon-quicksight-embedding-sdk@2.0.0/dist/quicksight-embedding-js-sdk.min.js"></script>
        <script type="text/javascript">
            const embedVisual = async() => {    
                const {
                    createEmbeddingContext,
                } = QuickSightEmbedding;

                const embeddingContext = await createEmbeddingContext({
                    onChange: (changeEvent, metadata) => {
                        console.log('Context received a change', changeEvent, metadata);
                    },
                });

                const frameOptions = {
                    url: "<YOUR_EMBED_URL>", // replace this value with the url generated via embedding API
                    container: '#experience-container',
                    height: "700px",
                    width: "1000px",
                    onChange: (changeEvent, metadata) => {
                        switch (changeEvent.eventName) {
                            case 'FRAME_MOUNTED': {
                                console.log("Do something when the experience frame is mounted.");
                                break;
                            }
                            case 'FRAME_LOADED': {
                                console.log("Do something when the experience frame is loaded.");
                                break;
                            }
                        }
                    },
                };

                const contentOptions = {
                    parameters: [
                        {
                            Name: 'country',
                            Values: ['United States'],
                        },
                        {
                            Name: 'states',
                            Values: [
                                'California',
                                'Washington'
                            ]
                        }
                    ],
                    locale: "en-US",
                    onMessage: async (messageEvent, experienceMetadata) => {
                        switch (messageEvent.eventName) {
                            case 'CONTENT_LOADED': {
                                console.log("All visuals are loaded. The title of the document:", messageEvent.message.title);
                                break;
                            }
                            case 'ERROR_OCCURRED': {
                                console.log("Error occurred while rendering the experience. Error code:", messageEvent.message.errorCode);
                                break;
                            }
                            case 'PARAMETERS_CHANGED': {
                                console.log("Parameters changed. Changed parameters:", messageEvent.message.changedParameters);
                                break;
                            }
                            case 'SIZE_CHANGED': {
                                console.log("Size changed. New dimensions:", messageEvent.message);
                                break;
                            }
                        }
                    },
                };
                const embeddedVisualExperience = await embeddingContext.embedVisual(frameOptions, contentOptions);

                const selectCountryElement = document.getElementById('country');
                selectCountryElement.addEventListener('change', (event) => {
                    embeddedVisualExperience.setParameters([
                        {
                            Name: 'country',
                            Values: event.target.value
                        }
                    ]);
                });
            };
        </script>
    </head>

    <body onload="embedVisual()">
        <span>
            <label for="country">Country</label>
            <select id="country" name="country">
                <option value="United States">United States</option>
                <option value="Mexico">Mexico</option>
                <option value="Canada">Canada</option>
            </select>
        </span>
        <div id="experience-container"></div>
    </body>

</html>
```

### SDK 1.0
<a name="embedded-analytics-visuals-with-anonymous-users-sdkv1"></a>

```
<!DOCTYPE html>
<html>

    <head>
        <title>Visual Embedding Example</title>
        <!-- You can download the latest QuickSight embedding SDK version from https://www.npmjs.com/package/amazon-quicksight-embedding-sdk -->
        <!-- Or you can do "npm install amazon-quicksight-embedding-sdk", if you use npm for javascript dependencies -->
        <script src="./quicksight-embedding-js-sdk.min.js"></script>
        <script type="text/javascript">
            let embeddedVisualExperience;
            function onVisualLoad(payload) {
                console.log("Do something when the visual is fully loaded.");
            }

            function onError(payload) {
                console.log("Do something when the visual fails loading");
            }

            function embedVisual() {
                const containerDiv = document.getElementById("embeddingContainer");
                const options = {
                    url: "<YOUR_EMBED_URL>", // replace this value with the url generated via embedding API
                    container: containerDiv,
                    parameters: {
                        country: "United States"
                    },
                    height: "700px",
                    width: "1000px",
                    locale: "en-US"
                };
                embeddedVisualExperience = QuickSightEmbedding.embedVisual(options);
                embeddedVisualExperience.on("error", onError);
                embeddedVisualExperience.on("load", onVisualLoad);
            }

            function onCountryChange(obj) {
                embeddedVisualExperience.setParameters({country: obj.value});
            }
        </script>
    </head>

    <body onload="embedVisual()">
        <span>
            <label for="country">Country</label>
            <select id="country" name="country" onchange="onCountryChange(this)">
                <option value="United States">United States</option>
                <option value="Mexico">Mexico</option>
                <option value="Canada">Canada</option>
            </select>
        </span>
        <div id="embeddingContainer"></div>
    </body>

</html>
```

若要讓此範例運作，請務必使用 Amazon Quick Sight 內嵌 SDK，使用 JavaScript 在您的網站上載入內嵌視覺效果。為獲得您的版本，請執行以下其中一項操作：
+ 從 GitHub 下載 [Amazon Quick Sight 內嵌 SDK](https://github.com/awslabs/amazon-quicksight-embedding-sdk#step-3-create-the-quicksight-session-object)。此儲存庫由一組 Amazon Quick Sight 開發人員維護。
+ 從 [https://www.npmjs.com/package/amazon-quicksight-embedding-sdk](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) 下載最新的 QuickSight 內嵌開發套件版本。
+ 如果您使用 JavaScript 相依性的 `npm`，請執行下列命令來下載並安裝它。

  ```
  npm install amazon-quicksight-embedding-sdk
  ```

# 為已註冊使用者嵌入 Amazon Quick Sight 主控台的完整功能
<a name="embedded-analytics-full-console-for-authenticated-users"></a>

**重要**  
Amazon Quick Sight 有用於內嵌分析的新 API 操作： `GenerateEmbedUrlForAnonymousUser`和 `GenerateEmbedUrlForRegisteredUser`。  
您仍然可以使用 `GetDashboardEmbedUrl`和 `GetSessionEmbedUrl` API 操作來內嵌儀表板和 Amazon Quick Sight 主控台，但它們不包含最新的內嵌功能。如需使用舊 API 操作內嵌的詳細資訊，請參閱[使用 GetDashboardEmbedURL和 GetSessionEmbedURL API 操作內嵌分析](https://docs.aws.amazon.com/quicksight/latest/user/embedded-analytics-deprecated.html)。


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

使用企業版，除了提供唯讀儀表板之外，您還可以在自訂品牌撰寫入口網站中提供 Amazon Quick Sight 主控台體驗。使用這種方法，可以讓使用者建立資料來源、資料集和分析。在相同的界面中，他們可以建立、發布和檢視儀表板。如果您想限制其中一些許可，也可以這樣做。

透過內嵌主控台存取 Amazon Quick Sight 的使用者需要屬於作者或管理員安全群組。讀者沒有足夠的存取權來使用 Amazon Quick Sight 主控台進行撰寫，無論它是內嵌或 的一部分 AWS 管理主控台。但是，作者和管理員仍然可以存取內嵌式儀表板。如果您想要限制某些編寫特徵的許可，可以使用 [UpdateUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_UpdateUser.html) API 操作將自訂許可設定檔新增至使用者。使用 [RegisterUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_RegisterUser.html) API 操作來新增附加自訂許可設定檔的新使用者。如需詳細資訊，請參閱下列章節：
+ 如需透過定義自訂主控台許可來建立自訂角色的資訊，請參閱[自訂 Amazon Quick Sight 主控台的存取權](https://docs.aws.amazon.com/quicksight/latest/user/customizing-permissions-to-the-quicksight-console.html)。
+ 如需使用命名空間隔離多租戶使用者、群組和 Amazon Quick Sight 資產的相關資訊，請參閱 [Amazon Quick Sight 命名空間](https://docs.aws.amazon.com/quicksight/latest/APIReference/controlling-access.html#namespaces.html)。
+ 如需將自有品牌新增至內嵌 Amazon Quick Sight 主控台的詳細資訊，請參閱[在 Amazon Quick Sight 中使用佈景主題](https://docs.aws.amazon.com/quicksight/latest/user/themes-in-quicksight.html)和 [QuickSight 佈景主題 API 操作](https://docs.aws.amazon.com/quicksight/latest/APIReference/qs-assets.html#themes)。

在下列各節中，您可以找到有關如何為已註冊使用者設定內嵌 Amazon Quick Sight 儀表板的詳細資訊。

**Topics**
+ [

## 步驟 1：設定許可
](#embedded-analytics-full-console-for-authenticated-users-step-1)
+ [

## 步驟 2：產生帶有身分驗證碼的 URL
](#embedded-analytics-full-console-for-authenticated-users-step-2)
+ [

## 步驟 3：嵌入主控台工作階段 URL
](#embedded-analytics-full-console-for-authenticated-users-step-3)
+ [

# 在嵌入式主控台中為已註冊使用者啟用生成式 BI 功能
](embedding-consoles-genbi.md)

## 步驟 1：設定許可
<a name="embedded-analytics-full-console-for-authenticated-users-step-1"></a>

在以下章節中，您可以了解如何為後端應用程式或 Web 伺服器設定許可。這個任務需要有 IAM 的管理存取權。

每個存取 Amazon Quick Sight 的使用者都會擔任一個角色，為他們提供主控台工作階段的 Amazon Quick Sight 存取權和許可。若要實現這一點，請在 AWS 您的帳戶中建立 IAM 角色。將 IAM 政策與此角色建立關聯，以提供許可給擔任此角色的任何使用者。新增`quicksight:RegisterUser`許可，以確保讀者可以唯讀方式存取 Amazon Quick Sight，而且無法存取任何其他資料或建立功能。IAM 角色也需要提供可擷取主控台工作階段 URL 的許可。對於這一點，您新增 `quicksight:GenerateEmbedUrlForRegisteredUser`。

您可以在 IAM 政策中建立條件，以限制開發人員可在 `GenerateEmbedUrlForAnonymousUser` API 操作的 `AllowedDomains` 參數中列出的域。`AllowedDomains` 參數是選用參數。它可讓您以開發人員身分選擇覆寫**管理 Amazon Quick Sight **選單中設定的靜態網域。您則最多可以列出三個可存取產生之 URL 的域或子網域。然後，此 URL 將嵌入您建立的網站中。只有參數中列出的域可以存取內嵌式儀表板。如果沒有這種情況，您可以在 `AllowedDomains` 參數中列出網際網路上的任何域。

**IAM 條件運算子的安全最佳實務**  
設定不當的 IAM 條件運算子可能會允許透過 URL 變化未經授權存取您的內嵌 Quick 資源。在 IAM 政策中使用 `quicksight:AllowedEmbeddingDomains`條件金鑰時，請使用允許特定網域或拒絕未特別允許的所有網域的條件運算子。如需 IAM 條件運算子的詳細資訊，請參閱《IAM [使用者指南》中的 IAM JSON 政策元素：條件運算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)。  
許多不同的 URL 變化可以指向相同的資源。例如，下列 URLs全部解析為相同的內容：  
`https://example.com`
`https://example.com/`
`https://Example.com`
如果您的政策使用未考慮這些 URL 變化的運算子，攻擊者可以透過提供同等的 URL 變化來繞過您的限制。  
您必須驗證 IAM 政策是否使用適當的條件運算子來防止繞過漏洞，並確保只有預期的網域可以存取您的內嵌資源。

下列範例政策提供這些許可。

下列範例政策提供擷取主控台工作階段 URL 的許可。如果您要在使用者存取內嵌工作階段之前建立使用者，則可以不帶 `quicksight:RegisterUser` 使用原則。

最後，您的應用程式的 IAM 身分必須有相關聯的信任政策，以允許存取至您剛建立的角色。這表示當使用者存取您的應用程式時，您的應用程式可以代表使用者擔任該角色，並在 Amazon Quick Sight 中佈建使用者。範例信任政策如下所示。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowLambdaFunctionsToAssumeThisRole",
            "Effect": "Allow",
            "Principal": {
                "Service": "lambda.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        },
        {
            "Sid": "AllowEC2InstancesToAssumeThisRole",
            "Effect": "Allow",
            "Principal": {
                "Service": "ec2.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

如需 OpenID Connect 或 SAML 身分驗證的信任政策詳細資訊，請參閱 *IAM 使用者指南*的下列各節：
+ [建立 Web 身分或 OpenID Connect 聯合身分的角色 (主控台)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_oidc.html)
+ [建立 SAML 2.0 聯合身分的角色 (主控台)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html)

## 步驟 2：產生帶有身分驗證碼的 URL
<a name="embedded-analytics-full-console-for-authenticated-users-step-2"></a>

在下一章節，您可以了解如何在您的應用程式伺服器上驗證使用者，以及取得可內嵌主控台工作階段的 URL。

當使用者存取您的應用程式時，該應用程式代表使用者擔任 IAM 角色。然後，如果使用者尚未存在，它會將使用者新增至 Amazon Quick Sight。接著，它傳遞識別符當作唯一的角色工作階段 ID。

執行所述的步驟可確保主控台工作階段的每個檢視器在 Amazon Quick Sight 中都是唯一的佈建。它還會強制執行個別使用者設定，例如資料列層級的安全性和參數的動態預設值。

下列範例會代表使用者執行 IAM 身分驗證。此代碼在您的應用程式伺服器上運行。

### Java
<a name="embedded-analytics-full-console-for-authenticated-users-java"></a>

```
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.auth.AWSCredentialsProvider;
import com.amazonaws.regions.Regions;
import com.amazonaws.services.quicksight.AmazonQuickSight;
import com.amazonaws.services.quicksight.AmazonQuickSightClientBuilder;
import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForRegisteredUserRequest;
import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForRegisteredUserResult;
import com.amazonaws.services.quicksight.model.RegisteredUserEmbeddingExperienceConfiguration;
import com.amazonaws.services.quicksight.model.RegisteredUserQuickSightConsoleEmbeddingConfiguration;

/**
 * Class to call QuickSight AWS SDK to get url for QuickSight console embedding.
 */
public class GetQuicksightEmbedUrlRegisteredUserQSConsoleEmbedding {

    private final AmazonQuickSight quickSightClient;

    public GetQuicksightEmbedUrlRegisteredUserQSConsoleEmbedding() {
        this.quickSightClient = AmazonQuickSightClientBuilder
                .standard()
                .withRegion(Regions.US_EAST_1.getName())
                .withCredentials(new AWSCredentialsProvider() {
                        @Override
                        public AWSCredentials getCredentials() {
                            // provide actual IAM access key and secret key here
                            return new BasicAWSCredentials("access-key", "secret-key");
                        }

                         @Override
                        public void refresh() {                           
                        }
                    }
                )
                .build();
    }

    public String getQuicksightEmbedUrl(
            final String accountId,
            final String userArn, // Registered user arn to use for embedding. Refer to Get Embed Url section in developer portal to find out how to get user arn for a QuickSight user.
            final List<String> allowedDomains, // Runtime allowed domain for embedding
            final String initialPath
    ) throws Exception {
        final RegisteredUserEmbeddingExperienceConfiguration experienceConfiguration = new RegisteredUserEmbeddingExperienceConfiguration()
                .withQuickSightConsole(new RegisteredUserQuickSightConsoleEmbeddingConfiguration().withInitialPath(initialPath));
        final GenerateEmbedUrlForRegisteredUserRequest generateEmbedUrlForRegisteredUserRequest = new GenerateEmbedUrlForRegisteredUserRequest();
        generateEmbedUrlForRegisteredUserRequest.setAwsAccountId(accountId);
        generateEmbedUrlForRegisteredUserRequest.setUserArn(userArn);
        generateEmbedUrlForRegisteredUserRequest.setAllowedDomains(allowedDomains);
        generateEmbedUrlForRegisteredUserRequest.setExperienceConfiguration(experienceConfiguration);

        final GenerateEmbedUrlForRegisteredUserResult generateEmbedUrlForRegisteredUserResult = quickSightClient.generateEmbedUrlForRegisteredUser(generateEmbedUrlForRegisteredUserRequest);

        return generateEmbedUrlForRegisteredUserResult.getEmbedUrl();
    }
}
```

### JavaScript
<a name="embedded-analytics-full-console-for-authenticated-users-js"></a>

```
global.fetch = require('node-fetch');
const AWS = require('aws-sdk');

function generateEmbedUrlForRegisteredUser(
    accountId,
    dashboardId,
    openIdToken, // Cognito-based token
    userArn, // registered user arn
    roleArn, // IAM user role to use for embedding
    sessionName, // Session name for the roleArn assume role
    allowedDomains, // Runtime allowed domain for embedding
    getEmbedUrlCallback, // GetEmbedUrl success callback method
    errorCallback // GetEmbedUrl error callback method
    ) {
    const stsClient = new AWS.STS();
    let stsParams = {
        RoleSessionName: sessionName,
        WebIdentityToken: openIdToken,
        RoleArn: roleArn
    }

    stsClient.assumeRoleWithWebIdentity(stsParams, function(err, data) {
        if (err) {
            console.log('Error assuming role');
            console.log(err, err.stack);
            errorCallback(err);
        } else {
            const getDashboardParams = {
                "AwsAccountId": accountId,
                "ExperienceConfiguration": {
                    "QuickSightConsole": {
                        "InitialPath": '/start'
                    }
                },
                "UserArn": userArn,
                "AllowedDomains": allowedDomains,
                "SessionLifetimeInMinutes": 600
            };

            const quicksightGetDashboard = new AWS.QuickSight({
                region: process.env.AWS_REGION,
                credentials: {
                    accessKeyId: data.Credentials.AccessKeyId,
                    secretAccessKey: data.Credentials.SecretAccessKey,
                    sessionToken: data.Credentials.SessionToken,
                    expiration: data.Credentials.Expiration
                }
            });

            quicksightGetDashboard.generateEmbedUrlForRegisteredUser(getDashboardParams, function(err, data) {
                if (err) {
                    console.log(err, err.stack);
                    errorCallback(err);
                } else {
                    const result = {
                        "statusCode": 200,
                        "headers": {
                            "Access-Control-Allow-Origin": "*", // Use your website domain to secure access to GetEmbedUrl API
                            "Access-Control-Allow-Headers": "Content-Type"
                        },
                        "body": JSON.stringify(data),
                        "isBase64Encoded": false
                    }
                    getEmbedUrlCallback(result);
                }
            });
        }
    });
}
```

### Python3
<a name="embedded-analytics-full-console-for-authenticated-users-py"></a>

```
import json
import boto3
from botocore.exceptions import ClientError

# Create QuickSight and STS clients
qs = boto3.client('quicksight', region_name='us-east-1')
sts = boto3.client('sts')

# Function to generate embedded URL  
# accountId: AWS account ID
# userArn: arn of registered user
# allowedDomains: Runtime allowed domain for embedding
# roleArn: IAM user role to use for embedding
# sessionName: session name for the roleArn assume role
def generateEmbeddingURL(accountId, userArn, allowedDomains, roleArn, sessionName):
    try:
        assumedRole = sts.assume_role(
            RoleArn = roleArn,
            RoleSessionName = sessionName,
        )
    except ClientError as e:
        return "Error assuming role: " + str(e)
    else: 
        assumedRoleSession = boto3.Session(
            aws_access_key_id = assumedRole['Credentials']['AccessKeyId'],
            aws_secret_access_key = assumedRole['Credentials']['SecretAccessKey'],
            aws_session_token = assumedRole['Credentials']['SessionToken'],
        )
        try:
            quickSightClient = assumedRoleSession.client('quicksight', region_name='us-east-1')
            
            experienceConfiguration = {
                "QuickSightConsole": {
                    "InitialPath": "/start"
                }
            }
            response = quickSightClient.generate_embed_url_for_registered_user(
                 AwsAccountId = accountId,
                 ExperienceConfiguration = experienceConfiguration,
                 UserArn = userArn,
                 AllowedDomains = allowedDomains,
                 SessionLifetimeInMinutes = 600
            )
            
            return {
                'statusCode': 200,
                'headers': {"Access-Control-Allow-Origin": "*", "Access-Control-Allow-Headers": "Content-Type"},
                'body': json.dumps(response),
                'isBase64Encoded':  bool('false')
            }
        except ClientError as e:
            return "Error generating embedding url: " + str(e)
```

### Node.js
<a name="embedded-analytics-full-console-for-authenticated-users-node"></a>

以下範例顯示的 JavaScript (Node.js) 可在應用程式伺服器上用來產生內嵌主控台工作階段的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示主控台工作階段。

**Example**  

```
const AWS = require('aws-sdk');
const https = require('https');

var quicksightClient = new AWS.Service({
    apiConfig: require('./quicksight-2018-04-01.min.json'),
    region: 'us-east-1',
});

quicksightClient.generateEmbedUrlForRegisteredUser({
    'AwsAccountId': '111122223333',
    'ExperienceConfiguration': {
        'QuickSightConsole': {
            'InitialPath': '/start'
        }
    },
    'UserArn': 'REGISTERED_USER_ARN',
    'AllowedDomains': allowedDomains,
    'SessionLifetimeInMinutes': 100
}, function(err, data) {
    console.log('Errors: ');
    console.log(err);
    console.log('Response: ');
    console.log(data);
});
```

**Example**  

```
// The URL returned is over 900 characters. For this example, we've shortened the string for
// readability and added ellipsis to indicate that it's incomplete.
    {
        Status: 200,
        EmbedUrl: 'https://quicksightdomain/embed/12345/dashboards/67890..,
        RequestId: '7bee030e-f191-45c4-97fe-d9faf0e03713'
    }
```

### .NET/C\$1
<a name="embedded-analytics-full-console-for-authenticated-users-cs"></a>

以下範例顯示的 .NET/C\$1 程式碼可在應用程式伺服器上用來產生內嵌主控台工作階段的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示主控台。

**Example**  

```
using System;
using Amazon.QuickSight;
using Amazon.QuickSight.Model;

namespace GenerateDashboardEmbedUrlForRegisteredUser
{
    class Program
    {
        static void Main(string[] args)
        {
            var quicksightClient = new AmazonQuickSightClient(
                AccessKey,
                SecretAccessKey,
                SessionToken,
                Amazon.RegionEndpoint.USEast1);
            try
            {
                RegisteredUserQuickSightConsoleEmbeddingConfiguration registeredUserQuickSightConsoleEmbeddingConfiguration
                    = new RegisteredUserQuickSightConsoleEmbeddingConfiguration
                    {
                        InitialPath = "/start"
                    };
                RegisteredUserEmbeddingExperienceConfiguration registeredUserEmbeddingExperienceConfiguration
                    = new RegisteredUserEmbeddingExperienceConfiguration
                    {
                        QuickSightConsole = registeredUserQuickSightConsoleEmbeddingConfiguration
                    };
                
                Console.WriteLine(
                    quicksightClient.GenerateEmbedUrlForRegisteredUserAsync(new GenerateEmbedUrlForRegisteredUserRequest
                    {
                        AwsAccountId = "111122223333",
                        ExperienceConfiguration = registeredUserEmbeddingExperienceConfiguration,
                        UserArn = "REGISTERED_USER_ARN",
                        AllowedDomains = allowedDomains,
                        SessionLifetimeInMinutes = 100
                    }).Result.EmbedUrl
                );
            } catch (Exception ex) {
                Console.WriteLine(ex.Message);
            }
        }
    }
}
```

### AWS CLI
<a name="embedded-analytics-full-console-for-authenticated-users-cli"></a>

若要擔任角色，請選擇下列其中一個 AWS Security Token Service (AWS STS) API 操作：
+ [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) – 在使用 IAM 身分擔任角色的情況下使用此操作。
+ [AssumeRoleWithWebIdentity](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html) – 在使用 Web 身分提供者驗證您的使用者時，請使用此操作。
+ [AssumeRoleWithSaml](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html) –在您使用 SAML 驗證使用者時，請使用此操作。

以下範例顯示用來設定 IAM 角色的 CLI 命令。角色需要啟用 `quicksight:GenerateEmbedUrlForRegisteredUser` 的許可。如果您在第一次開啟 Amazon Quick Sight 時採取just-in-time方法來新增使用者，該角色也需要為 啟用許可`quicksight:RegisterUser`。

```
aws sts assume-role \
     --role-arn "arn:aws:iam::111122223333:role/embedding_quicksight_dashboard_role" \
     --role-session-name john.doe@example.com
```

`assume-role` 操作會傳回三個輸出參數：存取金鑰、私密金鑰和工作階段字符。

**注意**  
若您呼叫 `AssumeRole` 操作時收到 `ExpiredToken` 錯誤，原因可能是先前的 `SESSION TOKEN` 仍在環境變數中。設定以下變數便可清除此錯誤：  
*AWS\$1ACCESS\$1KEY\$1ID* 
*AWS\$1SECRET\$1ACCESS\$1KEY* 
*AWS\$1SESSION\$1TOKEN* 

以下範例說明如何在 CLI 中設定這三個參數。如果您使用 Microsoft Windows 電腦，請使用 `set`，不要使用 `export`。

```
export AWS_ACCESS_KEY_ID     = "access_key_from_assume_role"
export AWS_SECRET_ACCESS_KEY = "secret_key_from_assume_role"
export AWS_SESSION_TOKEN     = "session_token_from_assume_role"
```

對於瀏覽您網站的使用者，執行這些命令可將其角色工作階段 ID 設為 `embedding_quicksight_console_session_role/john.doe@example.com`。角色工作階段 ID 由來自 `role-arn` 和 `role-session-name` 值的角色名稱所組成。對每個使用者使用唯一的角色工作階段 ID，可確保為每個使用者設定適當的許可。還能避免對使用者存取進行任何調節。調節是一項安全功能，可防止相同的使用者從多個位置存取 Amazon Quick Sight。

角色工作階段 ID 也會成為 Amazon Quick Sight 中的使用者名稱。您可以使用此模式提前在 Amazon Quick Sight 中佈建使用者，或在使用者第一次存取主控台工作階段時佈建他們。

以下範例顯示可用來佈建使用者的 CLI 命令。如需 [RegisterUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_RegisterUser.html)、[DescribeUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_DescribeUser.html) 和其他 Amazon Quick Sight API 操作的詳細資訊，請參閱 [Amazon Quick Sight API 參考](https://docs.aws.amazon.com/quicksight/latest/APIReference/Welcome.html)。

```
aws quicksight register-user \
     --aws-account-id 111122223333 \
     --namespace default \
     --identity-type IAM \
     --iam-arn "arn:aws:iam::111122223333:role/embedding_quicksight_dashboard_role" \
     --user-role READER \
     --user-name jhnd \
     --session-name "john.doe@example.com" \
     --email john.doe@example.com \
     --region us-east-1 \
     --custom-permissions-name TeamA1
```

如果使用者是透過 Microsoft AD 進行身分驗證，您就不需要使用 `RegisterUser` 設定他們。相反地，他們應在第一次存取 Amazon Quick Sight 時自動訂閱。若是 Microsoft AD 使用者，您可以使用 `DescribeUser` 取得使用者的 ARN。

使用者第一次存取 Amazon Quick Sight 時，您也可以將此使用者新增至適當的群組。以下範例顯示用於將使用者新增至群組的 CLI 命令。

```
aws quicksight create-group-membership \
     --aws-account-id=111122223333 \
     --namespace=default \
     --group-name=financeusers \
     --member-name="embedding_quicksight_dashboard_role/john.doe@example.com"
```

您現在擁有的應用程式使用者也是 Amazon Quick Sight 的使用者，以及可存取 Amazon Quick Sight 主控台工作階段的使用者。

最後，為了取得主控台工作階段的簽章 URL，請從應用程式伺服器呼叫 `generate-embed-url-for-registered-user`。這將返回可嵌入的主控台工作階段 URL。下列範例示範如何使用伺服器端呼叫為透過 AWS Managed Microsoft AD 或單一登入 (IAM Identity Center) 驗證的使用者產生內嵌主控台工作階段的 URL。

```
aws quicksight generate-embed-url-for-registered-user \
    --aws-account-id 111122223333 \
    --entry-point the-url-for--the-console-session \
    --session-lifetime-in-minutes 600 \
    --user-arn arn:aws:quicksight:us-east-1:111122223333:user/default/embedding_quicksight_dashboard_role/embeddingsession
	--allowed-domains '["domain1","domain2"]' \
    --experience-configuration QuickSightConsole={InitialPath="/start"}
```

如需使用此操作的詳細資訊，請參閱 [https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html)。您可以在您自己的程式碼中使用這個和其他 API 操作。

## 步驟 3：嵌入主控台工作階段 URL
<a name="embedded-analytics-full-console-for-authenticated-users-step-3"></a>

在下一節中，您可以了解如何使用 [Amazon Quick Sight 內嵌 SDK](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) (JavaScript)，在網站或應用程式頁面的步驟 3 中內嵌主控台工作階段 URL。您可以使用此 SDK 執行以下操作：
+ 將主控台工作階段放置在 HTML 頁面上。
+ 將參數傳遞至主控台工作階段。
+ 以針對您的應用程式而訂做的訊息來處理錯誤狀態。

呼叫 `GenerateEmbedUrlForRegisteredUser` API 操作以產生可嵌入應用程式的 URL。此 URL 的有效期為 5 分鐘，而產生的工作階段有效期最長為 10 小時。此 API 操作提供的 URL 附有可啟用單一登入工作階段的 `auth_code`。

以下是 `generate-embed-url-for-registered-user` 的回應範例。

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
//readability and added ellipsis to indicate that it's incomplete.
{
     "Status": "200",
     "EmbedUrl": "https://quicksightdomain/embedding/12345/start...",
     "RequestId": "7bee030e-f191-45c4-97fe-d9faf0e03713"
}
```

使用 Amazon Quick Sight [內嵌 SDK ](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk)或將此 URL 新增至 iframe，將此主控台工作階段內嵌在您的網頁中。如果您設定固定高度和寬度數字 （以像素為單位），Amazon Quick Sight 會使用這些值，而且不會隨著視窗調整大小而變更視覺效果。如果您設定相對百分比高度和寬度，Amazon Quick Sight 會提供隨著視窗大小變更而修改的回應式配置。透過使用 Amazon Quick Sight 內嵌 SDK，您也可以控制主控台工作階段中的參數，並根據頁面載入完成和錯誤接收回呼。

要託管內嵌儀表板的網域必須位於*允許清單*上，即 Quick 訂閱的已核准網域清單。這項要求將使未獲核准的網域無法託管嵌入儀表板，進而保護您的資料。如需為內嵌主控台新增網域的詳細資訊，請參閱[使用 Amazon Quick Sight API 在執行時間允許列出網域](https://docs.aws.amazon.com/quicksight/latest/user/embedding-run-time.html)。

下列範例示範如何使用產生的 URL。此代碼在您的應用程式伺服器上生成。

### SDK 2.0
<a name="embedded-analytics-full-console-for-authenticated-users-sdkv2"></a>

```
<!DOCTYPE html>
<html>

    <head>
        <title>Console Embedding Example</title>
        <script src="https://unpkg.com/amazon-quicksight-embedding-sdk@2.0.0/dist/quicksight-embedding-js-sdk.min.js"></script>
        <script type="text/javascript">
            const embedSession = async() => {    
                const {
                    createEmbeddingContext,
                } = QuickSightEmbedding;

                const embeddingContext = await createEmbeddingContext({
                    onChange: (changeEvent, metadata) => {
                        console.log('Context received a change', changeEvent, metadata);
                    },
                });

                const frameOptions = {
                    url: "<YOUR_EMBED_URL>", // replace this value with the url generated via embedding API
                    container: '#experience-container',
                    height: "700px",
                    width: "1000px",
                    onChange: (changeEvent, metadata) => {
                        switch (changeEvent.eventName) {
                            case 'FRAME_MOUNTED': {
                                console.log("Do something when the experience frame is mounted.");
                                break;
                            }
                            case 'FRAME_LOADED': {
                                console.log("Do something when the experience frame is loaded.");
                                break;
                            }
                        }
                    },
                };

                const contentOptions = {
                    onMessage: async (messageEvent, experienceMetadata) => {
                        switch (messageEvent.eventName) {
                            case 'ERROR_OCCURRED': {
                                console.log("Do something when the embedded experience fails loading.");
                                break;
                            }
                        }
                    }
                };
                const embeddedConsoleExperience = await embeddingContext.embedConsole(frameOptions, contentOptions);
            };
        </script>
    </head>

    <body onload="embedSession()">
        <div id="experience-container"></div>
    </body>

</html>
```

### SDK 1.0
<a name="embedded-analytics-full-console-for-authenticated-users-sdkv1"></a>

```
<!DOCTYPE html>
<html>

    <head>
        <title>QuickSight Console Embedding</title>
        <script src="https://unpkg.com/amazon-quicksight-embedding-sdk@1.0.15/dist/quicksight-embedding-js-sdk.min.js"></script>
        <script type="text/javascript">
            var session

            function onError(payload) {
                console.log("Do something when the session fails loading");
            }

            function embedSession() {
                var containerDiv = document.getElementById("embeddingContainer");
                var options = {
                    // replace this dummy url with the one generated via embedding API
                    url: "https://us-east-1.quicksight.aws.amazon.com/sn/dashboards/dashboardId?isauthcode=true&identityprovider=quicksight&code=authcode", // replace this dummy url with the one generated via embedding API
                    container: containerDiv,
                    parameters: {
                        country: "United States"
                    },
                    scrolling: "no",
                    height: "700px",
                    width: "1000px",
                    locale: "en-US",
                    footerPaddingEnabled: true,
                    defaultEmbeddingVisualType: "TABLE", // this option only applies to QuickSight console embedding and is not used for dashboard embedding
                };
                session = QuickSightEmbedding.embedSession(options);
                session.on("error", onError);
            }

            function onCountryChange(obj) {
                session.setParameters({country: obj.value});
            }
        </script>
    </head>

    <body onload="embedSession()">
        <span>
            <label for="country">Country</label>
            <select id="country" name="country" onchange="onCountryChange(this)">
                <option value="United States">United States</option>
                <option value="Mexico">Mexico</option>
                <option value="Canada">Canada</option>
            </select>
        </span>
        <div id="embeddingContainer"></div>
    </body>

</html>
```

若要讓此範例運作，請務必使用 Amazon Quick Sight 內嵌 SDK，使用 JavaScript 在您的網站上載入內嵌主控台工作階段。為獲得您的版本，請執行以下其中一項操作：
+ 從 GitHub 下載 [Amazon Quick Sight 內嵌 SDK](https://github.com/awslabs/amazon-quicksight-embedding-sdk#step-3-create-the-quicksight-session-object)。此儲存庫由一組 Amazon Quick Sight 開發人員維護。
+ 從 [https://www.npmjs.com/package/amazon-quicksight-embedding-sdk](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) 下載最新的內嵌開發套件版本。
+ 如果您使用 JavaScript 相依性的 `npm`，請執行下列命令來下載並安裝它。

  ```
  npm install amazon-quicksight-embedding-sdk
  ```

# 在嵌入式主控台中為已註冊使用者啟用生成式 BI 功能
<a name="embedding-consoles-genbi"></a>


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

您可以在嵌入式主控台中啟用下列生成式 BI 功能：
+ 執行摘要：啟用時，已註冊的 Author Pro 和 Reader Pro 使用者可以產生執行摘要，提供 Amazon Quick Sight 為儀表板產生的所有洞見摘要，以輕鬆探索關鍵洞見。
+ 編寫：啟用後，「作者專業版」使用者可以使用生成式 BI 來建置計算欄位，並建置與精簡視覺效果。
+ 問答：啟用後，「作者專業版」和「讀者專業版」使用者可以使用 AI 支援的問答來建議與回答與其資料相關的問題。
+ 資料故事：啟用後，「作者專業版」和「讀者專業版」使用者可以提供詳細資訊，以快速產生其資料故事的第一份草稿。

**在嵌入式主控台中為已註冊使用者啟用生成式 BI 功能**
+ 請遵循[內嵌 Amazon Quick Sight 主控台的完整功能中的步驟，讓已註冊的使用者](https://docs.aws.amazon.com/quicksight/latest/user/embedded-analytics-full-console-for-authenticated-users.html)內嵌具有下列變更的主控台：

  1. 在步驟 2 中產生 URL 時，請針對要啟用的每個功能，在 [GenerateEmbedUrlForRegisteredUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html) 或 [GenerateEmbedUrlForRegisteredUserWithIdentity](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUserWithIdentity.html) API 中，在 `FeatureConfigurations` 參數中設定 `Enabled: true`，如下列範例所示。如果未提供組態，則依預設會停用這些功能。

     ```
     ExperienceConfiguration: {
             QuickSightConsole: {
                 InitialPath: "initial_path",
                 AmazonQInQuickSight: {
                     FeatureConfigurations: { 
                         COMMENT: Enable executive summaries
                         ExecutiveSummary: {
                             Enabled: true
                         },
                         COMMENT: Enable Generative BI authoring
                         GenerativeAuthoring: {
                             Enabled: true
                         },
                         COMMENT: Enable Q&A
                         DataQnA: {
                             Enabled: true
                         },
                         COMMENT: Enable data stories
                         DataStories: {
                             Enabled: true
                         }       
                     }
                 }
             }
         }
     }
     ```

  1. 在步驟 3 中使用 Amazon Quick Sight 內嵌 SDK 內嵌主控台 URL 時，視需要設定下列範例中的值。如果未提供組態，則依預設會停用這些功能。
**注意**  
沒有用於啟用資料故事的 SDK 選項。如果透過 API 啟用資料故事(如上一個步驟所示)，已註冊的使用者將可以使用資料故事。

     ```
     const contentOptions = {
         toolbarOptions: {
             executiveSummary: true, // Enable executive summaries
             buildVisual: true, // Enable Generative BI authoring
             dataQnA: true // Enable Q&A
         }
     };
     ```

# 在 Amazon Quick Sight 生成式問答體驗中嵌入 Amazon Q
<a name="embedding-gen-bi"></a>


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

在下列各節中，您可以找到有關如何設定使用 LLM 提供之增強型 NLQ 功能的嵌入生成式問答功能的詳細資訊。生成式問答功能是嵌入式 Q 搜尋列的建議替代項目，並為使用者提供更新的 BI 體驗。

**Topics**
+ [

## 為註冊使用者嵌入 Amazon Quick Sight 生成式問答體驗
](#embedded-analytics-gen-bi-authenticated-users)
+ [

## 為匿名 （未註冊） 使用者嵌入 Amazon Q in Quick Generative Q&A 體驗
](#embedded-analytics-gen-bi-anonymous-users)

## 為註冊使用者嵌入 Amazon Quick Sight 生成式問答體驗
<a name="embedded-analytics-gen-bi-authenticated-users"></a>

在下列各節中，您可以找到有關如何為 Amazon Quick Sight 註冊使用者設定內嵌生成式問答體驗的詳細資訊。

**Topics**
+ [

### 步驟 1：設定許可
](#embedded-analytics-gen-bi-authenticated-users-step-1)
+ [

### 步驟 2：產生帶有身分驗證碼的 URL
](#embedded-analytics-gen-bi-authenticated-users-step-2)
+ [

### 步驟 3：嵌入生成式問答功能 URL
](#embedded-analytics-gen-bi-authenticated-users-step-3)
+ [

### 選用的嵌入生成式問答功能功能
](#embedded-analytics-gen-bi-authenticated-users-step-4)

### 步驟 1：設定許可
<a name="embedded-analytics-gen-bi-authenticated-users-step-1"></a>

在以下章節中，您可以了解如何為後端應用程式或 Web 伺服器設定許可，以嵌入生成式問答功能。此任務需要 AWS Identity and Access Management (IAM) 的管理存取權。

每個存取生成式問答體驗的使用者都會擔任一個角色，為他們提供 Amazon Quick Sight 存取和許可。為了實現這一點，請在您的 AWS 帳戶中建立 IAM 角色。將 IAM 政策與此角色建立關聯，以提供許可給擔任此角色的任何使用者。IAM 角色需要提供許可，以擷取特定使用者集區的內嵌 URL。

藉助萬用字元 *\$1*，您可以授予許可，以便為特定命名空間中的所有使用者產生 URL。或者，您可以授予許可來為特定命名空間中的使用者子集產生 URL。對於這一點，您新增 `quicksight:GenerateEmbedUrlForRegisteredUser`。

您可以在 IAM 政策中建立條件，以限制開發人員可在 `GenerateEmbedUrlForRegisteredUser` API 操作的 `AllowedDomains` 參數中列出的域。`AllowedDomains` 參數是選用參數。它授予開發人員覆寫在**管理 Amazon Quick Sight **選單中設定的靜態網域的選項，並改為列出最多三個可存取產生 URL 的網域或子網域。然後將此 URL 內嵌到開發人員的網站中。只有在參數中列出的網域可以存取嵌入生成式問答功能。如果沒有這種情況，開發人員可以在 `AllowedDomains` 參數中列出網際網路上的任何域。

若要限制開發人員可搭配此參數使用的網域，請在 IAM 政策中新增 `AllowedEmbeddingDomains` 條件。如需 `AllowedDomains` 參數的詳細資訊，請參閱《*Amazon Quick Sight API 參考*》中的 [GenerateEmbedUrlForRegisteredUser](https://docs.aws.amazon.com//quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html)。

**IAM 條件運算子的安全最佳實務**  
設定不當的 IAM 條件運算子可能會允許透過 URL 變化未經授權存取您的內嵌 Quick 資源。在 IAM 政策中使用 `quicksight:AllowedEmbeddingDomains`條件金鑰時，請使用允許特定網域或拒絕未明確允許的所有網域的條件運算子。如需 IAM 條件運算子的詳細資訊，請參閱《IAM [使用者指南》中的 IAM JSON 政策元素：條件運算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)。  
許多不同的 URL 變化可以指向相同的資源。例如，下列 URLs全部解析為相同的內容：  
`https://example.com`
`https://example.com/`
`https://Example.com`
如果您的政策使用未考慮這些 URL 變化的運算子，攻擊者可以透過提供同等的 URL 變化來繞過您的限制。  
您必須驗證 IAM 政策是否使用適當的條件運算子來防止繞過漏洞，並確保只有您預期的網域可以存取您的內嵌資源。

下列範例政策提供這些許可。

此外，如果您要建立將成為 Amazon Quick Sight 讀者的第一次使用者，請務必在政策中新增 `quicksight:RegisterUser`許可。

下列範例政策提供許可，以擷取初次成為 Amazon Quick Sight 讀取器之使用者的內嵌 URL。

最後，您的應用程式的 IAM 身分必須有相關聯的信任政策，以允許存取至您剛建立的角色。這表示當使用者存取您的應用程式時，您的應用程式可以代表使用者擔任該角色，並在 Amazon Quick Sight 中佈建使用者。

範例信任政策如下所示。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
        "Statement": [
            {
    "Sid": "AllowLambdaFunctionsToAssumeThisRole",
                "Effect": "Allow",
                "Principal": {
    "Service": "lambda.amazonaws.com"
                },
                "Action": "sts:AssumeRole"
            },
            {
    "Sid": "AllowEC2InstancesToAssumeThisRole",
                "Effect": "Allow",
                "Principal": {
    "Service": "ec2.amazonaws.com"
                },
                "Action": "sts:AssumeRole"
            }
        ]
    }
```

------

如需 OpenID Connect 或安全性聲明標記語言 (SAML) 身分驗證的信任政策詳細資訊，請參閱《IAM 使用者指南》**的下列各章節：
+ [建立 Web 身分的角色或 OpenID Connect 聯合身分 (主控台)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_oidc.html)
+ [為 SAML 2.0 聯合身分建立角色 (主控台)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html)

### 步驟 2：產生帶有身分驗證碼的 URL
<a name="embedded-analytics-gen-bi-authenticated-users-step-2"></a>

在下一章節，您可以了解如何在您的應用程式伺服器上驗證使用者，以及取得可內嵌的 Q 主題 URL。如果您打算嵌入 IAM 或 Amazon Quick Sight 身分類型的生成式問答體驗，請與使用者共用 Q 主題。

當使用者存取您的應用程式時，該應用程式代表使用者擔任 IAM 角色。然後，如果使用者尚未存在，應用程式會將使用者新增至 Amazon Quick Sight。接著，它傳遞識別符當作唯一的角色工作階段 ID。

執行所述的步驟可確保 Q 主題的每個檢視器都是在 Amazon Quick Sight 中唯一佈建。它還會強制執行個別使用者設定，例如資料列層級的安全性和參數的動態預設值。標籤型資料列層級安全性可用於 Q 列的匿名使用者嵌入。

下列範例會代表使用者執行 IAM 身分驗證。此代碼在您的應用程式伺服器上運行。

#### Java
<a name="embedded-analytics-gen-bi-authenticated-users-java"></a>

```
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.auth.AWSCredentialsProvider;
import com.amazonaws.regions.Regions;
import com.amazonaws.services.quicksight.AmazonQuickSight;
import com.amazonaws.services.quicksight.AmazonQuickSightClientBuilder;
import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForRegisteredUserRequest;
import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForRegisteredUserResult;
import com.amazonaws.services.quicksight.model.RegisteredUserEmbeddingExperienceConfiguration;
import com.amazonaws.services.quicksight.model.RegisteredUserGenerativeQnAEmbeddingConfiguration;

/**
 * Class to call QuickSight AWS SDK to get url for embedding Generative Q&A experience.
 */
public class RegisteredUserGenerativeQnAEmbeddingSample {

    private final AmazonQuickSight quickSightClient;

    public RegisteredUserGenerativeQnAEmbeddingSample() {
        this.quickSightClient = AmazonQuickSightClientBuilder
                    .standard()
                    .withRegion(Regions.US_EAST_1.getName())
                    .withCredentials(new AWS CredentialsProvider() {
                            @Override
                            public AWSCredentials getCredentials() {
                                // provide actual IAM access key and secret key here
                                return new BasicAWSCredentials("access-key", "secret-key");
                            }

                            @Override
                            public void refresh() {
                            }
                        }
                    )
                    .build();
            }

    public String getQuicksightEmbedUrl(
            final String accountId, // AWS Account ID
            final String topicId, // Topic ID to embed
            final List<String> allowedDomains, // Runtime allowed domain for embedding
            final String userArn // Registered user arn to use for embedding. Refer to Get Embed Url section in developer portal to find how to get user arn for a QuickSight user.
            ) throws Exception {

        final RegisteredUserEmbeddingExperienceConfiguration experienceConfiguration = new RegisteredUserEmbeddingExperienceConfiguration()
                .withGenerativeQnA(new RegisteredUserGenerativeQnAEmbeddingConfiguration().withInitialTopicId(topicId));
        final GenerateEmbedUrlForRegisteredUserRequest generateEmbedUrlForRegisteredUserRequest = new GenerateEmbedUrlForRegisteredUserRequest();
        generateEmbedUrlForRegisteredUserRequest.setAwsAccountId(accountId);
        generateEmbedUrlForRegisteredUserRequest.setUserArn(userArn);
        generateEmbedUrlForRegisteredUserRequest.setAllowedDomains(allowedDomains);
        generateEmbedUrlForRegisteredUserRequest.setExperienceConfiguration(experienceConfiguration);

        final GenerateEmbedUrlForRegisteredUserResult generateEmbedUrlForRegisteredUserResult = quickSightClient.generateEmbedUrlForRegisteredUser(generateEmbedUrlForRegisteredUserRequest);

        return generateEmbedUrlForRegisteredUserResult.getEmbedUrl();
    }
}
```

#### JavaScript
<a name="embedded-analytics-gen-bi-authenticated-users-js"></a>

**注意**  
無法直接從瀏覽器呼叫嵌入式 URL 產生 API。請改為參閱 Node.JS 範例。

#### Python3
<a name="embedded-analytics-gen-bi-authenticated-users-py"></a>

```
import json
import boto3
from botocore.exceptions import ClientError

sts = boto3.client('sts')

# Function to generate embedded URL  
# accountId: AWS account ID
# topicId: Topic ID to embed
# userArn: arn of registered user
# allowedDomains: Runtime allowed domain for embedding
# roleArn: IAM user role to use for embedding
# sessionName: session name for the roleArn assume role
def getEmbeddingURL(accountId, topicId, userArn, allowedDomains, roleArn, sessionName):
    try:
        assumedRole = sts.assume_role(
            RoleArn = roleArn,
            RoleSessionName = sessionName,
        )
    except ClientError as e:
        return "Error assuming role: " + str(e)
    else: 
        assumedRoleSession = boto3.Session(
            aws_access_key_id = assumedRole['Credentials']['AccessKeyId'],
            aws_secret_access_key = assumedRole['Credentials']['SecretAccessKey'],
            aws_session_token = assumedRole['Credentials']['SessionToken'],
        )
        try:
            quicksightClient = assumedRoleSession.client('quicksight', region_name='us-west-2')
            response = quicksightClient.generate_embed_url_for_registered_user(
                AwsAccountId=accountId,
                ExperienceConfiguration = {
                    'GenerativeQnA': {
                        'InitialTopicId': topicId
                    }
                },
                UserArn = userArn,
                AllowedDomains = allowedDomains,
                SessionLifetimeInMinutes = 600
            )
            
            return {
                'statusCode': 200,
                'headers': {"Access-Control-Allow-Origin": "*", "Access-Control-Allow-Headers": "Content-Type"},
                'body': json.dumps(response),
                'isBase64Encoded':  bool('false')
            }
        except ClientError as e:
            return "Error generating embedding url: " + str(e)
```

#### Node.js
<a name="embedded-analytics-gen-bi-authenticated-users-node"></a>

以下範例顯示的 JavaScript (Node.js) 可在應用程式伺服器上用來產生嵌入式儀表板的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示儀表板。

**Example**  

```
const AWS = require('aws-sdk');
const https = require('https');

var quicksightClient = new AWS.Service({
    region: 'us-east-1'
});

quicksightClient.generateEmbedUrlForRegisteredUser({
    'AwsAccountId': '111122223333',
    'ExperienceConfiguration': { 
        'GenerativeQnA': {
            'InitialTopicId': 'U4zJMVZ2n2stZflc8Ou3iKySEb3BEV6f'
        }
    },
    'UserArn': 'REGISTERED_USER_ARN',
    'AllowedDomains': allowedDomains,
    'SessionLifetimeInMinutes': 100
}, function(err, data) {
    console.log('Errors: ');
    console.log(err);
    console.log('Response: ');
    console.log(data);
});
```

#### .NET/C\$1
<a name="embedded-analytics-gen-bi-authenticated-users-cs"></a>

以下範例顯示的 .NET/C\$1 程式碼可在應用程式伺服器上用來產生嵌入式 Q 搜尋列的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示 Q 搜尋列。

**Example**  

```
using System;
using Amazon.QuickSight;
using Amazon.QuickSight.Model;

namespace GenerateGenerativeQnAEmbedUrlForRegisteredUser
{
    class Program
    {
        static void Main(string[] args)
        {
            var quicksightClient = new AmazonQuickSightClient(
                AccessKey,
                SecretAccessKey,
                SessionToken,
                Amazon.RegionEndpoint.USEast1);
            try
            {
                RegisteredUserGenerativeQnAEmbeddingConfiguration registeredUserGenerativeQnAEmbeddingConfiguration
                    = new RegisteredUserGenerativeQnAEmbeddingConfiguration
                    {
                        InitialTopicId = "U4zJMVZ2n2stZflc8Ou3iKySEb3BEV6f"
                    };
                RegisteredUserEmbeddingExperienceConfiguration registeredUserEmbeddingExperienceConfiguration
                    = new RegisteredUserEmbeddingExperienceConfiguration
                    {
                        GenerativeQnA = registeredUserGenerativeQnAEmbeddingConfiguration
                    }; 
                
                Console.WriteLine(
                    quicksightClient.GenerateEmbedUrlForRegisteredUserAsync(new GenerateEmbedUrlForRegisteredUserRequest
                    {
                        AwsAccountId = "111122223333",
                        ExperienceConfiguration = registeredUserEmbeddingExperienceConfiguration,
                        UserArn = "REGISTERED_USER_ARN",
                        AllowedDomains = allowedDomains,
                        SessionLifetimeInMinutes = 100
                    }).Result.EmbedUrl
                );
            } catch (Exception ex) {
                Console.WriteLine(ex.Message);
            }
        }
    }
}
```

#### AWS CLI
<a name="embedded-analytics-gen-bi-authenticated-users-cli"></a>

若要擔任角色，請選擇下列其中一個 AWS Security Token Service (AWS STS) API 操作：
+ [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) – 在使用 IAM 身分擔任角色的情況下使用此操作。
+ [AssumeRoleWithWebIdentity](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html) – 在使用 Web 身分提供者驗證您的使用者時，請使用此操作。
+ [AssumeRoleWithSaml](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html) –在您使用 SAML 驗證使用者時，請使用此操作。

以下範例顯示用來設定 IAM 角色的 CLI 命令。角色需要啟用 `quicksight:GenerateEmbedUrlForRegisteredUser` 的許可。如果您正在採取即時方法在使用者使用 Q 搜尋列中的主題時新增使用者，則該角色還需要啟用 `quicksight:RegisterUser` 的許可。

```
aws sts assume-role \
     --role-arn "arn:aws:iam::111122223333:role/embedding_quicksight_q_generative_qna_role" \
     --role-session-name john.doe@example.com
```

`assume-role` 操作會傳回三個輸出參數：存取金鑰、私密金鑰和工作階段字符。

**注意**  
若您呼叫 `AssumeRole` 操作時收到 `ExpiredToken` 錯誤，原因可能是先前的 `SESSION TOKEN` 仍在環境變數中。設定以下變數便可清除此錯誤：  
*AWS\$1ACCESS\$1KEY\$1ID* 
*AWS\$1SECRET\$1ACCESS\$1KEY* 
*AWS\$1SESSION\$1TOKEN* 

以下範例說明如何在 CLI 中設定這三個參數。對於 Microsoft Windows 電腦，請使用 `set`，不要使用 `export`。

```
export AWS_ACCESS_KEY_ID     = "access_key_from_assume_role"
export AWS_SECRET_ACCESS_KEY = "secret_key_from_assume_role"
export AWS_SESSION_TOKEN     = "session_token_from_assume_role"
```

對於瀏覽您網站的使用者，執行這些命令可將其角色工作階段 ID 設為 `embedding_quicksight_q_search_bar_role/john.doe@example.com`。角色工作階段 ID 由來自 `role-arn` 和 `role-session-name` 值的角色名稱所組成。對每個使用者使用唯一的角色工作階段 ID，可確保為每個使用者設定適當的許可。還能避免對使用者存取進行任何調節。*調節*是一項安全功能，可防止相同的使用者從多個位置存取 Amazon Quick Sight。

角色工作階段 ID 也會成為 Amazon Quick Sight 中的使用者名稱。您可以使用此模式提前在 Amazon Quick Sight 中佈建使用者，或在他們第一次存取生成式問答體驗時佈建使用者。

以下範例顯示可用來佈建使用者的 CLI 命令。如需 [RegisterUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_RegisterUser.html)、[DescribeUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_DescribeUser.html) 和其他 Amazon Quick Sight API 操作的詳細資訊，請參閱 [Amazon Quick Sight API 參考](https://docs.aws.amazon.com/quicksight/latest/APIReference/Welcome.html)。

```
aws quicksight register-user \
    --aws-account-id 111122223333 \
    --namespace default \
    --identity-type IAM\
    --iam-arn "arn:aws:iam::111122223333:role/embedding_quicksight_q_generative_qna_role" \
    --user-role READER \
    --user-name jhnd \
    --session-name "john.doe@example.com" \
    --email john.doe@example.com \
    --region us-east-1 \
    --custom-permissions-name TeamA1
```

如果使用者是透過 Microsoft AD 進行身分驗證，您就不需要使用 `RegisterUser` 設定他們。反之，他們應該在第一次存取 Amazon Quick Sight 時自動訂閱。若是 Microsoft AD 使用者，您可以使用 `DescribeUser` 取得使用者的 Amazon Resource Name (ARN)。

使用者第一次存取 Amazon Quick Sight 時，您也可以將此使用者新增至與儀表板共用的群組。以下範例顯示用於將使用者新增至群組的 CLI 命令。

```
aws quicksight create-group-membership \
    --aws-account-id 111122223333 \
    --namespace default \
    --group-name financeusers \
    --member-name "embedding_quicksight_q_generative_qna_role/john.doe@example.com"
```

您現在擁有應用程式的使用者，他們也是 Amazon Quick Sight 的使用者，以及有權存取儀表板的使用者。

最後，為了取得儀表板的簽章 URL，請從應用程式伺服器呼叫 `generate-embed-url-for-registered-user`。這會傳回可嵌入的儀表板 URL。下列範例示範如何使用伺服器端呼叫為透過 AWS Managed Microsoft AD 或單一登入 (IAM Identity Center) 驗證的使用者產生內嵌儀表板的 URL。

```
aws quicksight generate-embed-url-for-anonymous-user \
--aws-account-id 111122223333 \
--namespace default-or-something-else \
--authorized-resource-arns '["topic-arn-topicId1","topic-arn-topicId2"]' \
--allowed-domains '["domain1","domain2"]' \
--experience-configuration 'GenerativeQnA={InitialTopicId="topicId1"}' \
--session-tags '["Key": tag-key-1,"Value": tag-value-1,{"Key": tag-key-1,"Value": tag-value-1}]' \
--session-lifetime-in-minutes 15
```

如需使用此操作的詳細資訊，請參閱 [https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html)。您可以在您自己的程式碼中使用這個和其他 API 操作。

### 步驟 3：嵌入生成式問答功能 URL
<a name="embedded-analytics-gen-bi-authenticated-users-step-3"></a>

在下一章節，您可以了解如何在網站或應用程式頁面中嵌入生成式問答功能 URL。您可以使用 [Amazon Quick Sight 內嵌 SDK](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) (JavaScript) 來執行此操作。您可以使用此 SDK 執行以下操作：
+ 將生成式問答功能放置在 HTML 頁面上。
+ 自訂嵌入功能的版面配置和外觀，以符合您的應用程式需求。
+ 以針對您的應用程式而訂做的訊息來處理錯誤狀態。

若要產生可以內嵌到應用程式中的 URL，請呼叫 `GenerateEmbedUrlForRegisteredUser` API 操作。此 URL 的有效期為 5 分鐘，而產生的工作階段有效期最長為 10 小時。此 API 操作提供的 URL 附有可啟用單一登入工作階段的 `auth_code` 值。

以下是 `generate-embed-url-for-registered-user` 的回應範例。

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
//readability and added ellipsis to indicate that it's incomplete. 
{
 "Status": "200",
"EmbedUrl": "https://quicksightdomain/embedding/12345/q/search...",
"RequestId": "7bee030e-f191-45c4-97fe-d9faf0e03713"
}
```

使用 [Amazon Quick Sight 內嵌 SDK](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) 或將此 URL 新增至 iframe，在您的網頁中嵌入生成式問答體驗。如果您設定固定高度和寬度數字 （以像素為單位），Amazon Quick Sight 會使用這些值，而且不會隨著視窗調整大小而變更視覺效果。如果您設定相對百分比高度和寬度，Amazon Quick Sight 會提供隨著視窗大小變更而修改的回應式配置。

請確定託管內嵌生成式問答體驗的網域列於*允許清單*上，即 Amazon Quick Sight 訂閱的已核准網域清單。這項要求將使未獲核准的網域無法託管嵌入儀表板，進而保護您的資料。如需為嵌入生成式問答功能新增網域的詳細資訊，請參閱[管理網域](manage-domains.md)。

您可以使用 Amazon Quick Sight 內嵌 SDK 自訂內嵌生成式問答體驗的配置和外觀，以符合您的應用程式。使用 `panelType` 屬性設定生成式問答功能在應用程式中轉譯時的登陸狀態。將 `panelType` 屬性設定為 `'FULL'`，以轉譯完整的生成式問答功能面板。此面板類似 Amazon Quick Sight 使用者在 Amazon Quick Sight 主控台中擁有的體驗。面板的影格高度不會根據使用者互動而變更，並且會遵守您在 `frameOptions.height` 屬性中設定的值。下圖顯示當您將 `panelType` 值設定為 `'FULL'` 時轉譯的生成式問答功能面板。

將 `panelType` 屬性設定為 `'SEARCH_BAR'`，以搜尋列形式轉譯生成式問答功能。此搜尋列類似於 Q 搜尋列在嵌入應用程式時轉譯的方式。生成式問答搜尋列會展開為較大面板，顯示主題選取選項、問題建議清單、答案面板或 Pinboard。

嵌入式資產載入時，會轉譯生成式問答搜尋列的預設最小高度。建議您將 `frameOptions.height` 值設定為 `"38px"`，以最佳化搜尋列體驗。使用 `focusedHeight` 屬性來設定主題選取下拉式清單與問題建議清單的最佳大小。使用 `expandedHeight` 屬性來設定答案面板和 Pinboard 的最佳大小。如果您選擇 `'SEARCH_BAR'` 選項，建議您使用位置來設定父系容器的樣式；絕對要避免應用程式中不必要的內容轉移。下圖顯示當您將 `panelType` 值設定為 `'SEARCH_BAR'` 時轉譯的生成式問答功能搜尋列。

設定 `panelType` 屬性之後，請使用 Amazon Quick Sight 內嵌 SDK 來自訂生成式問答體驗的下列屬性。
+ 生成式問答面板的標題 (僅適用於 `panelType: FULL` 選項)。
+ 搜尋列的預留位置文字。
+ 是否允許主題選取。
+ 是否顯示或隱藏主題名稱。
+ 是否顯示或隱藏 Amazon Q 圖示 (僅適用於 `panelType: FULL` 選項)。
+ 是否顯示為隱藏 Pinboard。
+ 使用者是否可以將生成式問答面板最大化為全螢幕。
+ 生成式問答面板的佈景主題。自訂佈景主題 ARN 可在 SDK 中傳遞，以變更影格內容的外觀。內嵌生成 BI 面板不支援 Amazon Quick Sight 入門主題。若要使用 Amazon Quick Sight 入門佈景主題，請在 Amazon Quick Sight 中將其儲存為自訂佈景主題。

當您使用 Amazon Quick Sight 內嵌 SDK 時，頁面上的生成式問答體驗會根據 狀態動態調整大小。透過使用 Amazon Quick Sight 內嵌 SDK，您也可以控制生成式問答體驗中的參數，並在頁面載入完成、狀態變更和錯誤方面接收回呼。

下列範例示範如何使用產生的 URL。此代碼在您的應用程式伺服器上生成。

#### SDK 2.0
<a name="collapsible-gen-bi-embedding-example"></a>

```
<!DOCTYPE html>
<html>
    <head>
        <title>Generative Q&A Embedding Example</title>
        <script src="https://unpkg.com/amazon-quicksight-embedding-sdk@2.7.0/dist/quicksight-embedding-js-sdk.min.js"></script>
        <script type="text/javascript">
            const embedGenerativeQnA = async() => {    
                const {createEmbeddingContext} = QuickSightEmbedding;

                const embeddingContext = await createEmbeddingContext({
                    onChange: (changeEvent, metadata) => {
                        console.log('Context received a change', changeEvent, metadata);
                    },
                });

                const frameOptions = {
                    url: "<YOUR_EMBED_URL>", // replace this value with the url generated via embedding API
                    container: '#experience-container',
                    height: "700px",
                    width: "1000px",
                    onChange: (changeEvent, metadata) => {
                        switch (changeEvent.eventName) {
                            case 'FRAME_MOUNTED': {
                                console.log("Do something when the experience frame is mounted.");
                                break;
                            }
                            case 'FRAME_LOADED': {
                                console.log("Do something when the experience frame is loaded.");
                                break;
                            }
                        }
                    },
                };

                const contentOptions = {
                    // Optional panel settings. Default behavior is equivalent to {panelType: 'FULL'}
                    panelOptions: {
                        panelType: 'FULL',
                        title: 'custom title', // Optional
                        showQIcon: false, // Optional, Default: true
                    },
                    // Use SEARCH_BAR panel type for the landing state to be similar to embedQSearchBar
                    // with generative capability enabled topics
                    /*
                    panelOptions: {
                        panelType: 'SEARCH_BAR',
                        focusedHeight: '250px',
                        expandedHeight: '500px',
                    },
                    */
                    showTopicName: false, // Optional, Default: true
                    showPinboard: false, // Optional, Default: true
                    allowTopicSelection: false, // Optional, Default: true
                    allowFullscreen: false, // Optional, Default: true
                    searchPlaceholderText: "custom search placeholder", // Optional
                    themeOptions: { // Optional
                        themeArn: 'arn:aws:quicksight:<Region>:<AWS-Account-ID>:theme/<Theme-ID>'
                    }
                    onMessage: async (messageEvent, experienceMetadata) => {
                        switch (messageEvent.eventName) {
                            case 'Q_SEARCH_OPENED': {
                                // called when pinboard is shown / visuals are rendered
                                console.log("Do something when SEARCH_BAR type panel is expanded");
                                break;
                            }
                            case 'Q_SEARCH_FOCUSED': {
                                // called when question suggestions or topic selection dropdown are shown
                                console.log("Do something when SEARCH_BAR type panel is focused");
                                break;
                            }
                            case 'Q_SEARCH_CLOSED': {
                                // called when shrinked to initial bar height
                                console.log("Do something when SEARCH_BAR type panel is collapsed");
                                break;
                            }
                            case 'Q_PANEL_ENTERED_FULLSCREEN': {
                                console.log("Do something when panel enters full screen mode");
                                break;
                            }
                            case 'Q_PANEL_EXITED_FULLSCREEN': {
                                console.log("Do something when panel exits full screen mode");
                                break;
                            }
                            case 'CONTENT_LOADED': {
                                console.log("Do something after experience is loaded");
                                break;
                            }
                            case 'ERROR_OCCURRED': {
                                console.log("Do something when experience fails to load");
                                break;
                            }
                        }
                    }
                };
                const embeddedGenerativeQnExperience = await embeddingContext.embedGenerativeQnA(frameOptions, contentOptions);
            };
        </script>
    </head>

    <body onload="embedGenerativeQnA()">
        <div id="experience-container"></div>
    </body>

</html>
```

若要讓此範例運作，請務必使用 Amazon Quick Sight 內嵌 SDK，透過 JavaScript 在您的網站上載入內嵌的生成式問答體驗。為獲得您的版本，請執行以下其中一項操作：
+ 從 GitHub 下載 [Amazon Quick Sight 內嵌 SDK](https://github.com/awslabs/amazon-quicksight-embedding-sdk#step-3-create-the-quicksight-session-object)。此儲存庫由一組 Amazon Quick Sight 開發人員維護。
+ 從 [https://www.npmjs.com/package/amazon-quicksight-embedding-sdk](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) 下載最新的內嵌開發套件版本。
+ 如果您使用 JavaScript 相依性的 `npm`，請執行下列命令來下載並安裝它。

  ```
  npm install amazon-quicksight-embedding-sdk
  ```

### 選用的嵌入生成式問答功能功能
<a name="embedded-analytics-gen-bi-authenticated-users-step-4"></a>

下列選用功能可在使用嵌入式 SDK 的嵌入生成式問答功能中使用。

#### 調用生成式問答搜尋列動作
<a name="w2aac35c27c21c43c29b9c21b5"></a>
+ 設定問題：此功能會將問題傳送至生成式問答功能，並立即查詢問題。

  ```
  embeddedGenerativeQnExperience.setQuestion('show me monthly revenue');
  ```
+ 關閉答案面板 (適用於生成式問答搜尋列選項)：此功能會關閉答案面板，並將 iframe 回復至原始搜尋列狀態。

  ```
  embeddedGenerativeQnExperience.close();
  ```

如需詳細資訊，請參閱 [Amazon Quick Sight 內嵌 SDK](https://github.com/awslabs/amazon-quicksight-embedding-sdk)。

## 為匿名 （未註冊） 使用者嵌入 Amazon Q in Quick Generative Q&A 體驗
<a name="embedded-analytics-gen-bi-anonymous-users"></a>


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

在以下章節中，您可以找到有關如何為匿名 (未註冊) 使用者設定嵌入生成式問答功能的詳細資訊。

**Topics**
+ [

### 步驟 1：設定許可
](#embedded-analytics-gen-bi-anonymous-users-step-1)
+ [

### 步驟 2：產生帶有身分驗證碼的 URL
](#embedded-analytics-gen-bi-anonymous-users-step-2)
+ [

### 步驟 3：嵌入生成式問答功能 URL
](#embedded-analytics-gen-bi-anonymous-users-step-3)
+ [

### 選用的嵌入生成式問答功能功能
](#embedded-analytics-gen-bi-anonymous-users-step-4)

### 步驟 1：設定許可
<a name="embedded-analytics-gen-bi-anonymous-users-step-1"></a>

在以下章節中，您可以了解如何為後端應用程式或 Web 伺服器設定許可，以嵌入生成式問答功能。此任務需要 AWS Identity and Access Management (IAM) 的管理存取權。

每個存取生成式問答體驗的使用者都會擔任一個角色，為他們提供 Amazon Quick Sight 存取和許可。為了實現這一點，請在您的 AWS 帳戶中建立 IAM 角色。將 IAM 政策與此角色建立關聯，以提供許可給擔任此角色的任何使用者。IAM 角色需要提供許可，以擷取特定使用者集區的內嵌 URL。

藉助萬用字元 *\$1*，您可以授予許可，以便為特定命名空間中的所有使用者產生 URL。或者，您可以授予許可來為特定命名空間中的使用者子集產生 URL。對於這一點，您新增 `quicksight:GenerateEmbedUrlForAnonymousUser`。

您可以在 IAM 政策中建立條件，以限制開發人員可在 `GenerateEmbedUrlForAnonymousUser` API 操作的 `AllowedDomains` 參數中列出的域。`AllowedDomains` 參數是選用參數。它可讓開發人員選擇覆寫在**管理 Amazon Quick Sight **選單中設定的靜態網域，並改為列出最多三個可存取產生 URL 的網域或子網域。然後將此 URL 內嵌到開發人員的網站中。只有參數中列出的域可以存取內嵌 Q 搜尋列。如果沒有這種情況，開發人員可以在 `AllowedDomains` 參數中列出網際網路上的任何域。

若要限制開發人員可搭配此參數使用的網域，請在 IAM 政策中新增 `AllowedEmbeddingDomains` 條件。如需 `AllowedDomains` 參數的詳細資訊，請參閱《*Amazon Quick Sight API 參考*》中的 [GenerateEmbedUrlForAnonymousUser](https://docs.aws.amazon.com//quicksight/latest/APIReference/API_GenerateEmbedUrlForAnonymousUser.html)。

**IAM 條件運算子的安全最佳實務**  
設定不當的 IAM 條件運算子可能會允許透過 URL 變化未經授權存取您的內嵌 Quick 資源。在 IAM 政策中使用 `quicksight:AllowedEmbeddingDomains`條件金鑰時，請使用允許特定網域或拒絕未明確允許的所有網域的條件運算子。如需 IAM 條件運算子的詳細資訊，請參閱《IAM [使用者指南》中的 IAM JSON 政策元素：條件運算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)。  
許多不同的 URL 變化可以指向相同的資源。例如，下列 URLs全部解析為相同的內容：  
`https://example.com`
`https://example.com/`
`https://Example.com`
如果您的政策使用未考慮這些 URL 變化的運算子，攻擊者可以透過提供同等的 URL 變化來繞過您的限制。  
您必須驗證 IAM 政策是否使用適當的條件運算子來防止繞過漏洞，並確保只有您預期的網域可以存取您的內嵌資源。

您的應用程式的 IAM 身分必須有相關聯的信任政策，以允許存取至您剛建立的角色。這表示當使用者存取您的應用程式時，您的應用程式可代表使用者擔任該角色，並載入生成式問答功能。範例回應如下所示。

------
#### [ JSON ]

****  

```
{
"Version":"2012-10-17",		 	 	 
    "Statement": [
        {
"Sid": "AllowLambdaFunctionsToAssumeThisRole",
            "Effect": "Allow",
            "Principal": {
"Service": "lambda.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        },
        {
"Sid": "AllowEC2InstancesToAssumeThisRole",
            "Effect": "Allow",
            "Principal": {
"Service": "ec2.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

如需有關信任政策的詳細資訊，請參閱**《IAM 使用者指南》中的[ IAM 中的臨時安全憑證](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html)

### 步驟 2：產生帶有身分驗證碼的 URL
<a name="embedded-analytics-gen-bi-anonymous-users-step-2"></a>

在下一章節，您可以了解如何在您的應用程式伺服器上驗證使用者，以及取得可內嵌的 Q 主題 URL。

當使用者存取您的應用程式時，該應用程式代表使用者擔任 IAM 角色。然後，如果使用者尚未存在，應用程式會將使用者新增至 Amazon Quick Sight。接著，它傳遞識別符當作唯一的角色工作階段 ID。

#### Java
<a name="embedded-analytics-gen-bi-anonymous-users-java"></a>

```
import java.util.List;
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.AWSCredentialsProvider;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.regions.Regions;
import com.amazonaws.services.quicksight.AmazonQuickSight;
import com.amazonaws.services.quicksight.AmazonQuickSightClientBuilder;
import com.amazonaws.services.quicksight.model.AnonymousUserGenerativeQnAEmbeddingConfiguration;
import com.amazonaws.services.quicksight.model.AnonymousUserEmbeddingExperienceConfiguration;
import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForAnonymousUserRequest;
import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForAnonymousUserResult;
import com.amazonaws.services.quicksight.model.SessionTag;

/**
* Class to call QuickSight AWS SDK to generate embed url for anonymous user.
*/
public class GenerateEmbedUrlForAnonymousUserExample {

    private final AmazonQuickSight quickSightClient;

    public GenerateEmbedUrlForAnonymousUserExample() {
        quickSightClient = AmazonQuickSightClientBuilder
            .standard()
            .withRegion(Regions.US_EAST_1.getName())
            .withCredentials(new AWSCredentialsProvider() {
                    @Override
                    public AWSCredentials getCredentials() {
                        // provide actual IAM access key and secret key here
                        return new BasicAWSCredentials("access-key", "secret-key");
                    }

                    @Override
                    public void refresh() {
                    }
                }
            )
            .build();
    }

    public String GenerateEmbedUrlForAnonymousUser(
        final String accountId, // YOUR AWS ACCOUNT ID
        final String initialTopicId, // Q TOPIC ID TO WHICH THE CONSTRUCTED URL POINTS AND EXPERIENCE PREPOPULATES INITIALLY
        final String namespace, // ANONYMOUS EMBEDDING REQUIRES SPECIFYING A VALID NAMESPACE FOR WHICH YOU WANT THE EMBEDDING URL
        final List<String> authorizedResourceArns, // Q TOPIC ARN LIST TO EMBED
        final List<String> allowedDomains, // RUNTIME ALLOWED DOMAINS FOR EMBEDDING
        final List<SessionTag> sessionTags // SESSION TAGS USED FOR ROW-LEVEL SECURITY
    ) throws Exception {
        AnonymousUserEmbeddingExperienceConfiguration experienceConfiguration = new AnonymousUserEmbeddingExperienceConfiguration();
        AnonymousUserGenerativeQnAEmbeddingConfiguration generativeQnAConfiguration = new AnonymousUserGenerativeQnAEmbeddingConfiguration();
        generativeQnAConfiguration.setInitialTopicId(initialTopicId);
        experienceConfiguration.setGenerativeQnA(generativeQnAConfiguration);

        GenerateEmbedUrlForAnonymousUserRequest generateEmbedUrlForAnonymousUserRequest = new GenerateEmbedUrlForAnonymousUserRequest()
            .withAwsAccountId(accountId)
            .withNamespace(namespace)
            .withAuthorizedResourceArns(authorizedResourceArns)
            .withExperienceConfiguration(experienceConfiguration)
            .withSessionTags(sessionTags)
            .withSessionLifetimeInMinutes(600L); // OPTIONAL: VALUE CAN BE [15-600]. DEFAULT: 600
            .withAllowedDomains(allowedDomains);

        GenerateEmbedUrlForAnonymousUserResult result = quickSightClient.generateEmbedUrlForAnonymousUser(generateEmbedUrlForAnonymousUserRequest);

        return result.getEmbedUrl();
    }

}
```

#### JavaScript
<a name="embedded-analytics-gen-bi-anonymous-users-js"></a>

**注意**  
無法直接從瀏覽器呼叫嵌入式 URL 產生 API。請改為參閱 Node.JS 範例。

#### Python3
<a name="embedded-analytics-gen-bi-anonymous-users-py"></a>

```
import json
import boto3
from botocore.exceptions import ClientError
import time

# Create QuickSight and STS clients
quicksightClient = boto3.client('quicksight',region_name='us-west-2')
sts = boto3.client('sts')

# Function to generate embedded URL for anonymous user
# accountId: YOUR AWS ACCOUNT ID
# topicId: Topic ID to embed
# quicksightNamespace: VALID NAMESPACE WHERE YOU WANT TO DO NOAUTH EMBEDDING
# authorizedResourceArns: TOPIC ARN LIST TO EMBED
# allowedDomains: RUNTIME ALLOWED DOMAINS FOR EMBEDDING
# sessionTags: SESSION TAGS USED FOR ROW-LEVEL SECURITY
def generateEmbedUrlForAnonymousUser(accountId, quicksightNamespace, authorizedResourceArns, allowedDomains, sessionTags):
    try:
        response = quicksightClient.generate_embed_url_for_anonymous_user(
            AwsAccountId = accountId,
            Namespace = quicksightNamespace,
            AuthorizedResourceArns = authorizedResourceArns,
            AllowedDomains = allowedDomains,
            ExperienceConfiguration = {
                'GenerativeQnA': {
                        'InitialTopicId': topicId
                    }
            },
            SessionTags = sessionTags,
            SessionLifetimeInMinutes = 600
        )
            
        return {
            'statusCode': 200,
            'headers': {"Access-Control-Allow-Origin": "*", "Access-Control-Allow-Headers": "Content-Type"},
            'body': json.dumps(response),
            'isBase64Encoded':  bool('false')
        }
    except ClientError as e:
        print(e)
        return "Error generating embeddedURL: " + str(e)
```

#### Node.js
<a name="embedded-analytics-gen-bi-anonymous-users-node"></a>

以下範例顯示的 JavaScript (Node.js) 可在應用程式伺服器上用來產生嵌入式儀表板的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示儀表板。

**Example**  

```
const AWS = require('aws-sdk');
const https = require('https');

var quicksightClient = new AWS.Service({
    region: 'us-east-1',
});

quicksightClient.generateEmbedUrlForAnonymousUser({
    'AwsAccountId': '111122223333',
    'Namespace': 'DEFAULT'
    'AuthorizedResourceArns': '["topic-arn-topicId1","topic-arn-topicId2"]',
    'AllowedDomains': allowedDomains,
    'ExperienceConfiguration': { 
        'GenerativeQnA': {
            'InitialTopicId': 'U4zJMVZ2n2stZflc8Ou3iKySEb3BEV6f'
        }
    },
    'SessionTags': '["Key": tag-key-1,"Value": tag-value-1,{"Key": tag-key-1,"Value": tag-value-1}]',
    'SessionLifetimeInMinutes': 15
}, function(err, data) {
    console.log('Errors: ');
    console.log(err);
    console.log('Response: ');
    console.log(data);
});
```

#### .NET/C\$1
<a name="embedded-analytics-gen-bi-anonymous-users-cs"></a>

以下範例顯示的 .NET/C\$1 程式碼可在應用程式伺服器上用來產生嵌入式 Q 搜尋列的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示 Q 搜尋列。

**Example**  

```
using System;
using Amazon.QuickSight;
using Amazon.QuickSight.Model;

namespace GenerateGenerativeQnAEmbedUrlForAnonymousUser
{
    class Program
    {
        static void Main(string[] args)
        {
            var quicksightClient = new AmazonQuickSightClient(
                AccessKey,
                SecretAccessKey,
                SessionToken,
                Amazon.RegionEndpoint.USEast1);
            try
            {
                AnonymousUserGenerativeQnAEmbeddingConfiguration anonymousUserGenerativeQnAEmbeddingConfiguration
                    = new AnonymousUserGenerativeQnAEmbeddingConfiguration
                    {
                        InitialTopicId = "U4zJMVZ2n2stZflc8Ou3iKySEb3BEV6f"
                    };
                AnonymousUserEmbeddingExperienceConfiguration anonymousUserEmbeddingExperienceConfiguration
                    = new AnonymousUserEmbeddingExperienceConfiguration
                    {
                        GenerativeQnA = anonymousUserGenerativeQnAEmbeddingConfiguration
                    }; 
                
                Console.WriteLine(
                    quicksightClient.GenerateEmbedUrlForAnonymousUserAsync(new GenerateEmbedUrlForAnonymousUserRequest
                    {
                        AwsAccountId = "111122223333",
                        Namespace = "DEFAULT",
                        AuthorizedResourceArns '["topic-arn-topicId1","topic-arn-topicId2"]',
                        AllowedDomains = allowedDomains,
                        ExperienceConfiguration = anonymousUserEmbeddingExperienceConfiguration,
                        SessionTags = '["Key": tag-key-1,"Value": tag-value-1,{"Key": tag-key-1,"Value": tag-value-1}]',
                        SessionLifetimeInMinutes = 15,
                    }).Result.EmbedUrl
                );
            } catch (Exception ex) {
                Console.WriteLine(ex.Message);
            }
        }
    }
}
```

#### AWS CLI
<a name="embedded-analytics-gen-bi-anonymous-users-cli"></a>

若要擔任角色，請選擇下列其中一個 AWS Security Token Service (AWS STS) API 操作：
+ [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) – 在使用 IAM 身分擔任角色的情況下使用此操作。
+ [AssumeRoleWithWebIdentity](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html) – 在使用 Web 身分提供者驗證您的使用者時，請使用此操作。
+ [AssumeRoleWithSaml](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html) –在您使用 SAML 驗證使用者時，請使用此操作。

以下範例顯示用來設定 IAM 角色的 CLI 命令。角色需要啟用 `quicksight:GenerateEmbedUrlForAnonymousUser` 的許可。

```
aws sts assume-role \
     --role-arn "arn:aws:iam::111122223333:role/embedding_quicksight_generative_qna_role" \
     --role-session-name anonymous caller
```

`assume-role` 操作會傳回三個輸出參數：存取金鑰、私密金鑰和工作階段字符。

**注意**  
若您呼叫 `AssumeRole` 操作時收到 `ExpiredToken` 錯誤，原因可能是先前的 `SESSION TOKEN` 仍在環境變數中。設定以下變數便可清除此錯誤：  
*AWS\$1ACCESS\$1KEY\$1ID* 
*AWS\$1SECRET\$1ACCESS\$1KEY* 
*AWS\$1SESSION\$1TOKEN* 

以下範例說明如何在 CLI 中設定這三個參數。對於 Microsoft Windows 電腦，請使用 `set`，不要使用 `export`。

```
export AWS_ACCESS_KEY_ID     = "access_key_from_assume_role"
export AWS_SECRET_ACCESS_KEY = "secret_key_from_assume_role"
export AWS_SESSION_TOKEN     = "session_token_from_assume_role"
```

對於瀏覽您網站的使用者，執行這些命令可將其角色工作階段 ID 設為 `embedding_quicksight_q_search_bar_role/QuickSightEmbeddingAnonymousPolicy`。角色工作階段 ID 由來自 `role-arn` 和 `role-session-name` 值的角色名稱所組成。對每個使用者使用唯一的角色工作階段 ID，可確保為每個使用者設定適當的許可。還能避免對使用者存取進行任何調節。*調節*是一項安全功能，可防止相同的使用者從多個位置存取 Amazon Quick Sight。此外，它使每個會話獨立且不同。如果您正在使用 Web 伺服器陣列 (例如負載平衡)，且工作階段重新連線到不同的伺服器，則會開始新的工作階段。

為了取得儀表板的簽章 URL，請從應用程式伺服器呼叫 `generate-embed-url-for-anynymous-user`。這會傳回可嵌入的儀表板 URL。下列範例會顯示如何使用伺服器端呼叫，針對匿名造訪您的 Web 入口網站或應用程式的使用者，產生內嵌式儀表板的 URL。

```
aws quicksight generate-embed-url-for-anonymous-user \
--aws-account-id 111122223333 \
--namespace default-or-something-else \
--authorized-resource-arns '["topic-arn-topicId","topic-arn-topicId2"]' \
--allowed-domains '["domain1","domain2"]' \
--experience-configuration 'GenerativeQnA={InitialTopicId="topicId1"}' \
--session-tags '["Key": tag-key-1,"Value": tag-value-1,{"Key": tag-key-1,"Value": tag-value-1}]' \
--session-lifetime-in-minutes 15
```

如需使用此操作的詳細資訊，請參閱 [https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForAnonymousUser.html](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForAnonymousUser.html)。您可以在您自己的程式碼中使用這個和其他 API 操作。

### 步驟 3：嵌入生成式問答功能 URL
<a name="embedded-analytics-gen-bi-anonymous-users-step-3"></a>

在下一章節，您可以了解如何在網站或應用程式頁面中嵌入生成式問答功能 URL。您可以使用 [Amazon Quick Sight 內嵌 SDK](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) (JavaScript) 來執行此操作。您可以使用此 SDK 執行以下操作：
+ 將生成式問答功能放置在 HTML 頁面上。
+ 自訂嵌入功能的版面配置和外觀，以符合您的應用程式需求。
+ 以針對您的應用程式而訂做的訊息來處理錯誤狀態。

若要產生可以內嵌到應用程式中的 URL，請呼叫 `GenerateEmbedUrlForAnonymousUser` API 操作。此 URL 的有效期為 5 分鐘，而產生的工作階段有效期最長為 10 小時。此 API 操作提供的 URL 附有可啟用單一登入工作階段的 `auth_code` 值。

以下是 `generate-embed-url-for-anonymous-user` 的回應範例。

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
//readability and added ellipsis to indicate that it's incomplete.{
     "Status": "200",
     "EmbedUrl": "https://quicksightdomain/embedding/12345/q/search...",
     "RequestId": "7bee030e-f191-45c4-97fe-d9faf0e03713"
}
```

使用 [Amazon Quick Sight 內嵌 SDK ](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk)或將此 URL 新增至 iframe，在您的網頁中嵌入生成式問答體驗。如果您設定固定高度和寬度數字 （以像素為單位），Amazon Quick Sight 會使用這些值，而且不會隨著視窗調整大小而變更視覺效果。如果您設定相對百分比高度和寬度，Amazon Quick Sight 會提供隨著視窗大小變更而修改的回應式配置。

請確定託管生成式問答體驗的網域列於*允許清單*上，即 Amazon Quick Sight 訂閱的已核准網域清單。這項要求將使未獲核准的網域無法託管嵌入生成式問答功能，進而保護您的資料。如需為嵌入生成式問答功能新增網域的詳細資訊，請參閱[管理網域](manage-domains.md)。

您可以使用 Amazon Quick Sight 內嵌 SDK 自訂內嵌生成式問答體驗的配置和外觀，以符合您的應用程式。使用 `panelType` 屬性設定生成式問答功能在應用程式中轉譯時的登陸狀態。將 `panelType` 屬性設定為 `'FULL'`，以轉譯完整的生成式問答功能面板。此面板類似 Amazon Quick Sight 使用者在 Amazon Quick Sight 主控台中擁有的體驗。面板的影格高度不會根據使用者互動而變更，並且會遵守您在 `frameOptions.height` 屬性中設定的值。下圖顯示當您將 `panelType` 值設定為 `'FULL'` 時轉譯的生成式問答功能面板。

將 `panelType` 屬性設定為 `'SEARCH_BAR'`，以搜尋列形式轉譯生成式問答功能。此搜尋列類似於 Q 搜尋列在嵌入應用程式時轉譯的方式。生成式問答搜尋列會展開為較大面板，顯示主題選取選項、問題建議清單、答案面板或 Pinboard。

嵌入式資產載入時，會轉譯生成式問答搜尋列的預設最小高度。建議您將 `frameOptions.height` 值設定為 `"38px"`，以最佳化搜尋列體驗。使用 `focusedHeight` 屬性來設定主題選取下拉式清單與問題建議清單的最佳大小。使用 `expandedHeight` 屬性來設定答案面板和 Pinboard 的最佳大小。如果您選擇 `'SEARCH_BAR'` 選項，建議您使用位置來設定父系容器的樣式；絕對要避免應用程式中不必要的內容轉移。下圖顯示當您將 `panelType` 值設定為 `'SEARCH_BAR'` 時轉譯的生成式問答功能搜尋列。

設定 `panelType` 屬性之後，請使用 Amazon Quick Sight 內嵌 SDK 來自訂生成式問答體驗的下列屬性。
+ 生成式問答面板的標題 (僅適用於 `panelType: FULL` 選項)。
+ 搜尋列的預留位置文字。
+ 是否允許主題選取。
+ 是否顯示或隱藏主題名稱。
+ 是否顯示或隱藏 Amazon Q 圖示 (僅適用於 `panelType: FULL` 選項)。
+ 是否顯示為隱藏 Pinboard。
+ 使用者是否可以將生成式問答面板最大化為全螢幕。
+ 生成式問答面板的佈景主題。自訂佈景主題 ARN 可在 SDK 中傳遞，以變更影格內容的外觀。內嵌生成 BI 面板不支援 Amazon Quick Sight 入門主題。若要使用 Amazon Quick Sight 入門佈景主題，請在 Amazon Quick Sight 中將其儲存為自訂佈景主題。

當您使用 Amazon Quick Sight 內嵌 SDK 時，頁面上的生成式問答體驗會根據 狀態動態調整大小。使用 Amazon Quick Sight 內嵌 SDK，您也可以控制生成式問答體驗中的參數，並在頁面載入完成、狀態變更和錯誤方面接收回呼。

下列範例示範如何使用產生的 URL。此代碼在您的應用程式伺服器上生成。

#### SDK 2.0
<a name="embedded-analytics-gen-bi-anonymous-users-sdkv2"></a>

```
<!DOCTYPE html>
<html>
    <head>
        <title>Generative Q&A Embedding Example</title>
        <script src="https://unpkg.com/amazon-quicksight-embedding-sdk@2.7.0/dist/quicksight-embedding-js-sdk.min.js"></script>
        <script type="text/javascript">
            const embedGenerativeQnA = async() => {    
                const {createEmbeddingContext} = QuickSightEmbedding;

                const embeddingContext = await createEmbeddingContext({
                    onChange: (changeEvent, metadata) => {
                        console.log('Context received a change', changeEvent, metadata);
                    },
                });

                const frameOptions = {
                    url: "<YOUR_EMBED_URL>", // replace this value with the url generated via embedding API
                    container: '#experience-container',
                    height: "700px",
                    width: "1000px",
                    onChange: (changeEvent, metadata) => {
                        switch (changeEvent.eventName) {
                            case 'FRAME_MOUNTED': {
                                console.log("Do something when the experience frame is mounted.");
                                break;
                            }
                            case 'FRAME_LOADED': {
                                console.log("Do something when the experience frame is loaded.");
                                break;
                            }
                        }
                    },
                };

                const contentOptions = {
                    // Optional panel settings. Default behavior is equivalent to {panelType: 'FULL'}
                    panelOptions: {
                        panelType: 'FULL',
                        title: 'custom title', // Optional
                        showQIcon: false, // Optional, Default: true
                    },
                    // Use SEARCH_BAR panel type for the landing state to be similar to embedQSearchBar
                    // with generative capability enabled topics
                    /*
                    panelOptions: {
                        panelType: 'SEARCH_BAR',
                        focusedHeight: '250px',
                        expandedHeight: '500px',
                    },
                    */
                    showTopicName: false, // Optional, Default: true
                    showPinboard: false, // Optional, Default: true
                    allowTopicSelection: false, // Optional, Default: true
                    allowFullscreen: false, // Optional, Default: true
                    searchPlaceholderText: "custom search placeholder", // Optional
                    themeOptions: { // Optional
                        themeArn: 'arn:aws:quicksight:<Region>:<AWS-Account-ID>:theme/<Theme-ID>'
                    }
                    onMessage: async (messageEvent, experienceMetadata) => {
                        switch (messageEvent.eventName) {
                            case 'Q_SEARCH_OPENED': {
                                // called when pinboard is shown / visuals are rendered
                                console.log("Do something when SEARCH_BAR type panel is expanded");
                                break;
                            }
                            case 'Q_SEARCH_FOCUSED': {
                                // called when question suggestions or topic selection dropdown are shown
                                console.log("Do something when SEARCH_BAR type panel is focused");
                                break;
                            }
                            case 'Q_SEARCH_CLOSED': {
                                // called when shrinked to initial bar height
                                console.log("Do something when SEARCH_BAR type panel is collapsed");
                                break;
                            }
                            case 'Q_PANEL_ENTERED_FULLSCREEN': {
                                console.log("Do something when panel enters full screen mode");
                                break;
                            }
                            case 'Q_PANEL_EXITED_FULLSCREEN': {
                                console.log("Do something when panel exits full screen mode");
                                break;
                            }
                            case 'CONTENT_LOADED': {
                                console.log("Do something after experience is loaded");
                                break;
                            }
                            case 'ERROR_OCCURRED': {
                                console.log("Do something when experience fails to load");
                                break;
                            }
                        }
                    }
                };
                const embeddedGenerativeQnExperience = await embeddingContext.embedGenerativeQnA(frameOptions, contentOptions);
            };
        </script>
    </head>

    <body onload="embedGenerativeQnA()">
        <div id="experience-container"></div>
    </body>

</html>
```

若要讓此範例運作，請務必使用 Amazon Quick Sight 內嵌 SDK，透過 JavaScript 在您的網站上載入內嵌的生成式問答體驗。為獲得您的版本，請執行以下其中一項操作：
+ 從 GitHub 下載 [Amazon Quick Sight 內嵌 SDK](https://github.com/awslabs/amazon-quicksight-embedding-sdk#step-3-create-the-quicksight-session-object)。此儲存庫由一組 Amazon Quick Sight 開發人員維護。
+ 從 [https://www.npmjs.com/package/amazon-quicksight-embedding-sdk](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) 下載最新的內嵌開發套件版本。
+ 如果您使用 JavaScript 相依性的 `npm`，請執行下列命令來下載並安裝它。

  ```
  npm install amazon-quicksight-embedding-sdk
  ```

### 選用的嵌入生成式問答功能功能
<a name="embedded-analytics-gen-bi-anonymous-users-step-4"></a>

下列選用功能可在使用嵌入式 SDK 的嵌入生成式問答功能中使用。

#### 調用生成式問答搜尋列動作
<a name="w2aac35c27c21c43c29c13c25b5"></a>
+ 設定問題：此功能會將問題傳送至生成式問答功能，並立即查詢問題。

  ```
  embeddedGenerativeQnExperience.setQuestion('show me monthly revenue');
  ```
+ 關閉答案面板 (適用於生成式問答搜尋列選項)：此功能會關閉答案面板，並將 iframe 回復至原始搜尋列狀態。

  ```
  embeddedGenerativeQnExperience.close();
  ```

如需詳細資訊，請參閱 [Amazon Quick Sight 內嵌 SDK](https://github.com/awslabs/amazon-quicksight-embedding-sdk)。

# 內嵌 Amazon Quick Sight Q 搜尋列 （傳統）
<a name="embedding-quicksight-q"></a>


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

**注意**  
內嵌的 Amazon Quick Sight Q 搜尋列提供傳統 Amazon Quick Sight Q&A 體驗。Amazon Quick Sight 與 Amazon Q Business 整合，以啟動新的生成式問答體驗。建議開發人員使用新的生成式問答功能。如需內嵌生成式問答體驗的詳細資訊，請參閱[在 Amazon Quick Sight 生成式問答體驗中內嵌 Amazon Q](https://docs.aws.amazon.com/quicksight/latest/user/embedding-gen-bi.html)。

使用下列主題來了解如何使用 Amazon Quick Sight APIs 內嵌 Amazon Quick Sight Q 搜尋列。

**Topics**
+ [

# 內嵌已註冊使用者的 Amazon Quick Sight Q 搜尋列
](embedded-analytics-q-search-bar-for-authenticated-users.md)
+ [

# 為匿名 （未註冊） 使用者嵌入 Amazon Quick Sight Q 搜尋列
](embedded-analytics-q-search-bar-for-anonymous-users.md)

# 內嵌已註冊使用者的 Amazon Quick Sight Q 搜尋列
<a name="embedded-analytics-q-search-bar-for-authenticated-users"></a>


|  | 
| --- |
|  適用於：企業版本  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

**注意**  
內嵌的 Amazon Quick Sight Q 搜尋列提供傳統 Amazon Quick Sight Q&A 體驗。Amazon Quick Sight 與 Amazon Q Business 整合，以啟動新的生成式問答體驗。建議開發人員使用新的生成式問答功能。如需內嵌生成式問答體驗的詳細資訊，請參閱[在 Amazon Quick Sight 生成式問答體驗中內嵌 Amazon Q](https://docs.aws.amazon.com/quicksight/latest/user/embedding-gen-bi.html)。

在下列各節中，您可以找到有關如何為 Amazon Quick Sight 註冊使用者設定內嵌 Amazon Quick Sight Q 搜尋列的詳細資訊。

**Topics**
+ [

## 步驟 1：設定許可
](#embedded-q-bar-for-authenticated-users-step-1)
+ [

## 步驟 2：產生帶有身分驗證碼的 URL
](#embedded-q-bar-for-authenticated-users-step-2)
+ [

## 步驟 3：內嵌 Q 搜尋列 URL
](#embedded-q-bar-for-authenticated-users-step-3)
+ [

## 選用的 Amazon Quick Sight Q 搜尋列內嵌功能
](#embedded-q-bar-for-authenticated-users-step-4)

## 步驟 1：設定許可
<a name="embedded-q-bar-for-authenticated-users-step-1"></a>

**注意**  
內嵌的 Amazon Quick Sight Q 搜尋列提供傳統 Amazon Quick Sight Q&A 體驗。Amazon Quick Sight 與 Amazon Q Business 整合，以啟動新的生成式問答體驗。建議開發人員使用新的生成式問答功能。如需內嵌生成式問答體驗的詳細資訊，請參閱[在 Amazon Quick Sight 生成式問答體驗中內嵌 Amazon Q](https://docs.aws.amazon.com/quicksight/latest/user/embedding-gen-bi.html)。

在以下章節中，您可以了解如何為後端應用程式或 Web 伺服器設定許可以嵌入 Q 搜尋列。此任務需要 AWS Identity and Access Management (IAM) 的管理存取權。

每個存取儀表板的使用者都會擔任一個角色，為他們提供儀表板的 Amazon Quick Sight 存取權和許可。若要實現此目的，請在 中建立 IAM 角色 AWS 帳戶。將 IAM 政策與此角色建立關聯，以提供許可給擔任此角色的任何使用者。IAM 角色需要提供許可，以擷取特定使用者集區的內嵌 URL。

藉助萬用字元 *\$1*，您可以授予許可，以便為特定命名空間中的所有使用者產生 URL。或者，您可以授予許可來為特定命名空間中的使用者子集產生 URL。對於這一點，您新增 `quicksight:GenerateEmbedUrlForRegisteredUser`。

您可以在 IAM 政策中建立條件，以限制開發人員可在 `GenerateEmbedUrlForRegisteredUser` API 操作的 `AllowedDomains` 參數中列出的域。`AllowedDomains` 參數是選用參數。它可讓開發人員選擇覆寫在**管理 Amazon Quick Sight **選單中設定的靜態網域，並改為列出最多三個可存取產生 URL 的網域或子網域。然後將此 URL 內嵌到開發人員的網站中。只有參數中列出的域可以存取內嵌 Q 搜尋列。如果沒有這種情況，開發人員可以在 `AllowedDomains` 參數中列出網際網路上的任何域。

若要限制開發人員可搭配此參數使用的網域，請在 IAM 政策中新增 `AllowedEmbeddingDomains` 條件。如需 `AllowedDomains` 參數的詳細資訊，請參閱《*Amazon Quick Sight API 參考*》中的 [GenerateEmbedUrlForRegisteredUser](https://docs.aws.amazon.com//quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html)。

**IAM 條件運算子的安全最佳實務**  
設定不當的 IAM 條件運算子可能會允許透過 URL 變化未經授權存取您的內嵌 Quick 資源。在 IAM 政策中使用 `quicksight:AllowedEmbeddingDomains`條件金鑰時，請使用允許特定網域或拒絕未明確允許的所有網域的條件運算子。如需 IAM 條件運算子的詳細資訊，請參閱《IAM [使用者指南》中的 IAM JSON 政策元素：條件運算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)。  
許多不同的 URL 變化可以指向相同的資源。例如，下列 URLs全部解析為相同的內容：  
`https://example.com`
`https://example.com/`
`https://Example.com`
如果您的政策使用未考慮這些 URL 變化的運算子，攻擊者可以透過提供同等的 URL 變化來繞過您的限制。  
您必須驗證 IAM 政策是否使用適當的條件運算子來防止繞過漏洞，並確保只有您預期的網域可以存取您的內嵌資源。

下列範例政策提供這些許可。

此外，如果您要建立將成為 Amazon Quick Sight 讀者的第一次使用者，請務必在政策中新增 `quicksight:RegisterUser`許可。

下列範例政策提供許可，以擷取初次成為 Amazon Quick Sight 讀取器之使用者的內嵌 URL。

最後，您的應用程式的 IAM 身分必須有相關聯的信任政策，以允許存取至您剛建立的角色。這表示當使用者存取您的應用程式時，您的應用程式可以代表使用者擔任該角色，並在 Amazon Quick Sight 中佈建使用者。

範例信任政策如下所示。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowLambdaFunctionsToAssumeThisRole",
            "Effect": "Allow",
            "Principal": {
                "Service": "lambda.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        },
        {
            "Sid": "AllowEC2InstancesToAssumeThisRole",
            "Effect": "Allow",
            "Principal": {
                "Service": "ec2.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

如需 OpenID Connect 或安全性聲明標記語言 (SAML) 身分驗證的信任政策詳細資訊，請參閱《IAM 使用者指南》**的下列各章節：
+ [建立 Web 身分的角色或 OpenID Connect 聯合身分 (主控台)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_oidc.html)
+ [為 SAML 2.0 聯合身分建立角色 (主控台)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html)

## 步驟 2：產生帶有身分驗證碼的 URL
<a name="embedded-q-bar-for-authenticated-users-step-2"></a>

**注意**  
內嵌的 Amazon Quick Sight Q 搜尋列提供傳統 Amazon Quick Sight Q&A 體驗。Amazon Quick Sight 與 Amazon Q Business 整合，以啟動新的生成式問答體驗。建議開發人員使用新的生成式問答功能。如需內嵌生成式問答體驗的詳細資訊，請參閱[在 Amazon Quick Sight 生成式問答體驗中內嵌 Amazon Q](https://docs.aws.amazon.com/quicksight/latest/user/embedding-gen-bi.html)。

在下一章節，您可以了解如何在您的應用程式伺服器上驗證使用者，以及取得可嵌入的 Q 主題 URL。如果您打算內嵌 IAM 或 Amazon Quick Sight 身分類型的 Q 列，請與使用者共用 Q 主題。

當使用者存取您的應用程式時，該應用程式代表使用者擔任 IAM 角色。然後，如果使用者尚未存在，應用程式會將使用者新增至 Amazon Quick Sight。接著，它傳遞識別符當作唯一的角色工作階段 ID。

執行所述的步驟可確保 Q 主題的每個檢視器都是在 Amazon Quick Sight 中唯一佈建。它還會強制執行個別使用者設定，例如資料列層級的安全性和參數的動態預設值。

下列範例會代表使用者執行 IAM 身分驗證。此代碼在您的應用程式伺服器上運行。

### Java
<a name="embedded-q-bar-for-embedded-q-bar-for-authenticated-users-java"></a>

```
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.BasicAWSCredentials;
        import com.amazonaws.auth.AWSCredentialsProvider;
        import com.amazonaws.regions.Regions;
        import com.amazonaws.services.quicksight.AmazonQuickSight;
        import com.amazonaws.services.quicksight.AmazonQuickSightClientBuilder;
import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForRegisteredUserRequest;
import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForRegisteredUserResult;
import com.amazonaws.services.quicksight.model.RegisteredUserEmbeddingExperienceConfiguration;
import com.amazonaws.services.quicksight.model.RegisteredUserQSearchBarEmbeddingConfiguration;

        /**
 * Class to call QuickSight AWS SDK to get url for embedding the Q search bar.
        */
public class RegisteredUserQSearchBarEmbeddingConfiguration {

            private final AmazonQuickSight quickSightClient;

    public RegisteredUserQSearchBarEmbeddingConfiguration() {
        this.quickSightClient = AmazonQuickSightClientBuilder
                    .standard()
                    .withRegion(Regions.US_EAST_1.getName())
                    .withCredentials(new AWSCredentialsProvider() {
                            @Override
                            public AWSCredentials getCredentials() {
                                // provide actual IAM access key and secret key here
                                return new BasicAWSCredentials("access-key", "secret-key");
                            }

                            @Override
                            public void refresh() {
                            }
                        }
                    )
                    .build();
            }

    public String getQuicksightEmbedUrl(
            final String accountId, // AWS Account ID
            final String topicId, // Topic ID to embed
            final List<String> allowedDomains, // Runtime allowed domain for embedding
            final String userArn // Registered user arn to use for embedding. Refer to Get Embed Url section in developer portal to find how to get user arn for a QuickSight user.
            ) throws Exception {
        final RegisteredUserEmbeddingExperienceConfiguration experienceConfiguration = new RegisteredUserEmbeddingExperienceConfiguration()
                .withQSearchBar(new RegisteredUserQSearchBarEmbeddingConfiguration().withInitialTopicId(topicId));
        final GenerateEmbedUrlForRegisteredUserRequest generateEmbedUrlForRegisteredUserRequest = new GenerateEmbedUrlForRegisteredUserRequest();
        generateEmbedUrlForRegisteredUserRequest.setAwsAccountId(accountId);
        generateEmbedUrlForRegisteredUserRequest.setUserArn(userArn);
        generateEmbedUrlForRegisteredUserRequest.setAllowedDomains(allowedDomains);
        generateEmbedUrlForRegisteredUserRequest.setExperienceConfiguration(QSearchBar);

        final GenerateEmbedUrlForRegisteredUserResult generateEmbedUrlForRegisteredUserResult = quickSightClient.generateEmbedUrlForRegisteredUser(generateEmbedUrlForRegisteredUserRequest);

        return generateEmbedUrlForRegisteredUserResult.getEmbedUrl();
            }
        }
```

### JavaScript
<a name="embedded-q-bar-for-embedded-q-bar-for-authenticated-users-js"></a>

```
global.fetch = require('node-fetch');
const AWS = require('aws-sdk');

function generateEmbedUrlForRegisteredUser(
    accountId,
    topicId, // Topic ID to embed
    openIdToken, // Cognito-based token
    userArn, // registered user arn
    roleArn, // IAM user role to use for embedding
    sessionName, // Session name for the roleArn assume role
    allowedDomains, // Runtime allowed domain for embedding
    getEmbedUrlCallback, // GetEmbedUrl success callback method
    errorCallback // GetEmbedUrl error callback method
    ) {
    const stsClient = new AWS.STS();
    let stsParams = {
        RoleSessionName: sessionName,
        WebIdentityToken: openIdToken,
        RoleArn: roleArn
        }
    
    stsClient.assumeRoleWithWebIdentity(stsParams, function(err, data) {
        if (err) {
            console.log('Error assuming role');
            console.log(err, err.stack);
            errorCallback(err);
        } else {
            const getQSearchBarParams = {
        "AwsAccountId": accountId,
                "ExperienceConfiguration": {
                    "QSearchBar": {
                        "InitialTopicId": topicId
                    }
                },
                "UserArn": userArn,
        "AllowedDomains": allowedDomains,
        "SessionLifetimeInMinutes": 600
    };

            const quicksightGetQSearchBar = new AWS.QuickSight({
        region: process.env.AWS_REGION,
                credentials: {
                    accessKeyId: data.Credentials.AccessKeyId,
                    secretAccessKey: data.Credentials.SecretAccessKey,
                    sessionToken: data.Credentials.SessionToken,
                    expiration: data.Credentials.Expiration
                }
    });

            quicksightGetQSearchBar.generateEmbedUrlForRegisteredUser(getQSearchBarParams, function(err, data) {
        if (err) {
            console.log(err, err.stack);
            errorCallback(err);
        } else {
            const result = {
                "statusCode": 200,
                "headers": {
                            "Access-Control-Allow-Origin": "*", // Use your website domain to secure access to GetEmbedUrl API
                    "Access-Control-Allow-Headers": "Content-Type"
                },
                "body": JSON.stringify(data),
                "isBase64Encoded": false
            }
                    getEmbedUrlCallback(result);
                }
            });
        }
    });
}
```

### Python3
<a name="embedded-q-bar-for-embedded-q-bar-for-authenticated-users-python"></a>

```
import json
import boto3
from botocore.exceptions import ClientError

sts = boto3.client('sts')

# Function to generate embedded URL  
# accountId: AWS account ID
# topicId: Topic ID to embed
# userArn: arn of registered user
# allowedDomains: Runtime allowed domain for embedding
# roleArn: IAM user role to use for embedding
# sessionName: session name for the roleArn assume role
def getEmbeddingURL(accountId, topicId, userArn, allowedDomains, roleArn, sessionName):
    try:
        assumedRole = sts.assume_role(
            RoleArn = roleArn,
            RoleSessionName = sessionName,
        )
    except ClientError as e:
        return "Error assuming role: " + str(e)
    else: 
        assumedRoleSession = boto3.Session(
            aws_access_key_id = assumedRole['Credentials']['AccessKeyId'],
            aws_secret_access_key = assumedRole['Credentials']['SecretAccessKey'],
            aws_session_token = assumedRole['Credentials']['SessionToken'],
        )
        try:
            quicksightClient = assumedRoleSession.client('quicksight', region_name='us-west-2')
            response = quicksightClient.generate_embed_url_for_registered_user(
                AwsAccountId=accountId,
                ExperienceConfiguration = {
                    "QSearchBar": {
                        "InitialTopicId": topicId
                    }
                },
                UserArn = userArn,
                AllowedDomains = allowedDomains,
                SessionLifetimeInMinutes = 600
            )
            
            return {
                'statusCode': 200,
                'headers': {"Access-Control-Allow-Origin": "*", "Access-Control-Allow-Headers": "Content-Type"},
                'body': json.dumps(response),
                'isBase64Encoded':  bool('false')
            }
        except ClientError as e:
            return "Error generating embedding url: " + str(e)
```

### Node.js
<a name="embedded-q-bar-for-embedded-q-bar-for-authenticated-users-node"></a>

以下範例顯示的 JavaScript (Node.js) 可在應用程式伺服器上用來產生嵌入式儀表板的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示儀表板。

**Example**  

```
const AWS = require('aws-sdk');
const https = require('https');

var quicksightClient = new AWS.Service({
    apiConfig: require('./quicksight-2018-04-01.min.json'),
    region: 'us-east-1',
});

quicksightClient.generateEmbedUrlForRegisteredUser({
    'AwsAccountId': '111122223333',
    'ExperienceConfiguration': { 
        'QSearchBar': {
            'InitialTopicId': 'U4zJMVZ2n2stZflc8Ou3iKySEb3BEV6f'
        }
    },
    'UserArn': 'REGISTERED_USER_ARN',
    'AllowedDomains': allowedDomains,
    'SessionLifetimeInMinutes': 100
}, function(err, data) {
    console.log('Errors: ');
    console.log(err);
    console.log('Response: ');
    console.log(data);
});
```

**Example**  

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
//readability and added ellipsis to indicate that it's incomplete.
    { 
        Status: 200,
        EmbedUrl: "https://quicksightdomain/embed/12345/dashboards/67890/sheets/12345/visuals/67890...",
        RequestId: '7bee030e-f191-45c4-97fe-d9faf0e03713' 
    }
```

### .NET/C\$1
<a name="embedded-q-bar-for-embedded-q-bar-for-authenticated-users-cs"></a>

以下範例顯示的 .NET/C\$1 程式碼可在應用程式伺服器上用來產生嵌入式 Q 搜尋列的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示 Q 搜尋列。

**Example**  

```
using System;
using Amazon.QuickSight;
using Amazon.QuickSight.Model;

namespace GenerateDashboardEmbedUrlForRegisteredUser
{
    class Program
    {
        static void Main(string[] args)
        {
            var quicksightClient = new AmazonQuickSightClient(
                AccessKey,
                SecretAccessKey,
                SessionToken,
                Amazon.RegionEndpoint.USEast1);
            try
            {
                RegisteredUserQSearchBarEmbeddingConfiguration registeredUserQSearchBarEmbeddingConfiguration
                    = new RegisteredUserQSearchBarEmbeddingConfiguration
                    {
                        InitialTopicId = "U4zJMVZ2n2stZflc8Ou3iKySEb3BEV6f"
                    };
                RegisteredUserEmbeddingExperienceConfiguration registeredUserEmbeddingExperienceConfiguration
                    = new RegisteredUserEmbeddingExperienceConfiguration
                    {
                        QSearchBar = registeredUserQSearchBarEmbeddingConfiguration
                    }; 
                
                Console.WriteLine(
                    quicksightClient.GenerateEmbedUrlForRegisteredUserAsync(new GenerateEmbedUrlForRegisteredUserRequest
                    {
                        AwsAccountId = "111122223333",
                        ExperienceConfiguration = registeredUserEmbeddingExperienceConfiguration,
                        UserArn = "REGISTERED_USER_ARN",
                        AllowedDomains = allowedDomains,
                        SessionLifetimeInMinutes = 100
                    }).Result.EmbedUrl
                );
            } catch (Exception ex) {
                Console.WriteLine(ex.Message);
            }
        }
    }
}
```

### AWS CLI
<a name="embedded-q-bar-for-embedded-q-bar-for-authenticated-users-cli"></a>

若要擔任角色，請選擇下列其中一個 AWS Security Token Service (AWS STS) API 操作：
+ [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) – 在使用 IAM 身分擔任角色的情況下使用此操作。
+ [AssumeRoleWithWebIdentity](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html) – 在使用 Web 身分提供者驗證您的使用者時，請使用此操作。
+ [AssumeRoleWithSaml](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html) –在您使用 SAML 驗證使用者時，請使用此操作。

以下範例顯示用來設定 IAM 角色的 CLI 命令。角色需要啟用 `quicksight:GenerateEmbedUrlForRegisteredUser` 的許可。如果您正在採取即時方法在使用者使用 Q 搜尋列中的主題時新增使用者，則該角色還需要啟用 `quicksight:RegisterUser` 的許可。

```
aws sts assume-role \
     --role-arn "arn:aws:iam::111122223333:role/embedding_quicksight_q_search_bar_role" \
     --role-session-name john.doe@example.com
```

`assume-role` 操作會傳回三個輸出參數：存取金鑰、私密金鑰和工作階段字符。

**注意**  
若您呼叫 `AssumeRole` 操作時收到 `ExpiredToken` 錯誤，原因可能是先前的 `SESSION TOKEN` 仍在環境變數中。設定以下變數便可清除此錯誤：  
*AWS\$1ACCESS\$1KEY\$1ID* 
*AWS\$1SECRET\$1ACCESS\$1KEY* 
*AWS\$1SESSION\$1TOKEN* 

以下範例說明如何在 CLI 中設定這三個參數。對於 Microsoft Windows 電腦，請使用 `set`，不要使用 `export`。

```
export AWS_ACCESS_KEY_ID     = "access_key_from_assume_role"
export AWS_SECRET_ACCESS_KEY = "secret_key_from_assume_role"
export AWS_SESSION_TOKEN     = "session_token_from_assume_role"
```

對於瀏覽您網站的使用者，執行這些命令可將其角色工作階段 ID 設為 `embedding_quicksight_q_search_bar_role/john.doe@example.com`。角色工作階段 ID 由來自 `role-arn` 和 `role-session-name` 值的角色名稱所組成。對每個使用者使用唯一的角色工作階段 ID，可確保為每個使用者設定適當的許可。還能避免對使用者存取進行任何調節。*調節*是一項安全功能，可防止相同的使用者從多個位置存取 Amazon Quick Sight。

角色工作階段 ID 也會成為 Amazon Quick Sight 中的使用者名稱。您可以使用此模式提前在 Amazon Quick Sight 中佈建您的使用者，或在他們第一次存取 Q 搜尋列時佈建他們。

以下範例顯示可用來佈建使用者的 CLI 命令。如需 [RegisterUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_RegisterUser.html)、[DescribeUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_DescribeUser.html) 和其他 Amazon Quick Sight API 操作的詳細資訊，請參閱 [Amazon Quick Sight API 參考](https://docs.aws.amazon.com/quicksight/latest/APIReference/Welcome.html)。

```
aws quicksight register-user \
    --aws-account-id 111122223333 \
    --namespace default \
    --identity-type IAM \
    --iam-arn "arn:aws:iam::111122223333:role/embedding_quicksight_q_search_bar_role" \
    --user-role READER \
    --user-name jhnd \
    --session-name "john.doe@example.com" \
    --email john.doe@example.com \
    --region us-east-1 \
    --custom-permissions-name TeamA1
```

如果使用者是透過 Microsoft AD 進行身分驗證，您就不需要使用 `RegisterUser` 設定他們。反之，他們應該在第一次存取 Amazon Quick Sight 時自動訂閱。若是 Microsoft AD 使用者，您可以使用 `DescribeUser` 取得使用者的 Amazon Resource Name (ARN)。

使用者第一次存取 Amazon Quick Sight 時，您也可以將此使用者新增至與儀表板共用的群組。以下範例顯示用於將使用者新增至群組的 CLI 命令。

```
aws quicksight create-group-membership \
    --aws-account-id=111122223333 \
    --namespace=default \
    --group-name=financeusers \
    --member-name="embedding_quicksight_q_search_bar_role/john.doe@example.com"
```

您現在擁有應用程式的使用者，他們也是 Amazon Quick Sight 的使用者，以及有權存取儀表板的使用者。

最後，為了取得儀表板的簽章 URL，請從應用程式伺服器呼叫 `generate-embed-url-for-registered-user`。這會傳回可嵌入的儀表板 URL。下列範例示範如何使用伺服器端呼叫為透過 AWS Managed Microsoft AD 或單一登入 (IAM Identity Center) 驗證的使用者產生內嵌儀表板的 URL。

```
aws quicksight generate-embed-url-for-registered-user \
--aws-account-id 111122223333 \
--session-lifetime-in-minutes 600 \
--user-arn arn:aws:quicksight:us-east-1:111122223333:user/default/embedding_quicksight_q_search_bar_role/embeddingsession
--allowed-domains '["domain1","domain2"]' \
--experience-configuration QSearchBar={InitialTopicId=U4zJMVZ2n2stZflc8Ou3iKySEb3BEV6f}
```

如需使用此操作的詳細資訊，請參閱 [https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html)。您可以在您自己的程式碼中使用這個和其他 API 操作。

## 步驟 3：內嵌 Q 搜尋列 URL
<a name="embedded-q-bar-for-authenticated-users-step-3"></a>

**注意**  
內嵌的 Amazon Quick Sight Q 搜尋列提供傳統 Amazon Quick Sight Q&A 體驗。Amazon Quick Sight 與 Amazon Q Business 整合，以啟動新的生成式問答體驗。建議開發人員使用新的生成式問答功能。如需內嵌生成式問答體驗的詳細資訊，請參閱[在 Amazon Quick Sight 生成式問答體驗中內嵌 Amazon Q](https://docs.aws.amazon.com/quicksight/latest/user/embedding-gen-bi.html)。

在下一章節，您可以了解如何將步驟 3 中的 Q 搜尋列 URL 嵌入到網站或應用程式頁面中。您可以使用 [Amazon Quick Sight 內嵌 SDK](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) (JavaScript) 來執行此操作。您可以使用此 SDK 執行以下操作：
+ 將 Q 搜尋列放置在 HTML 頁面上。
+ 將參數傳遞至 Q 搜尋列。
+ 以針對您的應用程式而訂做的訊息來處理錯誤狀態。

若要產生可以內嵌到應用程式中的 URL，請呼叫 `GenerateEmbedUrlForRegisteredUser` API 操作。此 URL 的有效期為 5 分鐘，而產生的工作階段有效期最長為 10 小時。此 API 操作提供的 URL 附有可啟用單一登入工作階段的 `auth_code` 值。

以下是 `generate-embed-url-for-registered-user` 的回應範例。

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
//readability and added ellipsis to indicate that it's incomplete.
{
     "Status": "200",
     "EmbedUrl": "https://quicksightdomain/embedding/12345/q/search...",
     "RequestId": "7bee030e-f191-45c4-97fe-d9faf0e03713"
}
```

使用 [Amazon Quick Sight 內嵌 SDK ](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk)或將此 URL 新增至 iframe，在網頁中內嵌 Q 搜尋列。如果您設定固定高度和寬度數字 （以像素為單位），Amazon Quick Sight 會使用這些值，而且不會隨著視窗調整大小而變更視覺效果。如果您設定相對百分比高度和寬度，Amazon Quick Sight 會提供隨著視窗大小變更而修改的回應式配置。

若要這樣做，請確定託管內嵌 Q 搜尋列的網域位於*允許清單*上，即 Amazon Quick Sight 訂閱的已核准網域清單。這項要求將使未獲核准的網域無法託管嵌入儀表板，進而保護您的資料。如需為內嵌 Q 搜尋列新增網域的詳細資訊，請參閱[管理網域和內嵌](https://docs.aws.amazon.com/quicksight/latest/user/manage-qs-domains-and-embedding.html)。

當您使用 Amazon Quick Sight 內嵌 SDK 時，頁面上的 Q 搜尋列會根據狀態動態調整大小。透過使用 Amazon Quick Sight 內嵌 SDK，您也可以控制 Q 搜尋列中的參數，並根據頁面載入完成和錯誤接收回呼。

下列範例示範如何使用產生的 URL。此代碼在您的應用程式伺服器上生成。

### SDK 2.0
<a name="embedded-q-bar-for-authenticated-users-sdkv2"></a>

```
<!DOCTYPE html>
<html>

    <head>
        <title>Q Search Bar Embedding Example</title>
        <script src="https://unpkg.com/amazon-quicksight-embedding-sdk@2.0.0/dist/quicksight-embedding-js-sdk.min.js"></script>
        <script type="text/javascript">
            const embedQSearchBar = async() => {    
                const {
                    createEmbeddingContext,
                } = QuickSightEmbedding;

                const embeddingContext = await createEmbeddingContext({
                    onChange: (changeEvent, metadata) => {
                        console.log('Context received a change', changeEvent, metadata);
                    },
                });

                const frameOptions = {
                    url: "<YOUR_EMBED_URL>", // replace this value with the url generated via embedding API
                    container: '#experience-container',
                    height: "700px",
                    width: "1000px",
                    onChange: (changeEvent, metadata) => {
                        switch (changeEvent.eventName) {
                            case 'FRAME_MOUNTED': {
                                console.log("Do something when the experience frame is mounted.");
                                break;
                            }
                            case 'FRAME_LOADED': {
                                console.log("Do something when the experience frame is loaded.");
                                break;
                            }
                        }
                    },
                };

                const contentOptions = {
                    hideTopicName: false, 
                    theme: '<YOUR_THEME_ID>',
                    allowTopicSelection: true,
                    onMessage: async (messageEvent, experienceMetadata) => {
                        switch (messageEvent.eventName) {
                            case 'Q_SEARCH_OPENED': {
                                console.log("Do something when Q Search content expanded");
                                break;
                            }
                            case 'Q_SEARCH_CLOSED': {
                                console.log("Do something when Q Search content collapsed");
                                break;
                            }
                            case 'Q_SEARCH_SIZE_CHANGED': {
                                console.log("Do something when Q Search size changed");
                                break;
                            }
                            case 'CONTENT_LOADED': {
                                console.log("Do something when the Q Search is loaded.");
                                break;
                            }
                            case 'ERROR_OCCURRED': {
                                console.log("Do something when the Q Search fails loading.");
                                break;
                            }
                        }
                    }
                };
                const embeddedDashboardExperience = await embeddingContext.embedQSearchBar(frameOptions, contentOptions);
            };
        </script>
    </head>

    <body onload="embedQSearchBar()">
        <div id="experience-container"></div>
    </body>

</html>
```

### SDK 1.0
<a name="embedded-q-bar-for-authenticated-users-sdkv1"></a>

```
<!DOCTYPE html>
<html>

    <head>
        <title>QuickSight Q Search Bar Embedding</title>
        <script src="https://unpkg.com/amazon-quicksight-embedding-sdk@1.18.0/dist/quicksight-embedding-js-sdk.min.js"></script>
        <script type="text/javascript">
            var session

            function onError(payload) {
                console.log("Do something when the session fails loading");
            }

            function onOpen() {
                console.log("Do something when the Q search bar opens");
            }

            function onClose() {
                console.log("Do something when the Q search bar closes");
            }

            function embedQSearchBar() {
                var containerDiv = document.getElementById("embeddingContainer");
                var options = {
                    url: "https://us-east-1.quicksight.aws.amazon.com/sn/dashboards/dashboardId?isauthcode=true&identityprovider=quicksight&code=authcode", // replace this dummy url with the one generated via embedding API
                    container: containerDiv,
                    width: "1000px",
                    locale: "en-US",
                    qSearchBarOptions: {
                        expandCallback: onOpen,
                        collapseCallback: onClose,
                        iconDisabled: false,
                        topicNameDisabled: false, 
                        themeId: 'bdb844d0-0fe9-4d9d-b520-0fe602d93639',
                        allowTopicSelection: true
                    }
                };
                session = QuickSightEmbedding.embedQSearchBar(options);
                session.on("error", onError);
            }

            function onCountryChange(obj) {
                session.setParameters({country: obj.value});
            }
        </script>
    </head>

    <body onload="embedQSearchBar()">
        <div id="embeddingContainer"></div>
    </body>

</html>
```

若要讓此範例運作，請務必使用 Amazon Quick Sight 內嵌 SDK，使用 JavaScript 在您的網站上載入內嵌儀表板。為獲得您的版本，請執行以下其中一項操作：
+ 從 GitHub 下載 [Amazon Quick Sight 內嵌 SDK](https://github.com/awslabs/amazon-quicksight-embedding-sdk#step-3-create-the-quicksight-session-object)。此儲存庫由一組 Amazon Quick Sight 開發人員維護。
+ 從 [https://www.npmjs.com/package/amazon-quicksight-embedding-sdk](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) 下載最新的內嵌開發套件版本。
+ 如果您使用 JavaScript 相依性的 `npm`，請執行下列命令來下載並安裝它。

  ```
  npm install amazon-quicksight-embedding-sdk
  ```

## 選用的 Amazon Quick Sight Q 搜尋列內嵌功能
<a name="embedded-q-bar-for-authenticated-users-step-4"></a>

**注意**  
內嵌的 Amazon Quick Sight Q 搜尋列提供傳統 Amazon Quick Sight Q&A 體驗。Amazon Quick Sight 與 Amazon Q Business 整合，以啟動新的生成式問答體驗。建議開發人員使用新的生成式問答功能。如需內嵌生成式問答體驗的詳細資訊，請參閱[在 Amazon Quick Sight 生成式問答體驗中內嵌 Amazon Q](https://docs.aws.amazon.com/quicksight/latest/user/embedding-gen-bi.html)。

下列選用功能可供使用嵌入 SDK 的嵌入式 Q 搜尋列使用。

### 調用 Q 搜尋列動作
<a name="w2aac35c27c21c43c31c15c21b7"></a>

下列選項僅支援 Q 搜尋列內嵌。
+ 設定 Q 搜尋列問題 – 此功能會將問題傳送至 Q 搜尋列，並立即查詢問題。它也會自動開啟 Q 快顯。

  ```
  qBar.setQBarQuestion('show me monthly revenue');
  ```
+ 關閉 Q 快顯 – 此功能關閉 Q 快顯窗口，並將 iframe 回復至原來的 Q 搜尋列大小。

  ```
  qBar.closeQPopover();
  ```

如需詳細資訊，請參閱 [Amazon Quick Sight 內嵌 SDK](https://github.com/awslabs/amazon-quicksight-embedding-sdk)。

# 為匿名 （未註冊） 使用者嵌入 Amazon Quick Sight Q 搜尋列
<a name="embedded-analytics-q-search-bar-for-anonymous-users"></a>


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

**注意**  
內嵌的 Amazon Quick Sight Q 搜尋列提供傳統 Amazon Quick Sight Q&A 體驗。Amazon Quick Sight 與 Amazon Q Business 整合，以啟動新的生成式問答體驗。建議開發人員使用新的生成式問答功能。如需內嵌生成式問答體驗的詳細資訊，請參閱[在 Amazon Quick Sight 生成式問答體驗中內嵌 Amazon Q](https://docs.aws.amazon.com/quicksight/latest/user/embedding-gen-bi.html)。

在下列各節中，您可以找到有關如何為匿名 （未註冊） 使用者設定內嵌 Amazon Quick Sight Q 搜尋列的詳細資訊。

**Topics**
+ [

## 步驟 1：設定許可
](#embedded-q-bar-for-anonymous-users-step-1)
+ [

## 步驟 2：產生帶有身分驗證碼的 URL
](#embedded-q-bar-for-anonymous-users-step-2)
+ [

## 步驟 3：內嵌 Q 搜尋列 URL
](#embedded-q-bar-for-anonymous-users-step-3)
+ [

## 選用的 Amazon Quick Sight Q 搜尋列內嵌功能
](#embedded-q-bar-for-anonymous-users-step-4)

## 步驟 1：設定許可
<a name="embedded-q-bar-for-anonymous-users-step-1"></a>

**注意**  
內嵌的 Amazon Quick Sight Q 搜尋列提供傳統 Amazon Quick Sight Q&A 體驗。Amazon Quick Sight 與 Amazon Q Business 整合，以啟動新的生成式問答體驗。建議開發人員使用新的生成式問答功能。如需內嵌生成式問答體驗的詳細資訊，請參閱[在 Amazon Quick Sight 生成式問答體驗中內嵌 Amazon Q](https://docs.aws.amazon.com/quicksight/latest/user/embedding-gen-bi.html)。

在以下章節中，您可以了解如何為後端應用程式或 Web 伺服器設定許可以嵌入 Q 搜尋列。此任務需要 AWS Identity and Access Management (IAM) 的管理存取權。

每個存取 Q 搜尋列的使用者都會擔任一個角色，該角色會授予他們 Amazon Quick Sight 存取和 Q 搜尋列的許可。若要實現這一點，請在 中建立 IAM 角色 AWS 帳戶。將 IAM 政策與此角色建立關聯，以提供許可給擔任此角色的任何使用者。IAM 角色需要提供許可，以擷取特定使用者集區的內嵌 URL。

藉助萬用字元 *\$1*，您可以授予許可，以便為特定命名空間中的所有使用者產生 URL。或者，您可以授予許可來為特定命名空間中的使用者子集產生 URL。對於這一點，您新增 `quicksight:GenerateEmbedUrlForAnonymousUser`。

您可以在 IAM 政策中建立條件，以限制開發人員可在 `GenerateEmbedUrlForAnonymousUser` API 操作的 `AllowedDomains` 參數中列出的域。`AllowedDomains` 參數是選用參數。它可讓開發人員選擇覆寫在**管理 Amazon Quick Sight **選單中設定的靜態網域，並改為列出最多三個可以存取產生 URL 的網域或子網域。然後將此 URL 內嵌到開發人員的網站中。只有參數中列出的域可以存取內嵌 Q 搜尋列。如果沒有這種情況，開發人員可以在 `AllowedDomains` 參數中列出網際網路上的任何域。

若要限制開發人員可搭配此參數使用的網域，請在 IAM 政策中新增 `AllowedEmbeddingDomains` 條件。如需 `AllowedDomains` 參數的詳細資訊，請參閱《*Amazon Quick Sight API 參考*》中的 [GenerateEmbedUrlForAnonymousUser](https://docs.aws.amazon.com//quicksight/latest/APIReference/API_GenerateEmbedUrlForAnonymousUser.html)。

**IAM 條件運算子的安全最佳實務**  
設定不當的 IAM 條件運算子可能會允許透過 URL 變化未經授權存取您的內嵌 Quick 資源。在 IAM 政策中使用 `quicksight:AllowedEmbeddingDomains`條件金鑰時，請使用允許特定網域或拒絕未明確允許的所有網域的條件運算子。如需 IAM 條件運算子的詳細資訊，請參閱《IAM [使用者指南》中的 IAM JSON 政策元素：條件運算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)。  
許多不同的 URL 變化可以指向相同的資源。例如，下列 URLs都會解析為相同的內容：  
`https://example.com`
`https://example.com/`
`https://Example.com`
如果您的政策使用未考慮這些 URL 變化的運算子，攻擊者可以透過提供同等的 URL 變化來繞過您的限制。  
您必須驗證 IAM 政策是否使用適當的條件運算子來防止繞過漏洞，並確保只有您預期的網域可以存取您的內嵌資源。

您的應用程式的 IAM 身分必須有相關聯的信任政策，以允許存取至您剛建立的角色。這表示當使用者存取您的應用程式時，您的應用程式可代表使用者擔任該角色，並開啟 Q 搜尋列。範例回應如下所示。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowLambdaFunctionsToAssumeThisRole",
            "Effect": "Allow",
            "Principal": {
                "Service": "lambda.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        },
        {
            "Sid": "AllowEC2InstancesToAssumeThisRole",
            "Effect": "Allow",
            "Principal": {
                "Service": "ec2.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

如需有關信任政策的詳細資訊，請參閱**《IAM 使用者指南》中的[ IAM 中的臨時安全憑證](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html)

## 步驟 2：產生帶有身分驗證碼的 URL
<a name="embedded-q-bar-for-anonymous-users-step-2"></a>

**注意**  
內嵌的 Amazon Quick Sight Q 搜尋列提供傳統 Amazon Quick Sight Q&A 體驗。Amazon Quick Sight 與 Amazon Q Business 整合，以啟動新的生成式問答體驗。建議開發人員使用新的生成式問答功能。如需內嵌生成式問答體驗的詳細資訊，請參閱[在 Amazon Quick Sight 生成式問答體驗中內嵌 Amazon Q](https://docs.aws.amazon.com/quicksight/latest/user/embedding-gen-bi.html)。

在下一章節，您可以了解如何在您的應用程式伺服器上驗證使用者，以及取得可嵌入的 Q 主題 URL。

當使用者存取您的應用程式時，該應用程式代表使用者擔任 IAM 角色。然後，如果使用者尚未存在，應用程式會將使用者新增至 Amazon Quick Sight。接著，它傳遞識別符當作唯一的角色工作階段 ID。

如需詳細資訊，請參閱[https://docs.aws.amazon.com/quicksight/latest/APIReference/AnonymousUserQSearchBarEmbeddingConfiguration.html](https://docs.aws.amazon.com/quicksight/latest/APIReference/AnonymousUserQSearchBarEmbeddingConfiguration.html)。

### Java
<a name="embedded-q-bar-for-anonymous-users-java"></a>

```
        import java.util.List;
        import com.amazonaws.auth.AWSCredentials;
        import com.amazonaws.auth.AWSCredentialsProvider;
        import com.amazonaws.auth.BasicAWSCredentials;
        import com.amazonaws.regions.Regions;
        import com.amazonaws.services.quicksight.AmazonQuickSight;
        import com.amazonaws.services.quicksight.AmazonQuickSightClientBuilder;
        import com.amazonaws.services.quicksight.model.AnonymousUserQSearchBarEmbeddingConfiguration;
        import com.amazonaws.services.quicksight.model.AnonymousUserEmbeddingExperienceConfiguration;
        import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForAnonymousUserRequest;
        import com.amazonaws.services.quicksight.model.GenerateEmbedUrlForAnonymousUserResult;
        import com.amazonaws.services.quicksight.model.SessionTag;


        /**
        * Class to call QuickSight AWS SDK to generate embed url for anonymous user.
        */
        public class GenerateEmbedUrlForAnonymousUserExample {

            private final AmazonQuickSight quickSightClient;

            public GenerateEmbedUrlForAnonymousUserExample() {
                quickSightClient = AmazonQuickSightClientBuilder
                    .standard()
                    .withRegion(Regions.US_EAST_1.getName())
                    .withCredentials(new AWSCredentialsProvider() {
                            @Override
                            public AWSCredentials getCredentials() {
                                // provide actual IAM access key and secret key here
                                return new BasicAWSCredentials("access-key", "secret-key");
                            }

                            @Override
                            public void refresh() {
                            }
                        }
                    )
                    .build();
            }

            public String GenerateEmbedUrlForAnonymousUser(
                final String accountId, // YOUR AWS ACCOUNT ID
                final String initialTopicId, // Q TOPIC ID TO WHICH THE CONSTRUCTED URL POINTS AND SEARCHBAR PREPOPULATES INITIALLY
                final String namespace, // ANONYMOUS EMBEDDING REQUIRES SPECIFYING A VALID NAMESPACE FOR WHICH YOU WANT THE EMBEDDING URL
                final List<String> authorizedResourceArns, // Q SEARCHBAR TOPIC ARN LIST TO EMBED
                final List<String> allowedDomains, // RUNTIME ALLOWED DOMAINS FOR EMBEDDING
                final List<SessionTag> sessionTags // SESSION TAGS USED FOR ROW-LEVEL SECURITY
            ) throws Exception {
                AnonymousUserEmbeddingExperienceConfiguration experienceConfiguration = new AnonymousUserEmbeddingExperienceConfiguration();
                AnonymousUserQSearchBarEmbeddingConfiguration qSearchBarConfiguration = new AnonymousUserQSearchBarEmbeddingConfiguration();
                qSearchBarConfiguration.setInitialTopicId(initialTopicId);
                experienceConfiguration.setQSearchBar(qSearchBarConfiguration);

                GenerateEmbedUrlForAnonymousUserRequest generateEmbedUrlForAnonymousUserRequest = new GenerateEmbedUrlForAnonymousUserRequest()
                    .withAwsAccountId(accountId)
                    .withNamespace(namespace)
                    .withAuthorizedResourceArns(authorizedResourceArns)
                    .withExperienceConfiguration(experienceConfiguration)
                    .withSessionTags(sessionTags)
                    .withSessionLifetimeInMinutes(600L); // OPTIONAL: VALUE CAN BE [15-600]. DEFAULT: 600
                    .withAllowedDomains(allowedDomains);

                GenerateEmbedUrlForAnonymousUserResult qSearchBarEmbedUrl = quickSightClient.generateEmbedUrlForAnonymousUser(generateEmbedUrlForAnonymousUserRequest);

                return qSearchBarEmbedUrl.getEmbedUrl();
            }

        }
```

### JavaScript
<a name="embedded-q-bar-for-anonymous-users-js"></a>

```
global.fetch = require('node-fetch');
const AWS = require('aws-sdk');

function generateEmbedUrlForAnonymousUser(
    accountId, // YOUR AWS ACCOUNT ID
    initialTopicId, // Q TOPIC ID TO WHICH THE CONSTRUCTED URL POINTS
    quicksightNamespace, // VALID NAMESPACE WHERE YOU WANT TO DO NOAUTH EMBEDDING
    authorizedResourceArns, // Q SEARCHBAR TOPIC ARN LIST TO EMBED
    allowedDomains, // RUNTIME ALLOWED DOMAINS FOR EMBEDDING
    sessionTags, // SESSION TAGS USED FOR ROW-LEVEL SECURITY
    generateEmbedUrlForAnonymousUserCallback, // SUCCESS CALLBACK METHOD
    errorCallback // ERROR CALLBACK METHOD
    ) {
    const experienceConfiguration = {
        "QSearchBar": {
            "InitialTopicId": initialTopicId // TOPIC ID CAN BE FOUND IN THE URL ON THE TOPIC AUTHOR PAGE
        }
    };
    
    const generateEmbedUrlForAnonymousUserParams = {
        "AwsAccountId": accountId,
        "Namespace": quicksightNamespace,
        "AuthorizedResourceArns": authorizedResourceArns,
        "AllowedDomains": allowedDomains,
        "ExperienceConfiguration": experienceConfiguration,
        "SessionTags": sessionTags,
        "SessionLifetimeInMinutes": 600
    };

    const quicksightClient = new AWS.QuickSight({
        region: process.env.AWS_REGION,
        credentials: {
            accessKeyId: AccessKeyId,
            secretAccessKey: SecretAccessKey,
            sessionToken: SessionToken,
            expiration: Expiration
        }
    });

    quicksightClient.generateEmbedUrlForAnonymousUser(generateEmbedUrlForAnonymousUserParams, function(err, data) {
        if (err) {
            console.log(err, err.stack);
            errorCallback(err);
        } else {
            const result = {
                "statusCode": 200,
                "headers": {
                    "Access-Control-Allow-Origin": "*", // USE YOUR WEBSITE DOMAIN TO SECURE ACCESS TO THIS API
                    "Access-Control-Allow-Headers": "Content-Type"
                },
                "body": JSON.stringify(data),
                "isBase64Encoded": false
            }
            generateEmbedUrlForAnonymousUserCallback(result);
        }
    });
}
```

### Python3
<a name="embedded-q-bar-for-anonymous-users-py"></a>

```
import json
import boto3
from botocore.exceptions import ClientError
import time

# Create QuickSight and STS clients
quicksightClient = boto3.client('quicksight',region_name='us-west-2')
sts = boto3.client('sts')

# Function to generate embedded URL for anonymous user
# accountId: YOUR AWS ACCOUNT ID
# quicksightNamespace: VALID NAMESPACE WHERE YOU WANT TO DO NOAUTH EMBEDDING
# authorizedResourceArns: TOPIC ARN LIST TO EMBED
# allowedDomains: RUNTIME ALLOWED DOMAINS FOR EMBEDDING
# experienceConfiguration: configuration which specifies the TOPIC ID to point URL to
# sessionTags: SESSION TAGS USED FOR ROW-LEVEL SECURITY
def generateEmbedUrlForAnonymousUser(accountId, quicksightNamespace, authorizedResourceArns, allowedDomains, experienceConfiguration, sessionTags):
    try:
        response = quicksightClient.generate_embed_url_for_anonymous_user(
            AwsAccountId = accountId,
            Namespace = quicksightNamespace,
            AuthorizedResourceArns = authorizedResourceArns,
            AllowedDomains = allowedDomains,
            ExperienceConfiguration = experienceConfiguration,
            SessionTags = sessionTags,
            SessionLifetimeInMinutes = 600
        )
            
        return {
            'statusCode': 200,
            'headers': {"Access-Control-Allow-Origin": "*", "Access-Control-Allow-Headers": "Content-Type"},
            'body': json.dumps(response),
            'isBase64Encoded':  bool('false')
        }
    except ClientError as e:
        print(e)
        return "Error generating embeddedURL: " + str(e)
```

### Node.js
<a name="embedded-q-bar-for-anonymous-users-nodejs"></a>

以下範例顯示的 JavaScript (Node.js) 可在應用程式伺服器上用來產生嵌入式儀表板的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示儀表板。

**Example**  

```
const AWS = require('aws-sdk');
const https = require('https');

var quicksightClient = new AWS.Service({
    apiConfig: require('./quicksight-2018-04-01.min.json'),
    region: 'us-east-1',
});

quicksightClient.generateEmbedUrlForAnonymousUser({
    'AwsAccountId': '111122223333',
    'Namespace': 'DEFAULT'
    'AuthorizedResourceArns': '["topic-arn-topicId1","topic-arn-topicId2"]',
    'AllowedDomains': allowedDomains,
    'ExperienceConfiguration': { 
        'QSearchBar': {
            'InitialTopicId': 'U4zJMVZ2n2stZflc8Ou3iKySEb3BEV6f'
        }
    },
    'SessionTags': '["Key": tag-key-1,"Value": tag-value-1,{"Key": tag-key-1,"Value": tag-value-1}]',
    'SessionLifetimeInMinutes': 15
}, function(err, data) {
    console.log('Errors: ');
    console.log(err);
    console.log('Response: ');
    console.log(data);
});
```

**Example**  

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
//readability and added ellipsis to indicate that it's incomplete.
    { 
        Status: 200,
        EmbedUrl : 'https://quicksightdomain/embed/12345/dashboards/67890/sheets/12345/visuals/67890...',
        RequestId: '7bee030e-f191-45c4-97fe-d9faf0e03713' 
    }
```

### .NET/C\$1
<a name="embedded-q-bar-for-anonymous-users-cs"></a>

以下範例顯示的 .NET/C\$1 程式碼可在應用程式伺服器上用來產生嵌入式 Q 搜尋列的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示 Q 搜尋列。

**Example**  

```
using System;
using Amazon.QuickSight;
using Amazon.QuickSight.Model;

namespace GenerateQSearchBarEmbedUrlForAnonymousUser
{
    class Program
    {
        static void Main(string[] args)
        {
            var quicksightClient = new AmazonQuickSightClient(
                AccessKey,
                SecretAccessKey,
                SessionToken,
                Amazon.RegionEndpoint.USEast1);
            try
            {
                AnonymousUserQSearchBarEmbeddingConfiguration anonymousUserQSearchBarEmbeddingConfiguration
                    = new AnonymousUserQSearchBarEmbeddingConfiguration
                    {
                        InitialTopicId = "U4zJMVZ2n2stZflc8Ou3iKySEb3BEV6f"
                    };
                AnonymousUserEmbeddingExperienceConfiguration anonymousUserEmbeddingExperienceConfiguration
                    = new AnonymousUserEmbeddingExperienceConfiguration
                    {
                        QSearchBar = anonymousUserQSearchBarEmbeddingConfiguration
                    }; 
                
                Console.WriteLine(
                    quicksightClient.GenerateEmbedUrlForAnonymousUserAsync(new GenerateEmbedUrlForAnonymousUserRequest
                    {
                        AwsAccountId = "111122223333",
                        Namespace = "DEFAULT",
                        AuthorizedResourceArns '["topic-arn-topicId1","topic-arn-topicId2"]',
                        AllowedDomains = allowedDomains,
                        ExperienceConfiguration = anonymousUserEmbeddingExperienceConfiguration,
                        SessionTags = '["Key": tag-key-1,"Value": tag-value-1,{"Key": tag-key-1,"Value": tag-value-1}]',
                        SessionLifetimeInMinutes = 15,
                    }).Result.EmbedUrl
                );
            } catch (Exception ex) {
                Console.WriteLine(ex.Message);
            }
        }
    }
}
```

### AWS CLI
<a name="embedded-q-bar-for-anonymous-users-cli"></a>

若要擔任角色，請選擇下列其中一個 AWS Security Token Service (AWS STS) API 操作：
+ [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) – 在使用 IAM 身分擔任角色的情況下使用此操作。
+ [AssumeRoleWithWebIdentity](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html) – 在使用 Web 身分提供者驗證您的使用者時，請使用此操作。
+ [AssumeRoleWithSaml](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html) –在您使用 SAML 驗證使用者時，請使用此操作。

以下範例顯示用來設定 IAM 角色的 CLI 命令。角色需要啟用 `quicksight:GenerateEmbedUrlForAnonymousUser` 的許可。

```
aws sts assume-role \
     --role-arn "arn:aws:iam::111122223333:role/embedding_quicksight_q_search_bar_role" \
     --role-session-name anonymous caller
```

`assume-role` 操作會傳回三個輸出參數：存取金鑰、私密金鑰和工作階段字符。

**注意**  
若您呼叫 `AssumeRole` 操作時收到 `ExpiredToken` 錯誤，原因可能是先前的 `SESSION TOKEN` 仍在環境變數中。設定以下變數便可清除此錯誤：  
*AWS\$1ACCESS\$1KEY\$1ID* 
*AWS\$1SECRET\$1ACCESS\$1KEY* 
*AWS\$1SESSION\$1TOKEN* 

以下範例說明如何在 CLI 中設定這三個參數。對於 Microsoft Windows 電腦，請使用 `set`，不要使用 `export`。

```
export AWS_ACCESS_KEY_ID     = "access_key_from_assume_role"
export AWS_SECRET_ACCESS_KEY = "secret_key_from_assume_role"
export AWS_SESSION_TOKEN     = "session_token_from_assume_role"
```

對於瀏覽您網站的使用者，執行這些命令可將其角色工作階段 ID 設為 `embedding_quicksight_q_search_bar_role/QuickSightEmbeddingAnonymousPolicy`。角色工作階段 ID 由來自 `role-arn` 和 `role-session-name` 值的角色名稱所組成。對每個使用者使用唯一的角色工作階段 ID，可確保為每個使用者設定適當的許可。還能避免對使用者存取進行任何調節。*調節*是一項安全功能，可防止相同的使用者從多個位置存取 Amazon Quick Sight。此外，它使每個會話獨立且不同。如果您正在使用 Web 伺服器陣列 (例如負載平衡)，且工作階段重新連線到不同的伺服器，則會開始新的工作階段。

為了取得儀表板的簽章 URL，請從應用程式伺服器呼叫 `generate-embed-url-for-anynymous-user`。這會傳回可嵌入的儀表板 URL。下列範例會顯示如何使用伺服器端呼叫，針對匿名造訪您的 Web 入口網站或應用程式的使用者，產生內嵌式儀表板的 URL。

```
aws quicksight generate-embed-url-for-anonymous-user \
--aws-account-id 111122223333 \
--namespace default-or-something-else \
--authorized-resource-arns '["topic-arn-topicId1","topic-arn-topicId2"]' \
--allowed-domains '["domain1","domain2"]' \
--experience-configuration 'QSearchBar={InitialTopicId="topicId1"}' \
--session-tags '["Key": tag-key-1,"Value": tag-value-1,{"Key": tag-key-1,"Value": tag-value-1}]' \
--session-lifetime-in-minutes 15
```

如需使用此操作的詳細資訊，請參閱 [https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GenerateEmbedUrlForRegisteredUser.html)。您可以在您自己的程式碼中使用這個和其他 API 操作。

## 步驟 3：內嵌 Q 搜尋列 URL
<a name="embedded-q-bar-for-anonymous-users-step-3"></a>

**注意**  
內嵌的 Amazon Quick Sight Q 搜尋列提供傳統 Amazon Quick Sight Q&A 體驗。Amazon Quick Sight 與 Amazon Q Business 整合，以啟動新的生成式問答體驗。建議開發人員使用新的生成式問答功能。如需內嵌生成式問答體驗的詳細資訊，請參閱[在 Amazon Quick Sight 生成式問答體驗中內嵌 Amazon Q](https://docs.aws.amazon.com/quicksight/latest/user/embedding-gen-bi.html)。

在下一章節，您可以了解如何將步驟 3 中的 Q 搜尋列 URL 嵌入到網站或應用程式頁面中。您可以使用 [Amazon Quick Sight 內嵌 SDK](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) (JavaScript) 來執行此操作。您可以使用此 SDK 執行以下操作：
+ 將 Q 搜尋列放置在 HTML 頁面上。
+ 將參數傳遞至 Q 搜尋列。
+ 以針對您的應用程式而訂做的訊息來處理錯誤狀態。

若要產生可以內嵌到應用程式中的 URL，請呼叫 `GenerateEmbedUrlForAnonymousUser` API 操作。此 URL 的有效期為 5 分鐘，而產生的工作階段有效期最長為 10 小時。此 API 操作提供的 URL 附有可啟用單一登入工作階段的 `auth_code` 值。

以下是 `generate-embed-url-for-anonymous-user` 的回應範例。

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
//readability and added ellipsis to indicate that it's incomplete.
{
     "Status": "200",
     "EmbedUrl": "https://quicksightdomain/embedding/12345/q/search...",
     "RequestId": "7bee030e-f191-45c4-97fe-d9faf0e03713"
}
```

使用 [Amazon Quick Sight 內嵌 SDK ](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk)或將此 URL 新增至 iframe，在網頁中內嵌 Q 搜尋列。如果您設定固定高度和寬度數字 （以像素為單位），Amazon Quick Sight 會使用這些值，而且不會隨著視窗調整大小而變更視覺效果。如果您設定相對百分比高度和寬度，Amazon Quick Sight 會提供隨著視窗大小變更而修改的回應式配置。

若要這樣做，請確定託管內嵌 Q 搜尋列的網域位於*允許清單*上，即 Amazon Quick Sight 訂閱的已核准網域清單。這項要求將使未獲核准的域無法託管內嵌 Q 搜尋列，進而保護您的資料。如需為內嵌 Q 搜尋列新增網域的詳細資訊，請參閱[管理網域和內嵌](https://docs.aws.amazon.com/quicksight/latest/user/manage-qs-domains-and-embedding.html)。

當您使用 Amazon Quick Sight 內嵌 SDK 時，頁面上的 Q 搜尋列會根據狀態動態調整大小。透過使用 Amazon Quick Sight 內嵌 SDK，您也可以控制 Q 搜尋列中的參數，並根據頁面載入完成和錯誤接收回呼。

下列範例示範如何使用產生的 URL。此代碼在您的應用程式伺服器上生成。

### SDK 2.0
<a name="embedded-q-bar-for-anonymous-users-sdkv2"></a>

```
<!DOCTYPE html>
<html>

    <head>
        <title>Q Search Bar Embedding Example</title>
        <script src="https://unpkg.com/amazon-quicksight-embedding-sdk@2.0.0/dist/quicksight-embedding-js-sdk.min.js"></script>
        <script type="text/javascript">
            const embedQSearchBar = async() => {    
                const {
                    createEmbeddingContext,
                } = QuickSightEmbedding;

                const embeddingContext = await createEmbeddingContext({
                    onChange: (changeEvent, metadata) => {
                        console.log('Context received a change', changeEvent, metadata);
                    },
                });

                const frameOptions = {
                    url: "<YOUR_EMBED_URL>", // replace this value with the url generated via embedding API
                    container: '#experience-container',
                    height: "700px",
                    width: "1000px",
                    onChange: (changeEvent, metadata) => {
                        switch (changeEvent.eventName) {
                            case 'FRAME_MOUNTED': {
                                console.log("Do something when the experience frame is mounted.");
                                break;
                            }
                            case 'FRAME_LOADED': {
                                console.log("Do something when the experience frame is loaded.");
                                break;
                            }
                        }
                    },
                };

                const contentOptions = {
                    hideTopicName: false, 
                    theme: '<YOUR_THEME_ID>',
                    allowTopicSelection: true,
                    onMessage: async (messageEvent, experienceMetadata) => {
                        switch (messageEvent.eventName) {
                            case 'Q_SEARCH_OPENED': {
                                console.log("Do something when Q Search content expanded");
                                break;
                            }
                            case 'Q_SEARCH_CLOSED': {
                                console.log("Do something when Q Search content collapsed");
                                break;
                            }
                            case 'Q_SEARCH_SIZE_CHANGED': {
                                console.log("Do something when Q Search size changed");
                                break;
                            }
                            case 'CONTENT_LOADED': {
                                console.log("Do something when the Q Search is loaded.");
                                break;
                            }
                            case 'ERROR_OCCURRED': {
                                console.log("Do something when the Q Search fails loading.");
                                break;
                            }
                        }
                    }
                };
                const embeddedDashboardExperience = await embeddingContext.embedQSearchBar(frameOptions, contentOptions);
            };
        </script>
    </head>

    <body onload="embedQSearchBar()">
        <div id="experience-container"></div>
    </body>

</html>
```

### SDK 1.0
<a name="embedded-q-bar-for-anonymous-users-sdkv1"></a>

```
<!DOCTYPE html>
<html>

    <head>
        <title>QuickSight Q Search Bar Embedding</title>
        <script src="https://unpkg.com/amazon-quicksight-embedding-sdk@1.18.0/dist/quicksight-embedding-js-sdk.min.js"></script>
        <script type="text/javascript">
            var session

            function onError(payload) {
                console.log("Do something when the session fails loading");
            }

            function onOpen() {
                console.log("Do something when the Q search bar opens");
            }

            function onClose() {
                console.log("Do something when the Q search bar closes");
            }

            function embedQSearchBar() {
                var containerDiv = document.getElementById("embeddingContainer");
                var options = {
                    url: "https://us-east-1.quicksight.aws.amazon.com/sn/dashboards/dashboardId?isauthcode=true&identityprovider=quicksight&code=authcode", // replace this dummy url with the one generated via embedding API
                    container: containerDiv,
                    width: "1000px",
                    locale: "en-US",
                    qSearchBarOptions: {
                        expandCallback: onOpen,
                        collapseCallback: onClose,
                        iconDisabled: false,
                        topicNameDisabled: false, 
                        themeId: 'bdb844d0-0fe9-4d9d-b520-0fe602d93639',
                        allowTopicSelection: true
                    }
                };
                session = QuickSightEmbedding.embedQSearchBar(options);
                session.on("error", onError);
            }

            function onCountryChange(obj) {
                session.setParameters({country: obj.value});
            }
        </script>
    </head>

    <body onload="embedQSearchBar()">
        <div id="embeddingContainer"></div>
    </body>

</html>
```

若要讓此範例運作，請務必使用 Amazon Quick Sight 內嵌 SDK，使用 JavaScript 在您的網站上載入內嵌的 Q 搜尋列。為獲得您的版本，請執行以下其中一項操作：
+ 從 GitHub 下載 [Amazon Quick Sight 內嵌 SDK](https://github.com/awslabs/amazon-quicksight-embedding-sdk#step-3-create-the-quicksight-session-object)。此儲存庫由一組 Amazon Quick Sight 開發人員維護。
+ 從 [https://www.npmjs.com/package/amazon-quicksight-embedding-sdk](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) 下載最新的內嵌開發套件版本。
+ 如果您使用 JavaScript 相依性的 `npm`，請執行下列命令來下載並安裝它。

  ```
  npm install amazon-quicksight-embedding-sdk
  ```

## 選用的 Amazon Quick Sight Q 搜尋列內嵌功能
<a name="embedded-q-bar-for-anonymous-users-step-4"></a>

**注意**  
內嵌的 Amazon Quick Sight Q 搜尋列提供傳統 Amazon Quick Sight Q&A 體驗。Amazon Quick Sight 與 Amazon Q Business 整合，以啟動新的生成式問答體驗。建議開發人員使用新的生成式問答功能。如需內嵌生成式問答體驗的詳細資訊，請參閱[在 Amazon Quick Sight 生成式問答體驗中內嵌 Amazon Q](https://docs.aws.amazon.com/quicksight/latest/user/embedding-gen-bi.html)。

下列選用功能可供使用嵌入 SDK 的嵌入式 Q 搜尋列使用。

### 調用 Q 搜尋列動作
<a name="w2aac35c27c21c43c31c17c21b7"></a>

下列選項僅支援 Q 搜尋列內嵌。
+ 設定 Q 搜尋列問題 – 此功能會將問題傳送至 Q 搜尋列，並立即查詢問題。它也會自動開啟 Q 快顯。

  ```
  qBar.setQBarQuestion('show me monthly revenue');
  ```
+ 關閉 Q 快顯 – 此功能關閉 Q 快顯窗口，並將 iframe 回復至原來的 Q 搜尋列大小。

  ```
  qBar.closeQPopover();
  ```

如需詳細資訊，請參閱 [Amazon Quick Sight 內嵌 SDK](https://github.com/awslabs/amazon-quicksight-embedding-sdk)。

# 使用 GetDashboardEmbedURL 和 GetSessionEmbedURL API 操作內嵌分析
<a name="embedded-analytics-deprecated"></a>


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

下列用於內嵌 Amazon Quick Sight 儀表板和 Amazon Quick Sight 主控台的 API 操作已由 GenerateEmbedUrlForAnonymousUser和 GenerateEmbedUrlForRegisteredUser API 操作取代。您仍然可以使用它們在應用程式中內嵌分析，但它們不再維護，也不包含最新的內嵌特性或功能。如需up-to-date內嵌體驗，請參閱將 [Amazon Quick Sight 分析內嵌至您的應用程式](https://docs.aws.amazon.com/quicksight/latest/user/embedding-overview.html)
+ [GetDashboardEmbedUrl](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GetDashboardEmbedUrl.html) API 操作可內嵌互動式儀表板。
+ [GetSessionEmbedUrl](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GetSessionEmbedUrl.html) API 操作內嵌 Amazon Quick Sight 主控台。

**Topics**
+ [

# 使用 GetDashboardEmbedURL (舊 API) 為所有人內嵌儀表板
](embedded-analytics-dashboards-with-anonymous-users-get.md)
+ [

# 使用 GetDashboardEmbedUrl (舊 API) 為已註冊使用者內嵌儀表板
](embedded-analytics-dashboards-for-authenticated-users-get.md)
+ [

# 使用 嵌入 Amazon Quick Sight 主控台 GetSessionEmbedUrl（舊 API)
](embedded-analytics-full-console-for-authenticated-users-get.md)

# 使用 GetDashboardEmbedURL (舊 API) 為所有人內嵌儀表板
<a name="embedded-analytics-dashboards-with-anonymous-users-get"></a>

**重要**  
Amazon Quick Sight 有用於內嵌分析的新 APIs： `GenerateEmbedUrlForAnonymousUser`和 `GenerateEmbedUrlForRegisteredUser`。  
您仍然可以使用 `GetDashboardEmbedUrl`和 `GetSessionEmbedUrl` APIs 來內嵌儀表板和 Amazon Quick Sight 主控台，但它們不包含最新的內嵌功能。如需up-to-date內嵌體驗，請參閱將 [Amazon Quick Sight 分析內嵌至您的應用程式](https://docs.aws.amazon.com/quicksight/latest/user/embedding-overview.html)。


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

在下列各節中，您可以找到如何使用 GetDashboardEmbedURL 為每個人 （未驗證的使用者） 設定內嵌 Amazon Quick Sight 儀表板的詳細資訊。

**Topics**
+ [

# 步驟 1：設定許可
](embedded-analytics-dashboards-with-anonymous-users-get-step-1.md)
+ [

# 步驟 2：獲取帶有身分驗證碼的 URL
](embedded-analytics-dashboards-with-anonymous-users-get-step-2.md)
+ [

# 步驟 3：內嵌儀表板 URL
](embedded-analytics-dashboards-with-anonymous-users-get-step-3.md)

# 步驟 1：設定許可
<a name="embedded-analytics-dashboards-with-anonymous-users-get-step-1"></a>

**重要**  
Amazon Quick Sight 有用於內嵌分析的新 APIs： `GenerateEmbedUrlForAnonymousUser`和 `GenerateEmbedUrlForRegisteredUser`。  
您仍然可以使用 `GetDashboardEmbedUrl`和 `GetSessionEmbedUrl` APIs 來內嵌儀表板和 Amazon Quick Sight 主控台，但它們不包含最新的內嵌功能。如需up-to-date內嵌體驗，請參閱將 [Amazon Quick Sight 分析內嵌至您的應用程式](https://docs.aws.amazon.com/quicksight/latest/user/embedding-overview.html)。


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

在以下章節中，您可以了解如何為後端應用程式或 Web 伺服器設定許可。這個任務需要有 IAM 的管理存取權。

每個存取儀表板的使用者都會擔任一個角色，為他們提供儀表板的 Amazon Quick Sight 存取權和許可。若要實現這一點，請在 AWS 您的帳戶中建立 IAM 角色。將 IAM 政策與此角色建立關聯，以提供許可給擔任此角色的任何使用者。

下列範例政策提供搭配 `IdentityType=ANONYMOUS` 使用的許可。若要使用此方法，您也需要在 AWS 帳戶中使用工作階段套件或工作階段容量定價。否則，當使用者嘗試存取儀表板時，會傳回錯誤 `UnsupportedPricingPlanException`。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
              "quicksight:GetDashboardEmbedUrl",
              "quickSight:GetAnonymousUserEmbedUrl"
            ],
            "Resource": "*"
        }
    ]
}
```

------

您的應用程式的 IAM 身分必須有相關聯的信任政策，以允許存取至您剛建立的角色。這表示當使用者存取您的應用程式時，您的應用程式可代表使用者擔任該角色，並開啟儀表板。以下範例顯示稱為 `QuickSightEmbeddingAnonymousPolicy` 的角色，其前面有範例政策做為資源。

如需有關信任政策的詳細資訊，請參閱**《IAM 使用者指南》中的[ IAM 中的臨時安全憑證](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html)。

# 步驟 2：獲取帶有身分驗證碼的 URL
<a name="embedded-analytics-dashboards-with-anonymous-users-get-step-2"></a>

**重要**  
Amazon Quick Sight 有用於內嵌分析的新 APIs： `GenerateEmbedUrlForAnonymousUser`和 `GenerateEmbedUrlForRegisteredUser`。  
您仍然可以使用 `GetDashboardEmbedUrl`和 `GetSessionEmbedUrl` APIs 來內嵌儀表板和 Amazon Quick Sight 主控台，但它們不包含最新的內嵌功能。如需up-to-date內嵌體驗，請參閱將 [Amazon Quick Sight 分析內嵌至您的應用程式](https://docs.aws.amazon.com/quicksight/latest/user/embedding-overview.html)。


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

在下一章節，您可以了解如何在您的應用程式伺服器上代表匿名訪客進行身分驗證，以及取得可內嵌的儀表板 URL。

當使用者存取您的應用程式時，該應用程式代表使用者擔任 IAM 角色。然後，如果使用者尚未存在，它會將使用者新增至 Amazon Quick Sight。接著，它傳遞識別符當作唯一的角色工作階段 ID。

下列範例會代表使用者執行 IAM 身分驗證。它傳遞識別符當作唯一的角色工作階段 ID。此代碼在您的應用程式伺服器上運行。

------
#### [ Java ]

```
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.auth.AWSCredentialsProvider;
import com.amazonaws.regions.Regions;
import com.amazonaws.services.quicksight.AmazonQuickSight;
import com.amazonaws.services.quicksight.AmazonQuickSightClientBuilder;
import com.amazonaws.services.quicksight.model.GetDashboardEmbedUrlRequest;
import com.amazonaws.services.quicksight.model.GetDashboardEmbedUrlResult;

/**
 * Class to call QuickSight AWS SDK to get url for dashboard embedding.
 */
public class GetQuicksightEmbedUrlNoAuth {

    private static String ANONYMOUS = "ANONYMOUS";

    private final AmazonQuickSight quickSightClient;

    public GetQuicksightEmbedUrlNoAuth() {
        this.quickSightClient = AmazonQuickSightClientBuilder
                .standard()
                .withRegion(Regions.US_EAST_1.getName())
                .withCredentials(new AWSCredentialsProvider() {
                                     @Override
                                     public AWSCredentials getCredentials() {
                                         // provide actual IAM access key and secret key here
                                         return new BasicAWSCredentials("access-key", "secret-key");
                                     }

                                     @Override
                                     public void refresh() {}
                                 }
                )
                .build();
    }

    public String getQuicksightEmbedUrl(
            final String accountId, // YOUR AWS ACCOUNT ID
            final String dashboardId, // YOUR DASHBOARD ID TO EMBED
            final String addtionalDashboardIds, // ADDITIONAL DASHBOARD-1 ADDITIONAL DASHBOARD-2
            final boolean resetDisabled, // OPTIONAL PARAMETER TO ENABLE DISABLE RESET BUTTON IN EMBEDDED DASHBAORD
            final boolean undoRedoDisabled // OPTIONAL PARAMETER TO ENABLE DISABLE UNDO REDO BUTTONS IN EMBEDDED DASHBAORD
    ) throws Exception {
        GetDashboardEmbedUrlRequest getDashboardEmbedUrlRequest = new GetDashboardEmbedUrlRequest()
                .withDashboardId(dashboardId)
                .withAdditionalDashboardIds(addtionalDashboardIds)
                .withAwsAccountId(accountId)
                .withNamespace("default") // Anonymous embedding requires specifying a valid namespace for which you want the embedding url
                .withIdentityType(ANONYMOUS)
                .withResetDisabled(resetDisabled)
                .withUndoRedoDisabled(undoRedoDisabled);

        GetDashboardEmbedUrlResult dashboardEmbedUrl = quickSightClient.getDashboardEmbedUrl(getDashboardEmbedUrlRequest);

        return dashboardEmbedUrl.getEmbedUrl();
    }
}
```

------
#### [ JavaScript ]

```
global.fetch = require('node-fetch');
const AWS = require('aws-sdk');

function getDashboardEmbedURL(
    accountId, // YOUR AWS ACCOUNT ID
    dashboardId, // YOUR DASHBOARD ID TO EMBED
    additionalDashboardIds, // ADDITIONAL DASHBOARD-1 ADDITIONAL DASHBOARD-2
    quicksightNamespace, // VALID NAMESPACE WHERE YOU WANT TO DO NOAUTH EMBEDDING
    resetDisabled, // OPTIONAL PARAMETER TO ENABLE DISABLE RESET BUTTON IN EMBEDDED DASHBAORD
    undoRedoDisabled, // OPTIONAL PARAMETER TO ENABLE DISABLE UNDO REDO BUTTONS IN EMBEDDED DASHBAORD
    getEmbedUrlCallback, // GETEMBEDURL SUCCESS CALLBACK METHOD
    errorCallback // GETEMBEDURL ERROR CALLBACK METHOD
    ) {
    const getDashboardParams = {
        AwsAccountId: accountId,
        DashboardId: dashboardId,
        AdditionalDashboardIds: additionalDashboardIds,
        Namespace: quicksightNamespace,
        IdentityType: 'ANONYMOUS',
        ResetDisabled: resetDisabled,
        SessionLifetimeInMinutes: 600,
        UndoRedoDisabled: undoRedoDisabled
    };

    const quicksightGetDashboard = new AWS.QuickSight({
        region: process.env.AWS_REGION,
    });

    quicksightGetDashboard.getDashboardEmbedUrl(getDashboardParams, function(err, data) {
        if (err) {
            console.log(err, err.stack);
            errorCallback(err);
        } else {
            const result = {
                "statusCode": 200,
                "headers": {
                    "Access-Control-Allow-Origin": "*", // USE YOUR WEBSITE DOMAIN TO SECURE ACCESS TO GETEMBEDURL API
                    "Access-Control-Allow-Headers": "Content-Type"
                },
                "body": JSON.stringify(data),
                "isBase64Encoded": false
            }
            getEmbedUrlCallback(result);
        }
    });
}
```

------
#### [ Python3 ]

```
import json
import boto3
from botocore.exceptions import ClientError
import time

# Create QuickSight and STS clients
qs = boto3.client('quicksight',region_name='us-east-1')
sts = boto3.client('sts')

# Function to generate embedded URL
# accountId: YOUR AWS ACCOUNT ID
# dashboardId: YOUR DASHBOARD ID TO EMBED
# additionalDashboardIds: ADDITIONAL DASHBOARD-1 ADDITIONAL DASHBOARD-2 WITHOUT COMMAS
# quicksightNamespace: VALID NAMESPACE WHERE YOU WANT TO DO NOAUTH EMBEDDING
# resetDisabled: PARAMETER TO ENABLE DISABLE RESET BUTTON IN EMBEDDED DASHBAORD
# undoRedoDisabled: OPTIONAL PARAMETER TO ENABLE DISABLE UNDO REDO BUTTONS IN EMBEDDED DASHBAORD
def getDashboardURL(accountId, dashboardId, quicksightNamespace, resetDisabled, undoRedoDisabled):
    try:
        response = qs.get_dashboard_embed_url(
            AwsAccountId = accountId,
            DashboardId = dashboardId,
            AdditionalDashboardIds = additionalDashboardIds,
            Namespace = quicksightNamespace,
            IdentityType = 'ANONYMOUS',
            SessionLifetimeInMinutes = 600,
            UndoRedoDisabled = undoRedoDisabled,
            ResetDisabled = resetDisabled
        )
            
        return {
            'statusCode': 200,
            'headers': {"Access-Control-Allow-Origin": "*", "Access-Control-Allow-Headers": "Content-Type"},
            'body': json.dumps(response),
            'isBase64Encoded':  bool('false')
        }
    except ClientError as e:
        print(e)
        return "Error generating embeddedURL: " + str(e)
```

------
#### [ Node.js ]

以下範例顯示的 JavaScript (Node.js) 可在應用程式伺服器上用來取得嵌入儀表板的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示儀表板。

**Example**  

```
const AWS = require('aws-sdk');
            const https = require('https');
            
            var quicksight = new AWS.Service({
                apiConfig: require('./quicksight-2018-04-01.min.json'),
                region: 'us-east-1',
            });
            
            quicksight.getDashboardEmbedUrl({
                'AwsAccountId': '111122223333',
                'DashboardId': 'dashboard-id',
                'AdditionalDashboardIds': 'added-dashboard-id-1 added-dashboard-id-2 added-dashboard-id-3'
                'Namespace' : 'default',
                'IdentityType': 'ANONYMOUS',
                'SessionLifetimeInMinutes': 100,
                'UndoRedoDisabled': false,
                'ResetDisabled': true
            
            }, function(err, data) {
                console.log('Errors: ');
                console.log(err);
                console.log('Response: ');
                console.log(data);
            });
```

**Example**  

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
            //readability and added ellipsis to indicate that it's incomplete.
                                { Status: 200,
              EmbedUrl: 'https://dashboards.example.com/embed/620bef10822743fab329fb3751187d2d…
              RequestId: '7bee030e-f191-45c4-97fe-d9faf0e03713' }
```

------
#### [ .NET/C\$1 ]

以下範例顯示的 .NET/C\$1 程式碼可在應用程式伺服器上用來取得嵌入儀表板的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示儀表板。

**Example**  

```
            var client = new AmazonQuickSightClient(
                AccessKey,
                SecretAccessKey,
                sessionToken,
                Amazon.RegionEndpoint.USEast1);
            try
            {
                Console.WriteLine(
                    client.GetDashboardEmbedUrlAsync(new GetDashboardEmbedUrlRequest
                    {
                        AwsAccountId = “111122223333”,
                        DashboardId = "dashboard-id",
                        AdditionalDashboardIds = "added-dashboard-id-1 added-dashboard-id-2 added-dashboard-id-3",
                        Namespace = default,
                        IdentityType = IdentityType.ANONYMOUS,
                        SessionLifetimeInMinutes = 600,
                        UndoRedoDisabled = false,
                        ResetDisabled = true
                    }).Result.EmbedUrl
                );
            } catch (Exception ex) {
                Console.WriteLine(ex.Message);
            }
```

------
#### [ AWS CLI ]

若要擔任角色，請選擇下列其中一個 AWS Security Token Service (AWS STS) API 操作：
+ [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) – 在使用 IAM 身分擔任角色的情況下使用此操作。
+ [AssumeRoleWithWebIdentity](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html) – 在使用 Web 身分提供者驗證您的使用者時，請使用此操作。
+ [AssumeRoleWithSaml](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html) –在您使用安全性聲明標記語言 (SAML) 驗證使用者時，請使用此操作。

以下範例顯示用來設定 IAM 角色的 CLI 命令。角色需要啟用 `quicksight:GetDashboardEmbedURL` 的許可。

```
aws sts assume-role \
     --role-arn "arn:aws:iam::11112222333:role/QuickSightEmbeddingAnonymousPolicy" \
     --role-session-name anonymous caller
```

`assume-role` 操作會傳回三個輸出參數：存取金鑰、私密金鑰和工作階段字符。

**注意**  
若您呼叫 `AssumeRole` 操作時收到 `ExpiredToken` 錯誤，原因可能是先前的 `SESSION TOKEN` 仍在環境變數中。設定以下變數便可清除此錯誤：  
*AWS\$1ACCESS\$1KEY\$1ID* 
*AWS\$1SECRET\$1ACCESS\$1KEY* 
*AWS\$1SESSION\$1TOKEN* 

以下範例說明如何在 CLI 中設定這三個參數。如果您使用 Microsoft Windows 電腦，請使用 `set`，不要使用 `export`。

```
export AWS_ACCESS_KEY_ID     = "access_key_from_assume_role"
export AWS_SECRET_ACCESS_KEY = "secret_key_from_assume_role"
export AWS_SESSION_TOKEN     = "session_token_from_assume_role"
```

對於瀏覽您網站的使用者，執行這些命令可將其角色工作階段 ID 設為 `embedding_quicksight_dashboard_role/QuickSightEmbeddingAnonymousPolicy`。角色工作階段 ID 由來自 `role-arn` 和 `role-session-name` 值的角色名稱所組成。對每個使用者使用唯一的角色工作階段 ID，可確保為每個訪問使用者設定適當的許可。它還使每個會話獨立且不同。如果您正在使用 Web 伺服器陣列 (例如負載平衡)，且工作階段重新連線到不同的伺服器，則會開始新的工作階段。

為了取得儀表板的簽章 URL，請從應用程式伺服器呼叫 `get-dashboard-embed-url`。這會傳回可嵌入的儀表板 URL。下列範例顯示如何使用伺服器端呼叫，針對匿名造訪您的 Web 入口網站或應用程式的使用者，獲取內嵌式儀表板的 URL。

```
aws quicksight get-dashboard-embed-url \
     --aws-account-id 111122223333 \
     --dashboard-id dashboard-id \
     --additional-dashboard-ids added-dashboard-id-1 added-dashboard-id-2 added-dashboard-id-3
     --namespace default-or-something-else \
     --identity-type ANONYMOUS \
     --session-lifetime-in-minutes 30 \
     --undo-redo-disabled true \
     --reset-disabled true \
     --user-arn arn:aws:quicksight:us-east-1:111122223333:user/default/QuickSightEmbeddingAnonymousPolicy/embeddingsession
```

如需有關使用此操作的詳細資訊，請參閱 [https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GetDashboardEmbedUrl.html](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GetDashboardEmbedUrl.html)。您可以在您自己的程式碼中使用這個和其他 API 操作。

------

# 步驟 3：內嵌儀表板 URL
<a name="embedded-analytics-dashboards-with-anonymous-users-get-step-3"></a>

**重要**  
Amazon Quick Sight 有用於內嵌分析的新 APIs： `GenerateEmbedUrlForAnonymousUser`和 `GenerateEmbedUrlForRegisteredUser`。  
您仍然可以使用 `GetDashboardEmbedUrl`和 `GetSessionEmbedUrl` APIs 來內嵌儀表板和 Amazon Quick Sight 主控台，但它們不包含最新的內嵌功能。如需up-to-date內嵌體驗，請參閱將 [Amazon Quick Sight 分析內嵌至您的應用程式](https://docs.aws.amazon.com/quicksight/latest/user/embedding-overview.html)。


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

在下一節中，您可以了解如何使用 [Amazon Quick Sight 內嵌 SDK](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) (JavaScript)，在網站或應用程式頁面的步驟 2 中內嵌儀表板 URL。您可以使用此 SDK 執行以下操作：
+ 將儀表板放在 HTML 頁面。
+ 將參數傳遞到儀表板。
+ 以針對您的應用程式而訂做的訊息來處理錯誤狀態。

呼叫 `GetDashboardEmbedUrl` API 操作以獲得可內嵌應用程式的 URL。此 URL 的有效期為 5 分鐘，而產生的工作階段有效期為 10 小時。此 API 操作提供的 URL 附有可啟用單一登入工作階段的 `auth_code`。

以下是 `get-dashboard-embed-url` 的回應範例。

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
//readability and added ellipsis to indicate that it's incomplete.
{
     "Status": "200",
     "EmbedUrl": "https: //dashboards.example.com/embed/620bef10822743fab329fb3751187d2d...",
     "RequestId": "7bee030e-f191-45c4-97fe-d9faf0e03713"
}
```

使用 Amazon Quick Sight [內嵌 SDK ](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk)或將此 URL 新增至 iframe，將此儀表板內嵌在您的網頁中。如果您設定固定高度和寬度數字 （以像素為單位），Amazon Quick Sight 會使用這些值，而且不會隨著視窗調整大小而變更視覺效果。如果您設定相對百分比高度和寬度，Amazon Quick Sight 會提供隨著視窗大小變更而修改的回應式配置。透過使用 Amazon Quick Sight 內嵌 SDK，您也可以控制儀表板中的參數，並根據頁面載入完成和錯誤接收回呼。

下列範例示範如何使用產生的 URL。此代碼駐留在您的應用程式伺服器上。

```
<!DOCTYPE html>
<html>

<head>
    <title>Basic Embed</title>
    <!-- You can download the latest QuickSight embedding SDK version from https://www.npmjs.com/package/amazon-quicksight-embedding-sdk -->
    <!-- Or you can do "npm install amazon-quicksight-embedding-sdk", if you use npm for javascript dependencies -->
    <script src="./quicksight-embedding-js-sdk.min.js"></script>
    <script type="text/javascript">
        var dashboard;

        function embedDashboard() {
            var containerDiv = document.getElementById("embeddingContainer");
            var options = {
                // replace this dummy url with the one generated via embedding API
                url: "https://us-east-1.quicksight.aws.amazon.com/sn/dashboards/dashboardId?isauthcode=true&identityprovider=quicksight&code=authcode",  
                container: containerDiv,
                scrolling: "no",
                height: "700px",
                width: "1000px",
                footerPaddingEnabled: true
            };
            dashboard = QuickSightEmbedding.embedDashboard(options);
        }
    </script>
</head>

<body onload="embedDashboard()">
    <div id="embeddingContainer"></div>
</body>

</html>
```

若要讓此範例運作，請務必使用 Amazon Quick Sight 內嵌 SDK，使用 JavaScript 在您的網站上載入內嵌儀表板。為獲得您的版本，請執行以下其中一項操作：
+ 從 GitHub 下載 [Amazon Quick Sight 內嵌 SDK](https://github.com/awslabs/amazon-quicksight-embedding-sdk#step-3-create-the-quicksight-session-object)。此儲存庫由一組 Amazon Quick Sight 開發人員維護。
+ 從 [https://www.npmjs.com/package/amazon-quicksight-embedding-sdk](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) 下載最新的 QuickSight 內嵌開發套件版本。
+ 如果您使用 JavaScript 相依性的 `npm`，請執行下列命令來下載並安裝它。

  ```
  npm install amazon-quicksight-embedding-sdk
  ```

# 使用 GetDashboardEmbedUrl (舊 API) 為已註冊使用者內嵌儀表板
<a name="embedded-analytics-dashboards-for-authenticated-users-get"></a>

**重要**  
Amazon Quick Sight 有用於內嵌分析的新 APIs： `GenerateEmbedUrlForAnonymousUser`和 `GenerateEmbedUrlForRegisteredUser`。  
您仍然可以使用 `GetDashboardEmbedUrl`和 `GetSessionEmbedUrl` APIs 來內嵌儀表板和 Amazon Quick Sight 主控台，但它們不包含最新的內嵌功能。如需up-to-date內嵌體驗，請參閱將 [Amazon Quick Sight 分析內嵌至您的應用程式](https://docs.aws.amazon.com/quicksight/latest/user/embedding-overview.html)。

在下列各節中，您可以找到如何使用 為已註冊使用者設定內嵌 Amazon Quick Sight 儀表板的詳細資訊`GetDashboardEmbedUrl`。

**Topics**
+ [

# 步驟 1：設定許可
](embedded-dashboards-for-authenticated-users-get-step-1.md)
+ [

# 步驟 2：獲取帶有身分驗證碼的 URL
](embedded-dashboards-for-authenticated-users-get-step-2.md)
+ [

# 步驟 3：內嵌儀表板 URL
](embedded-dashboards-for-authenticated-users-get-step-3.md)

# 步驟 1：設定許可
<a name="embedded-dashboards-for-authenticated-users-get-step-1"></a>

**重要**  
Amazon Quick Sight 有用於內嵌分析的新 APIs： `GenerateEmbedUrlForAnonymousUser`和 `GenerateEmbedUrlForRegisteredUser`。  
您仍然可以使用 `GetDashboardEmbedUrl`和 `GetSessionEmbedUrl` APIs 來內嵌儀表板和 Amazon Quick Sight 主控台，但它們不包含最新的內嵌功能。如需up-to-date內嵌體驗，請參閱將 [Amazon Quick Sight 分析內嵌至您的應用程式](https://docs.aws.amazon.com/quicksight/latest/user/embedding-overview.html)。

在以下章節中，您可以了解如何為後端應用程式或 Web 伺服器設定許可。這個任務需要有 IAM 的管理存取權。

每個存取儀表板的使用者都會擔任一個角色，為他們提供儀表板的 Amazon Quick Sight 存取權和許可。若要實現這一點，請在 AWS 您的帳戶中建立 IAM 角色。將 IAM 政策與此角色建立關聯，以提供許可給擔任此角色的任何使用者。IAM 角色需要提供擷取儀表板 URL 的許可。對於這一點，您新增 `quicksight:GetDashboardEmbedUrl`。

下列範例政策提供搭配 `IdentityType=IAM` 使用的許可。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "quicksight:GetDashboardEmbedUrl"
            ],
            "Resource": "*"
        }
    ]
}
```

------

下列範例政策提供擷取儀表板 URL 的許可。`quicksight:RegisterUser` 如果您要建立初次成為 Amazon Quick Sight 讀者的使用者，您可以將政策與 搭配使用。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": "quicksight:RegisterUser",
      "Resource": "*",
      "Effect": "Allow"
    },
    {
      "Action": "quicksight:GetDashboardEmbedUrl",
      "Resource": "*",
      "Effect": "Allow"
    }
  ]
}
```

------

如果您使用 `QUICKSIGHT` 作為您的 `identityType`，並提供使用者的 Amazon Resource Name (ARN)，您還需要在政策中允許 `quicksight:GetAuthCode` 動作。下列範例政策提供此許可。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "quicksight:GetDashboardEmbedUrl",
        "quicksight:GetAuthCode"
      ],
      "Resource": "*"
    }
  ]
}
```

------

您的應用程式的 IAM 身分必須有相關聯的信任政策，以允許存取至您剛建立的角色。這表示當使用者存取您的應用程式時，您的應用程式可以代表使用者擔任該角色，並在 Amazon Quick Sight 中佈建使用者。以下範例顯示稱為 `embedding_quicksight_dashboard_role` 的角色，其前面有範例政策做為資源。

如需 OpenID Connect 或 SAML 身分驗證的信任政策詳細資訊，請參閱 *IAM 使用者指南*的下列各節：
+ [建立 Web 身分的角色或 OpenID Connect 聯合身分 (主控台)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_oidc.html)
+ [為 SAML 2.0 聯合身分建立角色 (主控台)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html)

# 步驟 2：獲取帶有身分驗證碼的 URL
<a name="embedded-dashboards-for-authenticated-users-get-step-2"></a>

**重要**  
Amazon Quick Sight 有用於內嵌分析的新 APIs： `GenerateEmbedUrlForAnonymousUser`和 `GenerateEmbedUrlForRegisteredUser`。  
您仍然可以使用 `GetDashboardEmbedUrl`和 `GetSessionEmbedUrl` APIs 來內嵌儀表板和 Amazon Quick Sight 主控台，但它們不包含最新的內嵌功能。如需up-to-date內嵌體驗，請參閱將 [Amazon Quick Sight 分析內嵌至您的應用程式](https://docs.aws.amazon.com/quicksight/latest/user/embedding-overview.html)。

在下一章節，您可以了解如何在您的應用程式伺服器上驗證使用者，以及取得可內嵌的儀表板 URL。

當使用者存取您的應用程式時，該應用程式代表使用者擔任 IAM 角色。然後，如果使用者尚未存在，它會將使用者新增至 Amazon Quick Sight。接著，它傳遞識別符當作唯一的角色工作階段 ID。

執行所述的步驟可確保儀表板的每個檢視器都是在 Amazon Quick Sight 中唯一佈建。它還會強制執行個別使用者設定，例如資料列層級的安全性和參數的動態預設值。

下列範例會代表使用者執行 IAM 身分驗證。此代碼在您的應用程式伺服器上運行。

------
#### [ Java ]

```
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.AWSStaticCredentialsProvider;
import com.amazonaws.auth.BasicSessionCredentials;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.auth.AWSCredentialsProvider;
import com.amazonaws.regions.Regions;
import com.amazonaws.services.quicksight.AmazonQuickSight;
import com.amazonaws.services.quicksight.AmazonQuickSightClientBuilder;
import com.amazonaws.services.quicksight.model.GetDashboardEmbedUrlRequest;
import com.amazonaws.services.quicksight.model.GetDashboardEmbedUrlResult;
import com.amazonaws.services.securitytoken.AWSSecurityTokenService;
import com.amazonaws.services.securitytoken.model.AssumeRoleRequest;
import com.amazonaws.services.securitytoken.model.AssumeRoleResult;

/**
 * Class to call QuickSight AWS SDK to get url for dashboard embedding.
 */
public class GetQuicksightEmbedUrlIAMAuth {

    private static String IAM = "IAM";

    private final AmazonQuickSight quickSightClient;

    private final AWSSecurityTokenService awsSecurityTokenService;

    public GetQuicksightEmbedUrlIAMAuth(final AWSSecurityTokenService awsSecurityTokenService) {
        this.quickSightClient = AmazonQuickSightClientBuilder
                .standard()
                .withRegion(Regions.US_EAST_1.getName())
                .withCredentials(new AWSCredentialsProvider() {
                                     @Override
                                     public AWSCredentials getCredentials() {
                                         // provide actual IAM access key and secret key here
                                         return new BasicAWSCredentials("access-key", "secret-key");
                                     }

                                     @Override
                                     public void refresh() {}
                                 }
                )
                .build();
        this.awsSecurityTokenService = awsSecurityTokenService;
    }

    public String getQuicksightEmbedUrl(
            final String accountId, // YOUR AWS ACCOUNT ID
            final String dashboardId, // YOUR DASHBOARD ID TO EMBED
            final String openIdToken, // TOKEN TO ASSUME ROLE WITH ROLEARN
            final String roleArn, // IAM USER ROLE TO USE FOR EMBEDDING
            final String sessionName, // SESSION NAME FOR THE ROLEARN ASSUME ROLE
            final boolean resetDisabled, // OPTIONAL PARAMETER TO ENABLE DISABLE RESET BUTTON IN EMBEDDED DASHBAORD
            final boolean undoRedoDisabled // OPTIONAL PARAMETER TO ENABLE DISABLE UNDO REDO BUTTONS IN EMBEDDED DASHBAORD
    ) throws Exception {
        AssumeRoleRequest request = new AssumeRoleRequest()
                .withRoleArn(roleArn)
                .withRoleSessionName(sessionName)
                .withTokenCode(openIdToken)
                .withDurationSeconds(3600);
        AssumeRoleResult assumeRoleResult = awsSecurityTokenService.assumeRole(request);

        AWSCredentials temporaryCredentials = new BasicSessionCredentials(
                assumeRoleResult.getCredentials().getAccessKeyId(),
                assumeRoleResult.getCredentials().getSecretAccessKey(),
                assumeRoleResult.getCredentials().getSessionToken());
        AWSStaticCredentialsProvider awsStaticCredentialsProvider = new AWSStaticCredentialsProvider(temporaryCredentials);

        GetDashboardEmbedUrlRequest getDashboardEmbedUrlRequest = new GetDashboardEmbedUrlRequest()
                .withDashboardId(dashboardId)
                .withAwsAccountId(accountId)
                .withIdentityType(IAM)
                .withResetDisabled(resetDisabled)
                .withUndoRedoDisabled(undoRedoDisabled)
                .withRequestCredentialsProvider(awsStaticCredentialsProvider);

        GetDashboardEmbedUrlResult dashboardEmbedUrl = quickSightClient.getDashboardEmbedUrl(getDashboardEmbedUrlRequest);

        return dashboardEmbedUrl.getEmbedUrl();
    }
}
```

------
#### [ JavaScript ]

```
global.fetch = require('node-fetch');
const AWS = require('aws-sdk');

function getDashboardEmbedURL(
    accountId, // YOUR AWS ACCOUNT ID
    dashboardId, // YOUR DASHBOARD ID TO EMBED
    openIdToken, // TOKEN TO ASSUME ROLE WITH ROLEARN
    roleArn, // IAM USER ROLE TO USE FOR EMBEDDING
    sessionName, // SESSION NAME FOR THE ROLEARN ASSUME ROLE
    resetDisabled, // OPTIONAL PARAMETER TO ENABLE DISABLE RESET BUTTON IN EMBEDDED DASHBAORD
    undoRedoDisabled, // OPTIONAL PARAMETER TO ENABLE DISABLE UNDO REDO BUTTONS IN EMBEDDED DASHBAORD
    getEmbedUrlCallback, // GETEMBEDURL SUCCESS CALLBACK METHOD
    errorCallback // GETEMBEDURL ERROR CALLBACK METHOD
    ) {
    const stsClient = new AWS.STS();
    let stsParams = {
        RoleSessionName: sessionName,
        WebIdentityToken: openIdToken,
        RoleArn: roleArn
    }

    stsClient.assumeRoleWithWebIdentity(stsParams, function(err, data) {
        if (err) {
            console.log('Error assuming role');
            console.log(err, err.stack);
            errorCallback(err);
        } else {
            const getDashboardParams = {
                AwsAccountId: accountId,
                DashboardId: dashboardId,
                IdentityType: 'IAM',
                ResetDisabled: resetDisabled,
                SessionLifetimeInMinutes: 600,
                UndoRedoDisabled: undoRedoDisabled
            };

            const quicksightGetDashboard = new AWS.QuickSight({
                region: process.env.AWS_REGION,
                credentials: {
                    accessKeyId: data.Credentials.AccessKeyId,
                    secretAccessKey: data.Credentials.SecretAccessKey,
                    sessionToken: data.Credentials.SessionToken,
                    expiration: data.Credentials.Expiration
                }
            });

            quicksightGetDashboard.getDashboardEmbedUrl(getDashboardParams, function(err, data) {
                if (err) {
                    console.log(err, err.stack);
                    errorCallback(err);
                } else {
                    const result = {
                        "statusCode": 200,
                        "headers": {
                            "Access-Control-Allow-Origin": "*", // USE YOUR WEBSITE DOMAIN TO SECURE ACCESS TO GETEMBEDURL API
                            "Access-Control-Allow-Headers": "Content-Type"
                        },
                        "body": JSON.stringify(data),
                        "isBase64Encoded": false
                    }
                    getEmbedUrlCallback(result);
                }
            });
        }
    });
}
```

------
#### [ Python3 ]

```
import json
import boto3
from botocore.exceptions import ClientError

# Create QuickSight and STS clients
qs = boto3.client('quicksight',region_name='us-east-1')
sts = boto3.client('sts')

# Function to generate embedded URL  
# accountId: YOUR AWS ACCOUNT ID
# dashboardId: YOUR DASHBOARD ID TO EMBED
# openIdToken: TOKEN TO ASSUME ROLE WITH ROLEARN
# roleArn: IAM USER ROLE TO USE FOR EMBEDDING
# sessionName: SESSION NAME FOR THE ROLEARN ASSUME ROLE
# resetDisabled: PARAMETER TO ENABLE DISABLE RESET BUTTON IN EMBEDDED DASHBAORD
# undoRedoDisabled: PARAMETER TO ENABLE DISABLE UNDO REDO BUTTONS IN EMBEDDED DASHBAORD
def getDashboardURL(accountId, dashboardId, openIdToken, roleArn, sessionName, resetDisabled, undoRedoDisabled):
    try:
        assumedRole = sts.assume_role(
            RoleArn = roleArn,
            RoleSessionName = sessionName,
            WebIdentityToken = openIdToken
        )
    except ClientError as e:
        return "Error assuming role: " + str(e)
    else: 
        assumedRoleSession = boto3.Session(
            aws_access_key_id = assumedRole['Credentials']['AccessKeyId'],
            aws_secret_access_key = assumedRole['Credentials']['SecretAccessKey'],
            aws_session_token = assumedRole['Credentials']['SessionToken'],
        )
        try:
            quickSight = assumedRoleSession.client('quicksight',region_name='us-east-1')
            
            response = quickSight.get_dashboard_embed_url(
                 AwsAccountId = accountId,
                 DashboardId = dashboardId,
                 IdentityType = 'IAM',
                 SessionLifetimeInMinutes = 600,
                 UndoRedoDisabled = undoRedoDisabled,
                 ResetDisabled = resetDisabled
            )
            
            return {
                'statusCode': 200,
                'headers': {"Access-Control-Allow-Origin": "*", "Access-Control-Allow-Headers": "Content-Type"},
                'body': json.dumps(response),
                'isBase64Encoded':  bool('false')
            }
        except ClientError as e:
            return "Error generating embeddedURL: " + str(e)
```

------
#### [ Node.js ]

以下範例顯示的 JavaScript (Node.js) 可在應用程式伺服器上用來取得嵌入儀表板的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示儀表板。

**Example**  

```
const AWS = require('aws-sdk');
            const https = require('https');
            
            var quicksight = new AWS.Service({
                apiConfig: require('./quicksight-2018-04-01.min.json'),
                region: 'us-east-1',
            });
            
            quicksight.getDashboardEmbedUrl({
                'AwsAccountId': '111122223333',
                'DashboardId': '1c1fe111-e2d2-3b30-44ef-a0e111111cde',
                'IdentityType': 'IAM',
                'ResetDisabled': true,
                'SessionLifetimeInMinutes': 100,
                'UndoRedoDisabled': false,
                'StatePersistenceEnabled': true
            
            }, function(err, data) {
                console.log('Errors: ');
                console.log(err);
                console.log('Response: ');
                console.log(data);
            });
```

**Example**  

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
            //readability and added ellipsis to indicate that it's incomplete.
                                { Status: 200,
              EmbedUrl: 'https://dashboards.example.com/embed/620bef10822743fab329fb3751187d2d…
              RequestId: '7bee030e-f191-45c4-97fe-d9faf0e03713' }
```

------
#### [ .NET/C\$1 ]

以下範例顯示的 .NET/C\$1 程式碼可在應用程式伺服器上用來取得嵌入儀表板的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示儀表板。

**Example**  

```
            var client = new AmazonQuickSightClient(
                AccessKey,
                SecretAccessKey,
                sessionToken,
                Amazon.RegionEndpoint.USEast1);
            try
            {
                Console.WriteLine(
                    client.GetDashboardEmbedUrlAsync(new GetDashboardEmbedUrlRequest
                    {
                        AwsAccountId = “111122223333”,
                        DashboardId = "1c1fe111-e2d2-3b30-44ef-a0e111111cde",
                        IdentityType = EmbeddingIdentityType.IAM,
                        ResetDisabled = true,
                        SessionLifetimeInMinutes = 100,
                        UndoRedoDisabled = false,
                        StatePersistenceEnabled = true
                    }).Result.EmbedUrl
                );
            } catch (Exception ex) {
                Console.WriteLine(ex.Message);
            }
```

------
#### [ AWS CLI ]

若要擔任角色，請選擇下列其中一個 AWS Security Token Service (AWS STS) API 操作：
+ [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) – 在使用 IAM 身分擔任角色的情況下使用此操作。
+ [AssumeRoleWithWebIdentity](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html) – 在使用 Web 身分提供者驗證您的使用者時，請使用此操作。
+ [AssumeRoleWithSaml](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html) –在您使用 SAML 驗證使用者時，請使用此操作。

以下範例顯示用來設定 IAM 角色的 CLI 命令。角色需要啟用 `quicksight:GetDashboardEmbedURL` 的許可。如果您正在採取即時方法在使用者第一次開啟儀表板時新增使用者，則該角色也需要啓用 `quicksight:RegisterUser` 的許可。

```
aws sts assume-role \
     --role-arn "arn:aws:iam::111122223333:role/embedding_quicksight_dashboard_role" \
     --role-session-name john.doe@example.com
```

`assume-role` 操作會傳回三個輸出參數：存取金鑰、私密金鑰和工作階段字符。

**注意**  
若您呼叫 `AssumeRole` 操作時收到 `ExpiredToken` 錯誤，原因可能是先前的 `SESSION TOKEN` 仍在環境變數中。設定以下變數便可清除此錯誤：  
*AWS\$1ACCESS\$1KEY\$1ID* 
*AWS\$1SECRET\$1ACCESS\$1KEY* 
*AWS\$1SESSION\$1TOKEN* 

以下範例說明如何在 CLI 中設定這三個參數。如果您使用 Microsoft Windows 電腦，請使用 `set`，不要使用 `export`。

```
export AWS_ACCESS_KEY_ID     = "access_key_from_assume_role"
export AWS_SECRET_ACCESS_KEY = "secret_key_from_assume_role"
export AWS_SESSION_TOKEN     = "session_token_from_assume_role"
```

對於瀏覽您網站的使用者，執行這些命令可將其角色工作階段 ID 設為 `embedding_quicksight_dashboard_role/john.doe@example.com`。角色工作階段 ID 由來自 `role-arn` 和 `role-session-name` 值的角色名稱所組成。對每個使用者使用唯一的角色工作階段 ID，可確保為每個使用者設定適當的許可。還能避免對使用者存取進行任何調節。*調節*是一項安全功能，可防止相同的使用者從多個位置存取 Amazon Quick Sight。

角色工作階段 ID 也會成為 Amazon Quick Sight 中的使用者名稱。您可以使用此模式提前在 Amazon Quick Sight 中佈建使用者，或在使用者第一次存取儀表板時佈建他們。

以下範例顯示可用來佈建使用者的 CLI 命令。如需 [RegisterUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_RegisterUser.html)、[DescribeUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_DescribeUser.html) 和其他 Amazon Quick Sight API 操作的詳細資訊，請參閱 [Amazon Quick Sight API 參考](https://docs.aws.amazon.com/quicksight/latest/APIReference/Welcome.html)。

```
aws quicksight register-user \
     --aws-account-id 111122223333 \
     --namespace default \
     --identity-type IAM \
     --iam-arn "arn:aws:iam::111122223333:role/embedding_quicksight_dashboard_role" \
     --user-role READER \
     --user-name jhnd \
     --session-name "john.doe@example.com" \
     --email john.doe@example.com \
     --region us-east-1 \
     --custom-permissions-name TeamA1
```

如果使用者是透過 Microsoft AD 進行身分驗證，您就不需要使用 `RegisterUser` 設定他們。相反地，他們應在第一次存取 Amazon Quick Sight 時自動訂閱。若是 Microsoft AD 使用者，您可以使用 `DescribeUser` 取得使用者的 ARN。

使用者第一次存取 Amazon Quick Sight 時，您也可以將此使用者新增至與儀表板共用的群組。以下範例顯示用於將使用者新增至群組的 CLI 命令。

```
aws quicksight create-group-membership \
     --aws-account-id=111122223333 \
     --namespace=default \
     --group-name=financeusers \
     --member-name="embedding_quicksight_dashboard_role/john.doe@example.com"
```

您現在擁有應用程式的使用者，他們也是 Amazon Quick Sight 的使用者，以及有權存取儀表板的使用者。

最後，為了取得儀表板的簽章 URL，請從應用程式伺服器呼叫 `get-dashboard-embed-url`。這會傳回可嵌入的儀表板 URL。下列範例顯示如何使用透過 AWS Managed Microsoft AD 或 IAM Identity Center 驗證的使用者的伺服器端呼叫來取得內嵌儀表板的 URL。

```
aws quicksight get-dashboard-embed-url \
     --aws-account-id 111122223333 \
     --dashboard-id 1a1ac2b2-3fc3-4b44-5e5d-c6db6778df89 \
     --identity-type IAM \
     --session-lifetime-in-minutes 30 \
     --undo-redo-disabled true \
     --reset-disabled true \
     --state-persistence-enabled true \
     --user-arn arn:aws:quicksight:us-east-1:111122223333:user/default/embedding_quicksight_dashboard_role/embeddingsession
```

如需有關使用此操作的詳細資訊，請參閱 [https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GetDashboardEmbedUrl.html](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GetDashboardEmbedUrl.html)。您可以在您自己的程式碼中使用這個和其他 API 操作。

------

# 步驟 3：內嵌儀表板 URL
<a name="embedded-dashboards-for-authenticated-users-get-step-3"></a>

**重要**  
Amazon Quick Sight 有用於內嵌分析的新 APIs： `GenerateEmbedUrlForAnonymousUser`和 `GenerateEmbedUrlForRegisteredUser`。  
您仍然可以使用 `GetDashboardEmbedUrl`和 `GetSessionEmbedUrl` APIs 來內嵌儀表板和 Amazon Quick Sight 主控台，但它們不包含最新的內嵌功能。如需up-to-date內嵌體驗，請參閱將 [Amazon Quick Sight 分析內嵌至您的應用程式](https://docs.aws.amazon.com/quicksight/latest/user/embedding-overview.html)。

在下一節中，您可以了解如何使用 [Amazon Quick Sight 內嵌 SDK](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) (JavaScript)，在網站或應用程式頁面的步驟 3 中內嵌儀表板 URL。您可以使用此 SDK 執行以下操作：
+ 將儀表板放在 HTML 頁面。
+ 將參數傳遞到儀表板。
+ 以針對您的應用程式而訂做的訊息來處理錯誤狀態。

呼叫 `GetDashboardEmbedUrl` API 操作以獲得可內嵌應用程式的 URL。此 URL 的有效期為 5 分鐘，而產生的工作階段有效期為 10 小時。此 API 操作提供的 URL 附有可啟用單一登入工作階段的 `auth_code`。

以下是 `get-dashboard-embed-url` 的回應範例。

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
//readability and added ellipsis to indicate that it's incomplete.
{
     "Status": "200",
     "EmbedUrl": "https: //dashboards.example.com/embed/620bef10822743fab329fb3751187d2d...",
     "RequestId": "7bee030e-f191-45c4-97fe-d9faf0e03713"
}
```

使用 [Amazon Quick Sight 內嵌 SDK](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) 或將此 URL 新增至 iframe，將此儀表板內嵌在您的網頁中。如果您設定固定高度和寬度數字 （以像素為單位），Amazon Quick Sight 會使用這些值，而且不會隨著視窗調整大小而變更視覺效果。如果您設定相對百分比高度和寬度，Amazon Quick Sight 會提供隨著視窗大小變更而修改的回應式配置。透過使用 Amazon Quick Sight 內嵌 SDK，您也可以控制儀表板中的參數，並根據頁面載入完成和錯誤接收回呼。

下列範例示範如何使用產生的 URL。此代碼在您的應用程式伺服器上生成。

```
<!DOCTYPE html>
<html>

<head>
    <title>Basic Embed</title>

    <script src="./quicksight-embedding-js-sdk.min.js"></script>
    <script type="text/javascript">
        var dashboard;

        function embedDashboard() {
            var containerDiv = document.getElementById("embeddingContainer");
            var options = {
                // replace this dummy url with the one generated via embedding API
                url: "https://us-east-1.quicksight.aws.amazon.com/sn/dashboards/dashboardId?isauthcode=true&identityprovider=quicksight&code=authcode",  
                container: containerDiv,
                scrolling: "no",
                height: "700px",
                width: "1000px",
                footerPaddingEnabled: true
            };
            dashboard = QuickSightEmbedding.embedDashboard(options);
        }
    </script>
</head>

<body onload="embedDashboard()">
    <div id="embeddingContainer"></div>
</body>

</html>
```

若要讓此範例運作，請務必使用 Amazon Quick Sight 內嵌 SDK，使用 JavaScript 在您的網站上載入內嵌儀表板。為獲得您的版本，請執行以下其中一項操作：
+ 從 GitHub 下載 [Amazon Quick Sight 內嵌 SDK](https://github.com/awslabs/amazon-quicksight-embedding-sdk#step-3-create-the-quicksight-session-object)。此儲存庫由一組 Amazon Quick Sight 開發人員維護。
+ 從 [https://www.npmjs.com/package/amazon-quicksight-embedding-sdk](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) 下載最新的內嵌開發套件版本。
+ 如果您使用 JavaScript 相依性的 `npm`，請執行下列命令來下載並安裝它。

  ```
  npm install amazon-quicksight-embedding-sdk
  ```

# 使用 嵌入 Amazon Quick Sight 主控台 GetSessionEmbedUrl（舊 API)
<a name="embedded-analytics-full-console-for-authenticated-users-get"></a>

**重要**  
Amazon Quick Sight 有用於內嵌分析的新 APIs： `GenerateEmbedUrlForAnonymousUser`和 `GenerateEmbedUrlForRegisteredUser`。  
您仍然可以使用 `GetDashboardEmbedUrl`和 `GetSessionEmbedUrl` APIs 來內嵌儀表板和 Amazon Quick Sight 主控台，但它們不包含最新的內嵌功能。如需up-to-date內嵌體驗，請參閱將 [Amazon Quick Sight 分析內嵌至您的應用程式](https://docs.aws.amazon.com/quicksight/latest/user/embedding-overview.html)。


|  | 
| --- |
|  適用於：企業版  | 


|  | 
| --- |
|    目標對象：Amazon Quick 開發人員  | 

在下列各節中，您可以找到如何使用 `GetSessionEmbedUrl` API 在自訂品牌撰寫入口網站中為已註冊使用者提供 Amazon Quick Sight 主控台體驗的詳細資訊。

**Topics**
+ [

# 步驟 1：設定許可
](embedded-analytics-full-console-for-authenticated-users-get-step-1.md)
+ [

# 步驟 2：獲取帶有身分驗證碼的 URL
](embedded-analytics-full-console-for-authenticated-users-get-step-2.md)
+ [

# 步驟 3：嵌入主控台工作階段 URL
](embedded-analytics-full-console-for-authenticated-users-get-step-3.md)

# 步驟 1：設定許可
<a name="embedded-analytics-full-console-for-authenticated-users-get-step-1"></a>

**重要**  
Amazon Quick Sight 有用於內嵌分析的新 APIs： `GenerateEmbedUrlForAnonymousUser`和 `GenerateEmbedUrlForRegisteredUser`。  
您仍然可以使用 `GetDashboardEmbedUrl`和 `GetSessionEmbedUrl` APIs 來內嵌儀表板和 Amazon Quick Sight 主控台，但它們不包含最新的內嵌功能。如需up-to-date內嵌體驗，請參閱將 [Amazon Quick Sight 分析內嵌至您的應用程式](https://docs.aws.amazon.com/quicksight/latest/user/embedding-overview.html)。

在以下章節中，您可以了解如何為後端應用程式或 Web 伺服器設定許可。這個任務需要有 IAM 的管理存取權。

每個存取 Amazon Quick Sight 的使用者都會擔任一個角色，為他們提供主控台工作階段的 Amazon Quick Sight 存取權和許可。若要實現這一點，請在 AWS 您的帳戶中建立 IAM 角色。將 IAM 政策與此角色建立關聯，以提供許可給擔任此角色的任何使用者。新增`quicksight:RegisterUser`許可，以確保讀者可以唯讀方式存取 Amazon Quick Sight，而且無法存取任何其他資料或建立功能。IAM 角色也需要提供可擷取主控台工作階段 URL 的許可。對於這一點，您新增 `quicksight:GetSessionEmbedUrl`。

下列範例政策提供搭配 `IdentityType=IAM` 使用的許可。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": "quicksight:RegisterUser",
      "Resource": "*",
      "Effect": "Allow"
    },
    {
      "Action": "quicksight:GetSessionEmbedUrl",
      "Resource": "*",
      "Effect": "Allow"
    }
  ]
}
```

------

下列範例政策提供擷取主控台工作階段 URL 的許可。如果您要在使用者存取內嵌工作階段之前建立使用者，則可以不帶 `quicksight:RegisterUser` 使用政策。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "quicksight:GetSessionEmbedUrl"
            ],
            "Resource": "*"
        }
    ]
}
```

------

如果您使用 `QUICKSIGHT` 作為您的 `identityType`，並提供使用者的 Amazon Resource Name (ARN)，您還需要在政策中允許 `quicksight:GetAuthCode` 動作。下列範例政策提供此許可。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "quicksight:GetSessionEmbedUrl",
        "quicksight:GetAuthCode"
      ],
      "Resource": "*"
    }
  ]
}
```

------

您的應用程式的 IAM 身分必須有相關聯的信任政策，以允許存取至您剛建立的角色。這表示當使用者存取您的應用程式時，您的應用程式可以代表使用者擔任該角色，並在 Amazon Quick Sight 中佈建使用者。以下範例顯示稱為 `embedding_quicksight_console_session_role` 的角色，其前面有範例政策做為資源。

如需 OpenID Connect 或 SAML 身分驗證的信任政策詳細資訊，請參閱 *IAM 使用者指南*的下列各節：
+ [建立 Web 身分的角色或 OpenID Connect 聯合身分 (主控台)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_oidc.html)
+ [為 SAML 2.0 聯合身分建立角色 (主控台)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html)

# 步驟 2：獲取帶有身分驗證碼的 URL
<a name="embedded-analytics-full-console-for-authenticated-users-get-step-2"></a>

**重要**  
Amazon Quick Sight 有用於內嵌分析的新 APIs： `GenerateEmbedUrlForAnonymousUser`和 `GenerateEmbedUrlForRegisteredUser`。  
您仍然可以使用 `GetDashboardEmbedUrl`和 `GetSessionEmbedUrl` APIs 來內嵌儀表板和 Amazon Quick Sight 主控台，但它們不包含最新的內嵌功能。如需up-to-date內嵌體驗，請參閱將 [Amazon Quick Sight 分析內嵌至您的應用程式](https://docs.aws.amazon.com/quicksight/latest/user/embedding-overview.html)。

在下一章節，您可以了解如何在您的應用程式伺服器上驗證使用者，以及取得可內嵌主控台工作階段的 URL。

當使用者存取您的應用程式時，該應用程式代表使用者擔任 IAM 角色。然後，如果使用者尚未存在，它會將使用者新增至 Amazon Quick Sight。接著，它傳遞識別符當作唯一的角色工作階段 ID。

執行所述的步驟可確保在 Amazon Quick Sight 中唯一佈建主控台工作階段的每個檢視器。它還會強制執行個別使用者設定，例如資料列層級的安全性和參數的動態預設值。

下列範例會代表使用者執行 IAM 身分驗證。此代碼在您的應用程式伺服器上運行。

------
#### [ Java ]

```
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.auth.AWSCredentialsProvider;
import com.amazonaws.regions.Regions;
import com.amazonaws.services.quicksight.AmazonQuickSight;
import com.amazonaws.services.quicksight.AmazonQuickSightClientBuilder;
import com.amazonaws.services.quicksight.model.GetSessionEmbedUrlRequest;
import com.amazonaws.services.quicksight.model.GetSessionEmbedUrlResult;

/**
 * Class to call QuickSight AWS SDK to get url for session embedding.
 */
public class GetSessionEmbedUrlQSAuth {

    private final AmazonQuickSight quickSightClient;

    public GetSessionEmbedUrlQSAuth() {
        this.quickSightClient = AmazonQuickSightClientBuilder
                .standard()
                .withRegion(Regions.US_EAST_1.getName())
                .withCredentials(new AWSCredentialsProvider() {
                                     @Override
                                     public AWSCredentials getCredentials() {
                                         // provide actual IAM access key and secret key here
                                         return new BasicAWSCredentials("access-key", "secret-key");
                                     }

                                     @Override
                                     public void refresh() {}
                                 }
                )
                .build();
    }

    public String getQuicksightEmbedUrl(
            final String accountId, // YOUR AWS ACCOUNT ID
            final String userArn // REGISTERED USER ARN TO USE FOR EMBEDDING. REFER TO GETEMBEDURL SECTION IN DEV PORTAL TO FIND OUT HOW TO GET USER ARN FOR A QUICKSIGHT USER
    ) throws Exception {
        GetSessionEmbedUrlRequest getSessionEmbedUrlRequest = new GetSessionEmbedUrlRequest()
                .withAwsAccountId(accountId)
                .withEntryPoint("/start")
                .withUserArn(userArn);

        GetSessionEmbedUrlResult sessionEmbedUrl = quickSightClient.getSessionEmbedUrl(getSessionEmbedUrlRequest);

        return sessionEmbedUrl.getEmbedUrl();
    }
}
```

------
#### [ JavaScript ]

```
global.fetch = require('node-fetch');
const AWS = require('aws-sdk');

function getSessionEmbedURL(
    accountId, // YOUR AWS ACCOUNT ID
    userArn, // REGISTERED USER ARN TO USE FOR EMBEDDING. REFER TO GETEMBEDURL SECTION IN DEV PORTAL TO FIND OUT HOW TO GET USER ARN FOR A QUICKSIGHT USER
    getEmbedUrlCallback, // GETEMBEDURL SUCCESS CALLBACK METHOD
    errorCallback // GETEMBEDURL ERROR CALLBACK METHOD
    ) {
    const getSessionParams = {
        AwsAccountId: accountId,
        EntryPoint: "/start",
        UserArn: userArn,
        SessionLifetimeInMinutes: 600,
    };

    const quicksightGetSession = new AWS.QuickSight({
        region: process.env.AWS_REGION,
    });

    quicksightGetSession.getSessionEmbedUrl(getSessionParams, function(err, data) {
        if (err) {
            console.log(err, err.stack);
            errorCallback(err);
        } else {
            const result = {
                "statusCode": 200,
                "headers": {
                    "Access-Control-Allow-Origin": "*", // USE YOUR WEBSITE DOMAIN TO SECURE ACCESS TO GETEMBEDURL API
                    "Access-Control-Allow-Headers": "Content-Type"
                },
                "body": JSON.stringify(data),
                "isBase64Encoded": false
            }
            getEmbedUrlCallback(result);
        }
    });
}
```

------
#### [ Python3 ]

```
import json
import boto3
from botocore.exceptions import ClientError
import time

# Create QuickSight and STS clients
qs = boto3.client('quicksight',region_name='us-east-1')
sts = boto3.client('sts')

# Function to generate embedded URL
# accountId: YOUR AWS ACCOUNT ID
# userArn: REGISTERED USER ARN TO USE FOR EMBEDDING. REFER TO GETEMBEDURL SECTION IN DEV PORTAL TO FIND OUT HOW TO GET USER ARN FOR A QUICKSIGHT USER
def getSessionEmbedURL(accountId, userArn):
    try:
        response = qs.get_session_embed_url(
            AwsAccountId = accountId,
            EntryPoint = "/start",
            UserArn = userArn,
            SessionLifetimeInMinutes = 600
        )
            
        return {
            'statusCode': 200,
            'headers': {"Access-Control-Allow-Origin": "*", "Access-Control-Allow-Headers": "Content-Type"},
            'body': json.dumps(response),
            'isBase64Encoded':  bool('false')
        }
    except ClientError as e:
        print(e)
        return "Error generating embeddedURL: " + str(e)
```

------
#### [ Node.js ]

以下範例顯示的 JavaScript (Node.js) 可在應用程式伺服器上用來獲得內嵌主控台工作階段的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示主控台工作階段。

**Example**  

```
const AWS = require('aws-sdk');
            const https = require('https');
            
            var quicksight = new AWS.Service({
                apiConfig: require('./quicksight-2018-04-01.min.json'),
                region: 'us-east-1',
            });
            
            quicksight.GetSessionEmbedUrl({
                'AwsAccountId': '111122223333',
                'EntryPoint': 'https://url-for-console-page-to-open',
                'SessionLifetimeInMinutes': 600,
                'UserArn': 'USER_ARN'
            
            }, function(err, data) {
                console.log('Errors: ');
                console.log(err);
                console.log('Response: ');
                console.log(data);
            });
```

**Example**  

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
            //readability and added ellipsis to indicate that it's incomplete.
                                { Status: 200,
              EmbedUrl: 'https://dashboards.example.com/embed/620bef10822743fab329fb3751187d2d…
              RequestId: '7bee030e-f191-45c4-97fe-d9faf0e03713' }
```

------
#### [ .NET/C\$1 ]

以下範例顯示的 .NET/C\$1 程式碼可在應用程式伺服器上用來產生內嵌主控台工作階段的 URL。您可以在您的網站或應用程式中使用此 URL 來顯示主控台。

**Example**  

```
            var client = new AmazonQuickSightClient(
                AccessKey,
                SecretAccessKey,
                sessionToken,
                Amazon.RegionEndpoint.USEast1);
            try
            {
                Console.WriteLine(
                    client.GetSessionEmbedUrlAsync(new GetSessionEmbedUrlRequest
                    {
                'AwsAccountId': '111122223333',
                'EntryPoint': 'https://url-for-console-page-to-open',
                'SessionLifetimeInMinutes': 600,
                'UserArn': 'USER_ARN'
                        AwsAccountId = 111122223333,
                        EntryPoint = https://url-for-console-page-to-open,
                        SessionLifetimeInMinutes = 600,
                        UserArn = 'USER_ARN'
                    }).Result.EmbedUrl
                );
            } catch (Exception ex) {
                Console.WriteLine(ex.Message);
            }
```

------
#### [ AWS CLI ]

若要擔任角色，請選擇下列其中一個 AWS Security Token Service (AWS STS) API 操作：
+ [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) – 在使用 IAM 身分擔任角色的情況下使用此操作。
+ [AssumeRoleWithWebIdentity](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html) – 在使用 Web 身分提供者驗證您的使用者時，請使用此操作。
+ [AssumeRoleWithSaml](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html) –在您使用 SAML 驗證使用者時，請使用此操作。

以下範例顯示用來設定 IAM 角色的 CLI 命令。角色需要啟用 `quicksight:GetSessionEmbedUrl` 的許可。如果您在第一次開啟 Amazon Quick Sight 時採取just-in-time方法來新增使用者，該角色也需要為 啟用許可`quicksight:RegisterUser`。

```
aws sts assume-role \
     --role-arn "arn:aws:iam::111122223333:role/embedding_quicksight_dashboard_role" \
     --role-session-name john.doe@example.com
```

`assume-role` 操作會傳回三個輸出參數：存取金鑰、私密金鑰和工作階段字符。

**注意**  
若您呼叫 `AssumeRole` 操作時收到 `ExpiredToken` 錯誤，原因可能是先前的 `SESSION TOKEN` 仍在環境變數中。設定以下變數便可清除此錯誤：  
*AWS\$1ACCESS\$1KEY\$1ID* 
*AWS\$1SECRET\$1ACCESS\$1KEY* 
*AWS\$1SESSION\$1TOKEN* 

以下範例說明如何在 CLI 中設定這三個參數。如果您使用 Microsoft Windows 電腦，請使用 `set`，不要使用 `export`。

```
export AWS_ACCESS_KEY_ID     = "access_key_from_assume_role"
export AWS_SECRET_ACCESS_KEY = "secret_key_from_assume_role"
export AWS_SESSION_TOKEN     = "session_token_from_assume_role"
```

對於瀏覽您網站的使用者，執行這些命令可將其角色工作階段 ID 設為 `embedding_quicksight_console_session_role/john.doe@example.com`。角色工作階段 ID 由來自 `role-arn` 和 `role-session-name` 值的角色名稱所組成。對每個使用者使用唯一的角色工作階段 ID，可確保為每個使用者設定適當的許可。還能避免對使用者存取進行任何調節。調節是一項安全功能，可防止相同的使用者從多個位置存取 Amazon Quick Sight。

角色工作階段 ID 也會成為 Amazon Quick Sight 中的使用者名稱。您可以使用此模式提前在 Amazon Quick Sight 中佈建使用者，或在使用者第一次存取主控台工作階段時佈建使用者。

以下範例顯示可用來佈建使用者的 CLI 命令。如需 [RegisterUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_RegisterUser.html)、[DescribeUser](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_DescribeUser.html) 和其他 Amazon Quick Sight API 操作的詳細資訊，請參閱 [Amazon Quick Sight API 參考](https://docs.aws.amazon.com/quicksight/latest/APIReference/Welcome.html)。

```
aws quicksight register-user \
     --aws-account-id 111122223333 \
     --namespace default \
     --identity-type IAM \
     --iam-arn "arn:aws:iam::111122223333:role/embedding_quicksight_dashboard_role" \
     --user-role READER \
     --user-name jhnd \
     --session-name "john.doe@example.com" \
     --email john.doe@example.com \
     --region us-east-1 \
     --custom-permissions-name TeamA1
```

如果使用者是透過 Microsoft AD 進行身分驗證，您就不需要使用 `RegisterUser` 設定他們。相反地，他們應在第一次存取 Amazon Quick Sight 時自動訂閱。若是 Microsoft AD 使用者，您可以使用 `DescribeUser` 取得使用者的 ARN。

使用者第一次存取 Amazon Quick Sight 時，您也可以將此使用者新增至適當的群組。以下範例顯示用於將使用者新增至群組的 CLI 命令。

```
aws quicksight create-group-membership \
     --aws-account-id=111122223333 \
     --namespace=default \
     --group-name=financeusers \
     --member-name="embedding_quicksight_dashboard_role/john.doe@example.com"
```

您現在擁有的應用程式使用者也是 Amazon Quick Sight 的使用者，以及可存取 Amazon Quick Sight 主控台工作階段的使用者。

最後，為了取得主控台工作階段的簽章 URL，請從應用程式伺服器呼叫 `get-session-embed-url`。這將返回可嵌入的主控台工作階段 URL。下列範例示範如何使用伺服器端呼叫，為透過 AWS Managed Microsoft AD 或單一登入 (IAM Identity Center) 驗證的使用者取得內嵌主控台工作階段的 URL。

```
aws quicksight get-dashboard-embed-url \
     --aws-account-id 111122223333 \
     --entry-point the-url-for--the-console-session \
     --session-lifetime-in-minutes 600 \
     --user-arn arn:aws:quicksight:us-east-1:111122223333:user/default/embedding_quicksight_dashboard_role/embeddingsession
```

如需有關使用此操作的詳細資訊，請參閱 [https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GetSessionEmbedUrl.html](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_GetSessionEmbedUrl.html)。您可以在您自己的程式碼中使用這個和其他 API 操作。

------

# 步驟 3：嵌入主控台工作階段 URL
<a name="embedded-analytics-full-console-for-authenticated-users-get-step-3"></a>

**重要**  
Amazon Quick Sight 有用於內嵌分析的新 APIs： `GenerateEmbedUrlForAnonymousUser`和 `GenerateEmbedUrlForRegisteredUser`。  
您仍然可以使用 `GetDashboardEmbedUrl`和 `GetSessionEmbedUrl` APIs 來內嵌儀表板和 Amazon Quick Sight 主控台，但它們不包含最新的內嵌功能。如需up-to-date內嵌體驗，請參閱將 [Amazon Quick Sight 分析內嵌至您的應用程式](https://docs.aws.amazon.com/quicksight/latest/user/embedding-overview.html)。

在下一節中，您可以了解如何使用 [Amazon Quick Sight 內嵌 SDK](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) (JavaScript)，在網站或應用程式頁面的步驟 3 中內嵌主控台工作階段 URL。您可以使用此 SDK 執行以下操作：
+ 將主控台工作階段放置在 HTML 頁面上。
+ 將參數傳遞至主控台工作階段。
+ 以針對您的應用程式而訂做的訊息來處理錯誤狀態。

呼叫 `GetSessionEmbedUrl` API 操作以獲得可內嵌應用程式的 URL。此 URL 的有效期為 5 分鐘，而產生的工作階段有效期為 10 小時。此 API 操作提供的 URL 附有可啟用單一登入工作階段的 `auth_code`。

以下是 `get-dashboard-embed-url` 的回應範例。

```
//The URL returned is over 900 characters. For this example, we've shortened the string for
//readability and added ellipsis to indicate that it's incomplete.
{
     "Status": "200",
     "EmbedUrl": "https: //dashboards.example.com/embed/620bef10822743fab329fb3751187d2d...",
     "RequestId": "7bee030e-f191-45c4-97fe-d9faf0e03713"
}
```

使用 Amazon Quick Sight [內嵌 SDK ](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk)或將此 URL 新增至 iframe，將此主控台工作階段內嵌在您的網頁中。如果您設定固定高度和寬度數字 （以像素為單位），Amazon Quick Sight 會使用這些值，而且不會隨著視窗調整大小而變更視覺效果。如果您設定相對百分比高度和寬度，Amazon Quick Sight 會提供隨著視窗大小變更而修改的回應式配置。透過使用 Amazon Quick Sight 內嵌 SDK，您也可以控制主控台工作階段中的參數，並根據頁面載入完成和錯誤接收回呼。

下列範例示範如何使用產生的 URL。此代碼在您的應用程式伺服器上生成。

```
<!DOCTYPE html>
<html>

<head>
    <title>Basic Embed</title>

    <script src="./quicksight-embedding-js-sdk.min.js"></script>
    <script type="text/javascript">
        var dashboard;

        function embedDashboard() {
            var containerDiv = document.getElementById("embeddingContainer");
            var options = {
                // replace this dummy url with the one generated via embedding API
                url: "https://us-east-1.quicksight.aws.amazon.com/sn/dashboards/dashboardId?isauthcode=true&identityprovider=quicksight&code=authcode",  
                container: containerDiv,
                scrolling: "no",
                height: "700px",
                width: "1000px",
                footerPaddingEnabled: true
            };
            dashboard = QuickSightEmbedding.embedDashboard(options);
        }
    </script>
</head>

<body onload="embedDashboard()">
    <div id="embeddingContainer"></div>
</body>

</html>
```

若要讓此範例運作，請務必使用 Amazon Quick Sight 內嵌 SDK，使用 JavaScript 在您的網站上載入內嵌主控台工作階段。為獲得您的版本，請執行以下其中一項操作：
+ 從 GitHub 下載 [Amazon Quick Sight 內嵌 SDK](https://github.com/awslabs/amazon-quicksight-embedding-sdk#step-3-create-the-quicksight-session-object)。此儲存庫由一組 Amazon Quick Sight 開發人員維護。
+ 從 [https://www.npmjs.com/package/amazon-quicksight-embedding-sdk](https://www.npmjs.com/package/amazon-quicksight-embedding-sdk) 下載最新的內嵌開發套件版本。
+ 如果您使用 JavaScript 相依性的 `npm`，請執行下列命令來下載並安裝它。

  ```
  npm install amazon-quicksight-embedding-sdk
  ```