メインコンテンツまでスキップ

ダッシュボードフィルターを使用する

フィルターはダッシュボードの視覚化に表示されるデータを制限し、ユーザーが特定の基準を満たすデータに集中できるようにします。このページでは、利用可能なフィルターの種類とその操作方法について説明します。

フィルターのインタラクティブ性とスコープ

ダッシュボード作成者はフィルターをインタラクティブに設定して、ダッシュボード作成者がフィルター値を事前に定義し、閲覧者が値を動的または静的に調整できるようにすることができます。インタラクティブ フィルターを使用すると、ダッシュボードの閲覧者は関連する視覚化でデータセットの値を選択できます。ダッシュボード エディターは静的フィルター値を設定し、それが設定されているウィジェットにのみ適用することで、ウィジェット間で同じデータセットの固有のビューを有効にします。

ダッシュボード フィルターはさまざまなスコープで動作し、それぞれに固有の特性があります。

  • グローバル フィルター: 1 つ以上のデータセットを共有する視覚化のダッシュボード内のすべてのページに適用されるインタラクティブ フィルター。閲覧者はこれらの値を動的に調整でき、変更はダッシュボード全体に影響します。グローバル フィルターを参照してください。

  • ページ レベルのフィルター: 1 つ以上のデータセットを共有する同じページ上のすべての視覚化に適用されるインタラクティブなフィルター ウィジェット。閲覧者はこれらの値を変更して、特定のページのビューを変更できます。

  • ウィジェット レベルのフィルター: 構成されている個々の視覚化ウィジェットにのみ適用される静的フィルター。ダッシュボードの作成者は、閲覧者が変更できない値を使用してフィルターを設定します。これらのフィルターは、異なるウィジェット間で同じデータセットの固有のビューを作成します。

  • ドリルスルー: 閲覧者がグラフ要素をクリックして、選択内容に基づいてフィルターが自動的に入力されたターゲット ページを開くことができる対話型のナビゲーション方法です。「ドリルスルーを使用してデータをフィルター処理する」を参照してください。

アクティブフィルターバー

