集計パイプラインは、ドキュメントを結果の集計セットに変換します。 Atlas Charts では、集計パイプラインは通常、既存のフィールドの計算結果から作成された新しいフィールドを視覚化するために使用されますが、他の多くのアプリケーションもあります。
集計パイプラインを作成するには、次の手順に従います。
Queryバーで、集計パイプラインを入力します。 パイプラインは角括弧で囲む必要があります。
(任意) Formatを選択して、クエリを次のように配置します。
クエリを複数行に分裂する
JSON の規則に従ってクエリをインデントする
(条件付き) Formatオプションを選択した場合は、終了したら [ Close ] をクリックします。
パイプラインを実行するには、 Applyをクリックします。
例
次のチャートは、事務用品会社の総売上額を店舗場所別に分類したものです。 このチャートでは、 Queryバーで次の集計パイプラインを使用します。
[ { $unwind: "$items" }, { $addFields: { saleAmount: { $multiply: [ "$items.price", "$items.quantity" ] } } } ]
この集計パイプラインは、次の順序でコレクション データを処理します。
$unwindステージはitems配列を展開し、 配列内の項目ごとに新しいドキュメントを出力します。 配列の各要素には、トランザクション中に販売されたitems1 つのアイテムが含まれています。ステージでは、ドキュメントに
$addFieldsという新しいフィールドが追加されます。saleAmount$multiplysaleAmountitems.price式は、 の値を とitems.quantityの積に設定します。次のスクリーンショットで、この新しいフィールドが強調表示されています。

パイプラインを使用してデータが処理されると、チャートにはすべてのsaleAmountsのSumが店舗ロケーション別に分類されて表示されます。
集計パイプライン エラーへの対処
集計が無効な場合、Charts はQueryバーの アイコン。
エラーの詳細を表示するには、まだ表示されていない場合はQueryバーをクリックします。 Charts には、次のエラーの詳細が表示されます。
不正な JSON などのクライアント側のエラーや
無効なMQLやサポートされていないパイプラインステージなど、サーバー側のエラー。

エラーの詳細を確認し、それに応じて集計パイプラインを調整します。
制限
Charts では、集計クエリで 演算子をサポートしていません。ただし、この演算子は Data Source パイプラインで使用できます。パイプラインを使用してデータがチャートビルダに送信される前にデータを前処理する方法の詳細については、「
$lookupチャート ビューの作成と管理 」を参照してください。Chartsは、関数本体を1行で定義し、二重引用符で囲む場合にのみ 演算子をサポートします。集計クエリでこの演算子を使用するには、次の構文を使用する必要があります
$function。{ $function: { body: "function(arg1, arg2, ...) { ... }", args: <array expression>, lang: "js" } }