[]
PivotPanelコントロールは、PivotEngineのフィールドとフィールドリストを編集するためのドラッグアンドドロップUIです。
フィールドリストでフィールドをドラッグしてビューを構築し、各フィールドのコンテキストメニューを使用して書式設定や集計などのフィールドプロパティをカスタマイズできます。
PivotPanel.itemsSourceプロパティをPivotEngineのインスタンスに設定して、2つのコンポーネントを接続します。
最初に、パネルのホスト要素を作成します。
<div id="panel"></div>
次に、PivotPanelコントロールを初期化し、PivotEngineを連結します。
let engine = new wjOlap.PivotEngine();
engine.itemsSource = rawData;
let panel = new wjOlap.PivotPanel('#panel');
panel.itemsSource = engine;
PivotEngineはいくつかのフィールドコレクションを持ち、以下のプロパティとして公開されています。
fields:データソースにあるすべてのフィールドを含みます。
valueFields:「測定値」として使用されるフィールドを含みます。通常は、エンジンによって集計される数値です。
rowFieldsおよびcolumnFields:「次元」として使用されるフィールドを含みます。通常は、データをグループに分割するために使用される文字列または日付です。
filterFields:データのフィルタ処理にのみ使用される(出力サマリーには含まれない)フィールドを含みます。
PivotPanelでは、フィールドの複数のコピーをvalueFieldsコレクションにドラッグできます。こうすると、パネルが独自のプロパティを持つクローンを作成します。
これにより、さまざまな集計や計算を使用してフィールドを集計できます。たとえば、ある列には合計を表示し、別の列には平均、累計、パーセント値などを表示できます。
PivotEngineは、各次元フィールドがビューに一度だけ表示されるようにします。「Buyer」フィールドをcolumnFields領域にドラッグすると、rowFields領域からは自動的に削除されます。
PivotEngineは、次元フィールドを使用して、データをグループに分割します。書式設定された値が使用されるため、日付フィールドを年(yyyy)または四半期(q)で書式設定すると、年または四半期でデータが集計されます。
データを年と四半期の両方で集計する場合は、日付フィールドの2つのコピーを作成し、それぞれに異なる書式とヘッダーを設定します。
filterFieldsリストを使用して、測定値や次元として使用されていないフィールドに基づいてフィルタを適用できます。
たとえば、特定の年の支出のみをBuyerおよびType別に表示するとします。
それには、次の手順に従います。
「Date」フィールドをフィルタ領域にドラッグします。
フィールドを右クリックし、[フィールドの設定]オプションを選択します。
フィルタエディタダイアログで、[フィルタ]の隣にある[編集]ボタンをクリックします。
フィルタエディタダイアログで、目的の年を確認します。
[OK]をクリックして、エディタを閉じます。
PivotPanelのコンテキストメニューから、フィールドを編集できます。それには、パネルでフィールドを右クリックし、[フィールドの設定]オプションを選択します。これにより、フィルタなどのフィールドのプロパティを編集できるダイアログが表示されます(右側のPivotGridからも実行できます)。
データを含むPivotEngineオブジェクトにPivotPanelが連結されたら、コードなしでビューを操作できます。大部分のユーザーは、この方法でツールを操作します。
最初にフィールドを選択し、フィールドリストに追加します。