ダッシュボード上のすべてのアクティブなフィルターは、ダッシュボードの上部近くにあるアクティブなフィルター バーに表示されます。 すべて に設定されていないフィルター (グローバル レベルまたはページ レベル) とクロス フィルターがこのバーに表示されます。アクティブなフィルター バーには、すべてのグローバル フィルターとページ レベルのフィルターとその値が表示されます (値がユーザーによって設定されたか、または デフォルト.

公開されたダッシュボード上のアクティブなフィルター バー。

フィルターアプリケーションの動作

デフォルトでは、閲覧者がドロップダウン メニューから値を選択すると、フィルターがすぐに適用されます。ダッシュボード作成者は、閲覧者が [適用] ボタンをクリックしたときにのみフィルターが適用されるように構成できるため、閲覧者はダッシュボードを更新する前に複数のフィルター値を選択できます。フィルター アプリケーションの動作を構成するには、 フィルター アプリケーションの動作を構成するを参照してください。

フィルターのコピーと貼り付け

キャンバスとグローバル フィルター パネル間でフィルターをコピーして貼り付けることで、ダッシュボードのレイアウトをすばやく再編成できます。

  1. キャンバスまたはグローバル フィルター パネルでフィルター ウィジェットを選択します。
  2. 右クリックして [切り取り] または [コピー] を選択するか、キーボード ショートカット (Windows/Linux では Ctrl+X または Ctrl+C、macOS では Cmd+X または Cmd+C) を使用します。
  3. グローバル フィルター パネルまたはページ キャンバスの空白部分を右クリックします。
  4. [貼り付け] を選択するか、キーボード ショートカット (Windows/Linux では Ctrl+V、macOS では Cmd+V) を使用します。

この機能は同じダッシュボード内でのみ動作します。異なるダッシュボード間でフィルターをコピーすることはできません。

グローバルフィルター

すべてのグローバルフィルターを表示するには、フィルターアイコン。ダッシュボードの左上隅にあるフィルター アイコン。ダッシュボードの右側にパネルが開きます。

グローバル フィルターを作成するには:

  1. クリックフィルターアイコン。ダッシュボード キャンバスの左上隅にあるフィルター アイコン。
  2. + をクリックします。キャンバスの右側にフィルター設定パネルが開きます。
  3. 他の対話型フィルターウィジェットと同様に、フィルター構成を設定します。フィルターウィジェットの設定例については、ダッシュボードフィルタータイプを参照してください。
注記

グローバル フィルター パネルを開いた状態でダッシュボードを公開すると、公開されたダッシュボードを最初に読み込むときに閲覧者に対してパネルが開いたままになります。

ウィジェットのフィルター

フィルター ウィジェットは、閲覧者がデータセット フィールドと問題のページ レベルのフィルター値を調整できるようにする対話型要素です。

フィルター ウィジェットを作成するには:

  1. クリックフィルターアイコン。フィルター ウィジェットを追加するには、 フィルター (フィールド/パラメーター) を追加します 。次に、ダッシュボード キャンバスのページにフィルターを配置します。フィルターが選択され、画面の右側に設定パネルが開きます。
  2. ウィジェットのタイトルを オンにして、ウィジェットにタイトルフィールドを表示します。ウィジェットのタイトルを編集します。
  3. 説明 をオンにします。
  4. 設定パネルの [フィルター] ドロップダウン メニューから、 日付範囲ピッカー を選択します。
  5. クリック新しいアイコン。 フィールド メニューの横にあるプラス アイコン。ドロップダウン メニューから tpep_pickup_datetime を クリックします。
注記

クエリベースの問題では、フィールド フィルターと問題フィルターが 1 つのウィジェットに結合されます。 詳細については、 「クエリベースの問題」を参照してください。

デフォルトのフィルタ値を設定する

デフォルト値は、新しいフィルター値を選択せずにダッシュボードが更新されるときに使用されます。デフォルト値を設定するには、フィルターウィジェットの構成設定の デフォルト値 ドロップダウンから値を選択します。

フィルターはデータセット全体に適用されます。小さなデータセットの場合、パフォーマンスを最適化するためにブラウザでフィルターが適用されます。データセットが大きい場合、 SQLウェアハウスで実行されるクエリにフィルタが追加されます。 データセットの最適化とキャッシュを参照してください。

フィールドまたは論点でフィルタリングする必要がありますか?

比較的小さなデータセットの場合、 Databricksクエリを再実行せずにブラウザーでフィールド フィルターを適用するため、フィールド フィルターはパラメーターよりも効率的に実行されることがよくあります。

問題は実行時に値を置き換え、関連するクエリを再実行する必要があります。 ただし、クエリの最適化により優れた柔軟性を提供できます。 フィールド フィルターは、SQL を共通テーブル式 (CTE) でラップし、クエリの最後に適用しますが、場合によっては効率が低下することがあります。

を使用すると、結合の後ではなく前など、クエリ内の任意の場所にフィルター条件を配置できます。 この柔軟性により、データ構造とアクセス パターンに基づいてクエリ パフォーマンスを最適化できます。たとえば、結合前にフィルタリングすると、結合操作中に処理されるデータが大幅に削減されます。

次の表では、データセット フィールドに対する直接のフィルタリングと、問題を使用したフィルタリングを比較しています。

フィルタリングの種類

説明

パフォーマンス

汎用性

フィールドでのフィルタリング

データセットを変更せずにデータセット フィールドに直接適用されます。

通常はより高速です。小さなデータセットはブラウザでフィルタリングできます。大規模なデータセットは、フィルター述語を適用してクエリを再実行することによってフィルター処理されます。データセットの最適化とキャッシュを参照してください。

解決されたデータセットの結果のフィルタリングに限定されます。サブクエリまたはカスタム条件ロジックでは使用できません。

問題でフィルタリングする

ランタイム時にデータセット クエリに値を直接代入します。

問題値が変化するたびにクエリを再実行する必要があります。

サブクエリ、条件付きロジック、またはクエリ構造の変更に使用できます。

フィルターの種類

フィールド フィルターと論点フィルターは、さまざまなフィルター タイプをサポートしています。

さまざまなフィルター タイプを構成する方法の例については、 「ダッシュボード フィルター タイプ」を参照してください。

公開されたダッシュボード URL のフィルター

公開されたダッシュボードには、フィールド フィルターと問題の選択が URL に保存されます。 これにより、ユーザーは特定のフィルター構成を使用してダッシュボードをブックマークしたり共有したりできるようになります。ユーザーが URL を開くと、フィルター値がすでに適用された状態でダッシュボードが読み込まれます。

フィルター識別子は名前付きの値として保存されません。各フィルターは、ページname値とウィジェットname値の組み合わせで識別され、チルダ (~) で区切られます。これらの値はデフォルトで自動的に生成されます。フィルター識別子と値は、指定されたフィルター選択でダッシュボードをロードするための URL の一部として渡されます。

注記

nameキーはダッシュボードを定義するシリアル化されたファイルに表示されますが、Databricks UI からはアクセスできません。これは、UI に表示されるページ名を定義する"displayName"値とは異なります。「ダッシュボード ファイルの編集」を参照してください。

次の例は、選択したフィルター値を含むダッシュボード URL の構造を示しています。

<databricks-instance>/dashboardsv3/<dashboard-id>/published?o=<workspace-id>&f_<page-name>~<widget-name>=<filter-value>
  • URL の最初の部分は、公開されたダッシュボードを識別します。「ダッシュボードの URL と ID」を参照してください。
  • フィルターを識別するセクションはf_で始まり、その後にチルダ ( ~ ) で区切られたpage-namewidget-nameが続きます。
  • 等号 ( = ) の右側の値は、選択されたフィルター値です。

page-namewidget-name値は、ダッシュボードの作成時に自動的に生成されます。これらの名前はシリアル化されたlvdash.jsonファイルで編集できます。名前は、インポート、エクスポート、再公開などの操作をまたいで保持されます。「ダッシュボード ファイルの編集」を参照してください。

URL でフィルター値にアクセスして設定する

次の例は、選択したフィルター値を含む公開されたダッシュボードの URL を示しています。

<databricks-instance>/dashboardsv3/<dashboard-id>/published?o=<workspace-id>&f_53eadf26~3490f286=10013

この例では、 Time RangePickup ZipDropoff Zip の 3 つのフィルターを持つダッシュボードを参照します。 ピックアップ郵便番号 フィルターにのみ値が割り当てられます。URL では、識別子f_53eadf26~3490f286を使用して10013に設定されています。

この例で使用されているものと同様のダッシュボードを作成するには、 「ダッシュボードの作成」を参照してください。

URL に相対的な日付範囲の値を指定する

過去 5 分間過去 12 時間 などの相対時間フィルターが使用されている場合、対応する値が URL に表示されます。

次の例は 、過去 12 時間 が選択された URL を示しています。

<databricks-instance>/dashboardsv3/<dashboard-id>/published?o=<workspace-id>&f_53eadf26~3490f286=now-12h

この場合、フィルター識別子f_53eadf26~3490f286は相対値now-12hに設定されます。

クロスフィルタリングを適用する

ダッシュボードを調べると、さらに詳しく調査したい特定の傾向や値に気付くことがあります。クロスフィルタリングを使用すると、閲覧者は視覚化を直接操作してダッシュボード データをフィルタリングできます。これにより、既存のフィルターでは取得できない可能性のあるデータを調査することができ、フィルター コントロールを手動で編集せずにパターン、外れ値、または特定のセグメントを調査するのに役立ちます。

GIF は、ユーザーが複数のチャートでデータポイントをクリックしている様子を示しています。 その他のチャートは動的に変化します。

クロスフィルタリングを使用すると次のことが可能になります。

  • 1 つまたは複数のグラフの値を選択して、特定のデータ セグメントに焦点を当てます。
  • 集計された値をクリックして階層データをドリルダウンします。たとえば、棒グラフ内の年をクリックすると、その年で他の視覚化がフィルターされます。次に、月または週をクリックして、範囲を絞り続けます。

クロスフィルタリングは、同じデータセットを使用するサポートされている視覚化に自動的に適用されます。

次のグラフ タイプはクロス フィルタリングをサポートしています。

  • 箱ひげ図
  • ヒートマップ
  • ヒストグラム
  • 円グラフ
  • 散布図
  • ポイントマップ

グラフ要素を選択してフィルターを適用すると、同じデータセットに基づく他のすべての視覚化が自動的に更新され、フィルターされたデータが反映されます。

関連する視覚化をフィルタリングする

クロスフィルタリングを使用してデータを探索するには:

  1. 棒グラフの棒やヒートマップのセルなど、視覚化内のデータ ポイントをクリックします。
  2. ダッシュボードは、選択した値に基づいてフィルターを適用します。

同じデータセットを共有する他のすべての視覚化もそれに応じて更新されます。

事前に設定されたフィルターを使用してさまざまなページに移動できる、より高度なフィルター処理ワークフローについては、 「ドリルスルーを使用してデータをフィルター処理する」を参照してください。

ドリルスルーを使用してデータをフィルタリングする

ドリルスルーを使用すると、閲覧者が特定のデータ セグメントをクリックして、選択内容に応じてフィルターされた対象ページを開くことができるようにレポートを構造化できます。ターゲット ページが開くと、ソース選択と同じデータセットに基づく視覚化が自動的にフィルター処理されます。ターゲット ページに同じデータセットに基づくフィルターが含まれている場合、それらのフィルターには、ソース ビジュアライゼーションから選択されたセグメントが自動的に入力されます。

ユーザーが概要ページから詳細ページにドリルスルーする例。詳細ページが開き、ソース ビジュアライゼーションから選択したセグメントを表示するためのフィルターが事前に入力されます。

次のグラフ タイプはドリルスルーをサポートしています。

  • 箱ひげ図
  • ヒートマップ
  • ヒストグラム
  • 円グラフ
  • 散布図
  • ポイントマップ

サポートされているドリルスルー選択タイプとフィルタータイプ

ソース チャートには、適用されたフィルターのデータ型と一致するデータ型が含まれている必要があります。たとえば、数値データには数値フィルターが必要です。

次の表は、互換性のある選択タイプとフィルター タイプの概要を示しています。

ソースデータ選択タイプ

ターゲットフィルターの種類

複数のカテゴリディメンションにわたる単一の選択

  • 単一値のドロップダウン
  • 複数値のドロップダウン

複数の定量的次元にわたる単一選択

  • 単一値のドロップダウン
  • 複数値のドロップダウン

1つのカテゴリディメンション内での複数選択

複数値のドロップダウン

1つの定量的次元内での複数選択

複数値のドロップダウン

1つの日付ビン内の一時値内の単一選択

日付範囲フィルター

注記

日付フィールドでドリルスルーを有効にする場合は、値が日付として認識されるように日付変換 ( DAILY など) を使用します。日付フィールドがカテゴリ スケールを使用して変換なしで表示されている場合、特に基になるフィールドが日付ではなく日付時刻である場合、ドリルスルーでは正確な値の一致が必要になるため、ドリルスルーは期待どおりに機能しない可能性があります。

次のドリルスルーケースはまだサポートされていません。

  • 複数のカテゴリディメンションによる複数選択。
  • 複数の定量的ディメンションによる複数選択。
  • 複数の日付ビン化された一時値による複数選択。

ドリルスルーを使用する

ダッシュボード作成者としてドリルスルーを設定するには:

  1. 次のスニペットを使用して、サンプル視覚化用のデータセットを作成します。データセットに 「 all trips 」 という名前を付けます。

    SQL
    SELECT
    DATE(tpep_pickup_datetime) AS trip_date,
    HOUR(tpep_pickup_datetime) AS pickup_hour,
    COUNT(*) AS trip_count,
    ROUND(AVG(trip_distance), 2) AS avg_distance,
    ROUND(AVG(fare_amount), 2) AS avg_fare
    FROM samples.nyctaxi.trips
    GROUP BY trip_date, pickup_hour
    ORDER BY trip_date;

  2. キャンバス上で、デフォルトページに 「概要」 という名前を付けます。

  3. 次の構成で視覚化を作成します。

    • データセット: すべての旅行
    • 視覚化: バー
    • X軸: DAILY(旅行日)
    • Y軸: SUM(平均運賃)
  4. 新しいページを作成し、 「 Details 」 という名前を付けます。

  5. クリックフィルターアイコン。フィルターを作成し、ページの上部に配置します。

  6. タイトルを 「旅行日」 に変更します。

  7. 構成パネルを使用して、次の値を設定します。

    • フィルター: 日付範囲ピッカー
    • フィールド: すべての旅行.trip_date
  8. 次の構成で視覚化を作成します。

    • データセット: すべての旅行
    • 視覚化:
    • 列: すべて表示/非表示 を選択

ダッシュボード閲覧者としてターゲット ページにドリルスルーするには:

  1. ソース チャート内のデータ セグメントを右クリックします。
  2. 「ドリルダウン」 をクリックし、アクセスするページ名をクリックします。