フィルターは、可視化データを動的にフィルタリングおよび制御するために使用されるコアコンポーネントです。このトピックでは、複数のシナリオでフィルターを設定、管理、および適用する方法について体系的に紹介します。
背景情報
原則紹介
フィルターは、動的なデータインタラクションを実装するためのデータ可視化における重要な機能です。ユーザー定義の条件ルール(数値区間、テキストマッチング、論理結合など)を通じて生データをリアルタイムでフィルタリングし、結果をすべての関連付けられた可視化ウィジェットに更新します。
シナリオ
フィルターは、主にデータコンテンツの表示を動的に制御するために、データ可視化で広く使用されています。典型的なシナリオには、次のようなものがあります。
売上レポートで、特定の地域の業績データのみを表示する。
リアルタイム監視ダッシュボードで、異常値(しきい値を超える温度データなど)を除外する。
ドロップダウンメニューまたはスライダーと組み合わせて、ユーザーが表示するタイムスタンプ範囲を選択できるようにする。
準備
前提条件
データダッシュボードプロジェクトを作成済みであること。
キャンバスエディターへのアクセス
フィルターを設定して関連操作を実行する前に、次の手順に従って キャンバスエディターにアクセスします。
DataV コンソールにアクセスします。
[ワークスペース] ページで、ターゲットプロジェクトにマウスポインターを合わせて [編集] をクリックし、キャンバスエディターページにアクセスします。
フィルターの作成
次の 2 つの方法のいずれかを使用して、フィルターを作成できます。
パネルでフィルターを作成する
キャンバスエディターページの左側のナビゲーションバーで、[フィルター] をクリックしてフィルターページにアクセスします。
フィルターパネルで、[フィルターの作成] をクリックします。
フィルター設定エリアで、フィルター名とカスタムフィルターコードを入力し、[保存] をクリックします。
(オプション) フィルターの編集時に、[グローバル変数を関連付ける] をクリックして、既存のグローバル変数を現在のフィルターに関連付けることができます。関連付けの後、コード内でこの変数を直接使用できます。

正常に作成されたフィルターは、フィルターリストに表示されます。
説明作成されたフィルターは、現在のデータダッシュボードのすべてのウィジェットで呼び出すことができます。呼び出されると、ウィジェットとフィルター間の関連付け関係が表示されます。
ウィジェットでフィルターを作成する。
ウィジェットは、フィルター作成方法として手動設定をサポートしています。
現在のデータダッシュボードにウィジェットを追加し(この例では縦棒グラフを使用)、右側の設定パネルで [データソース] をクリックします。
[データソース] 設定パネルで、フィルターをオンにして [作成] をクリックします。

フィルター設定エリアで、フィルター名とカスタムフィルターコードを入力し、[保存] をクリックします。
正常に作成されたフィルターは、フィルターリストに表示され、フィルターとウィジェット間の依存関係が表示されます。
フィルターの管理
フィルターパネル
[フィルター] パネルでは、ダッシュボード内のすべてのフィルターを一元管理できます。これらのフィルターは、任意のウィジェットで追加および使用できます。呼び出し回数は、各フィルターの右側に表示されます。

フィルターパネルでフィルターの構成を変更すると、このフィルターに依存するすべてのウィジェットが使用できなくなります。変更を保存する前に、影響の範囲を確認してください。
基本操作
フィルターの名前変更: ターゲットフィルターにマウスポインターを合わせ、
アイコンをクリックして、フィルター名を入力します。フィルターの削除: ターゲットフィルターにマウスポインターを合わせ、
アイコンをクリックしてフィルターを削除します。重要フィルターを削除すると、関連するウィジェットが使用できなくなる可能性があります。続行する前に確認してください。
フィルターの追加: ウィジェットの [データソース] 設定パネルで、フィルタースイッチをオンにして、ドロップダウンメニューからターゲットフィルターを選択します。

未使用のフィルターをクリアする: ウィジェットに複数のフィルターを追加した後、フィルターパネルの [未使用のフィルターをクリア] をクリックすると、未使用のフィルターをすべてワンクリックで削除できます。
重要フィルターはクリア後に復元できません。注意して操作してください。
フィルターの並べ替え
ウィジェットに複数のフィルターを追加した後、上下にドラッグして並べ替えることができます。
フィルターの順序: ウィジェットのデータソースに複数のフィルターを追加した後、データは上から下へ各フィルターを介して順番に処理されます。最初のフィルターの入力はデータソースから直接返された元の結果であり、2 番目のフィルターの入力は最初のフィルターによって処理された出力データであり、後続のフィルターはこのパターンに従います。各フィルターは前のフィルターの出力結果に基づいて処理を行い、最終的にすべてのフィルターによるカスケード処理後のデータ結果を出力します。
途中のフィルターが空の値を返した場合、そのフィルターは無視されますが、フィルタリングは終了せず、システムは複数のフィルターの設定ページにプロンプトを表示します。
フィルターの実行でエラーが報告された場合、フィルタリングは終了し、最後に正しく実行された結果が使用されます。
フィルターのデバッグ
[データソース] ページで、デバッグ用のフィルターコードを編集できます。左側のポップアップには、戻り値がリアルタイムで表示されます。
フィルターのデバッグ機能は、フィルターコードの正確性を保証しますが、大量のデータには適していません。

フィルターの使用
次の例では、縦棒グラフ ウィジェットを例に、キャンバスエディターとブループリントエディターでのフィルターの具体的な適用方法を示します。
キャンバスでの使用
キャンバスエディターで縦棒グラフウィジェットを追加します。
現在のウィジェットを選択し、右側の設定パネルの [データソース] タブをクリックします。
フィルターチェックボックスを選択し、[作成] をクリックしてフィルターを作成します。

フィルター名を
Column Chart Filterに変更し、初期フィルターコードを次のコードに置き換えます。return data.splice(0,3)//最初の 3 つのデータ項目をフィルタリングするフィルターの下の [テスト] をクリックして、出力結果を表示します。次の図は、フィルタリング後の効果を示しています。

テストが成功したら、[保存] をクリックしてフィルターコードの編集を完了します。その後、キャンバスでフィルタリングされた可視化グラフを表示できます。

ブループリントでの使用
キャンバスエディターで 2 つの縦棒グラフウィジェットを追加します。
ページの左上隅にある
アイコンをクリックして、[ブループリント] ページに切り替えます。左側の [レイヤーノード] タブで、2 つの縦棒グラフノードをメインブループリントキャンバスにドラッグアンドドロップで追加します。
左側の [ロジックノード] タブをクリックし、[シリアルデータ処理] ノードを追加します。
図のように、縦棒グラフとシリアルデータ処理ノードを順番に接続します。

シリアルデータ処理ノードを選択し、右側の ノード設定 パネルで、[処理方法] モジュール内の [作成] をクリックしてフィルターを追加します。
フィルター名を Column Chart Serial Processing に変更し、初期フィルターコードを次のコードに置き換えます。

return data.splice(0,3)//最初の 3 つのデータ項目をフィルタリングするフィルターの下の [保存] をクリックして編集を完了し、ブループリントページの右上隅にある [プレビュー] をクリックしてプレビューページに入ります。ウィジェットが読み込まれると、フィルタリングされたグラフ結果を表示できます。

FAQ
データソースエラー: ウィジェットデータパネルでフィルターを追加した後、別の種類のデータソースに切り替えると、システムはエラーメッセージ領域に次の 2 つのインターフェイス例外プロンプトを表示します。
重要データソースに異常がある場合、インターフェイスがデータコンテンツを返しても、データパネルのフィルターは無効のままです(グレー表示)。データストリームのソースにすでに例外があるため、後続のフィルタリング処理には実際的な意味がなくなります。
フィルターエラー: フィルターがデータフィルタリングを実行するときに、コードでエラーが発生した場合(「未定義の戻り値フィールド」などの例外)、システムはインターフェイスにエラープロンプトを表示します。

関連操作
フィルターでグローバル変数を参照するために使用される getLocalValue メソッドと getCallbackValue メソッドについては、フィルターリファレンス をご参照ください。