フィルター ウィジェット

フィルター ウィジェットを使用すると、レイヤー内のフィーチャの表示設定を制限できます。マップには、式の条件に合致したフィーチャだけが表示されます。これに伴い、その他の標準ウィジェットには (該当する場合)、レイヤーに対する変更内容が反映されます。

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

このウィジェットは、アプリの起動時に自動的に開くように設定できます。 ウィジェットにポインターを合わせて、ウィジェット上の [アプリの起動時に、このウィジェットを開かない] ボタン アプリの起動時に、このウィジェットを開かない をクリックし、設定を [アプリの起動時に、このウィジェットを自動的に開く] に変更します。 (最初にアプリに追加する必要があるウィジェットについては、ウィジェットを構成した後でこのオプションをオンにすることができます。)

  1. ウィジェット上にマウス ポインターを合わせて、[このウィジェットを構成] ボタン このウィジェットを構成 をクリックして、構成ウィンドウを開きます。
    注意:

    最初にウィジェットをアプリに追加する必要がある場合は、[ウィジェット] タブのウィジェット プレースホルダーをクリックします。 表示される [ウィジェットの選択] ウィンドウで、ウィジェットを選択し、[OK] をクリックします。

  2. 必要に応じて、[ウィジェット アイコンの変更] をクリックし、独自の画像と置換します。

    ファイル エクスプローラー ウィンドウが表示され、ウィジェット アイコンとして使用するローカル イメージ ファイルを選択できます。

  3. [+ 新しいフィルター] をクリックし、[レイヤー] リストからレイヤーを選択します。
  4. [情報] タブの [ラベル] に、フィルターの名前を入力します。
  5. 必要に応じて、フィルターのデフォルト アイコンを変更します。いくつかのシンボル カテゴリから選択するか、[カスタム画像] を選択して、ローカル画像を参照します。
  6. [式] タブで [条件式の追加] をクリックします。

    フィルターでは、レイヤー データの属性値に基づいてレイヤー内のフィーチャを検索して表示する論理式が使用されます。式では、<フィールド名> <条件> <値またはフィールド> という一般形式が使用されます。たとえば、[Shelter capacity (避難所の収容人数)] が 200 より大きいなどです。

    1. フィールド名のリストから、レイヤーのフィルタリングに使用するフィールドを選択します。
    2. 次のリストから、適切な条件を選択します。
      注意:
      • [次のいずれかである] 条件と [次のいずれでもない] 条件では、複数のフィールド値を入力として受け入れます。式により、選択した値のいずれかと一致する/いずれとも一致しないデータをそれぞれ取得できます。
      • [以内である][以内でない] など、一部の日付関連の条件は、オンラインのホスト フィーチャ サービスにしか使用できません。日付関連の条件は、相対日付 (過去 5 日間など) をサポートできます。
    3. フィルター条件に適用される値またはフィールドを指定して、式を完成させます。[入力タイプの設定] ボタン 入力タイプの設定 をクリックし、下記の使用可能なオプションのいずれかを選択します。
      ヒント:

      すべての属性値のリストを提供するオプションでは、検索ボックスに用語を入力してリストを絞り込み、値が複数ある場合に値を見つけやすくすることができます。

      • [値] - データに関連する値を入力するか選択して、フィールド値に基づいてフィルタリングします。日付関連の値には、[今日][昨日][明日] などの相対日付を含めることができます。
      • [フィールド] - 2 つのフィールド間での値の比較に基づいてフィルタリングします。
      • [個別値] - 選択したフィールドの有効な属性値のリストから選択して、1 つのフィールド値に基づいてフィルタリングします。
        注意:

        個別値フィルターには 10.1 以降のマップ サービス レイヤーが必要です。10.0 以前のサービス レイヤーでフィルターを作成している場合、[個別値] オプションは表示されません。

      • [個別値 (定義済み)] - 定義した静的リストからユーザーが選択できる 1 つの値に基づいてフィルタリングします。デフォルトでは、[値の確認] がオンで、リストが以前の式に基づいて値を表示するように設定されています。
      • [複数] - 選択したフィールドの有効な属性値のリストから選択して、複数のフィールド値に基づいてフィルタリングします。式に含める値をすべてオンにします。このオプションは、[次のいずれかである] 条件と [次のいずれでもない] 条件でのみサポートされています。
      • [複数 (定義済み)] - 定義した静的リストからユーザーが選択できる複数の値に基づいてフィルタリングします。デフォルトでは、[値の確認] がオンで、リストが以前の式に基づいて値を表示するように設定されています。

      データに適用可能な場合は、日付フィールド値で日付を選択した際に、[時間の表示] をオンにして時間を選択することもできます。時間を設定する前に、日付を選択する必要があります。時間、分、または秒のレベルの時間精度でフィルタリングできます。たとえば、[時間][分] の値を事前に設定し、[秒] を空白のままにした場合、レイヤーの属性に秒の値が含まれている場合でも、ユーザーは秒に基づいてフィルタリングできません。

      注意:

      [時間の表示] ボックスをオンにしたが、時間、分、秒の 3 つのボックスをすべて空白のままにした場合、ユーザーには対話型フィルターの入力値として時間を指定するオプションが表示されません。

  7. [値] または [個別値] 入力タイプを使用して式を作成した場合は、必要に応じて [値の確認] ボックスをオンにして、ユーザーがフィルターの値を入力する対話型フィルターを設定します (このオプションは、定義済みの入力タイプにはデフォルトで設定されています)。

    このオプションでは、フィルターにデフォルト値を指定するか、空白のままにすることができ、ユーザーは値のリストから選択するか、独自の値を入力します。

    1. 必要に応じて、[プロンプト] で式について明確に説明します。
    2. [ヒント] で、ユーザーに役立つ指示を入力します。
    3. 該当する場合は、[日付オプション] で、データにとって意味のない日付値をオフにします。たとえば、犯罪事件を表示するレイヤーをフィルタリングするオプションとして [明日] を含めるのは非論理的です。式で選択されている値をここでオフにすることはできません。

      [値の確認] が有効で、[日付オプション] が変更された式

    4. 該当する場合は、[リスト値] で、すべての個別値を表示するか、以前の式に基づいて値を表示するか、他のすべての式 (順序に関係なく) に基づいて値を表示するかを選択します。
      注意:

      フィルターが入力値を要求し、[前の条件式でフィルター処理した値] または [他のすべての条件式でフィルター処理した値] のいずれかのリスト設定を保持している場合、コード値の説明を表示するには、サービスが統計情報に基づくクエリの機能に対応している必要があります。

  8. 複数の式を作成するには、[条件式の追加] をクリックします。式の上に、式のすべてまたは一部に合致するレイヤー内のフィーチャを表示するオプションがあります。
  9. 1 つ以上の式セットを作成するには、[+ セットの追加] をクリックします。新しいセットの上部で、レイヤーをフィルタリングする際に、このセットのすべての式が true である必要があるか、一部の式が true である必要があるかを選択します。

    セットとは式をグループ化したものです。たとえば、[避難所] の収容人数が 201 人以上、[ステータス] がオープンなどです。

    追加されたセットとハイライト表示されたオプションを示す [式] タブ

  10. [オプション] タブで、次の任意の設定を有効にします。
    • [プリセット レイヤー フィルターをマップから削除します] - マップで定義されているフィルターがアプリで適用されないようにします。
    • [ウィジェットを開いたときに、このフィルターを適用] - ユーザーがウィジェットを開くとすぐにフィルターを適用します。
    • [ウィジェットを開くときに、フィルター条件式 (存在する場合) を折りたたみます] - 入力値を許可するフィルターの対話型の式をユーザーが展開する必要があります。
  11. 別のフィルターを追加するには、上記の手順を繰り返します。複数のフィルターを追加する場合、いずれかのフィルターに一致する、またはすべてのフィルターに一致するフィーチャを表示するオプションがあります。フィルターを上にまたは下に移動するには、リスト内のフィルターをポイントして、矢印ボタンをクリックします。
  12. 必要に応じて、[レイヤーでフィルターをグループ化] をオンにして、影響を受けるレイヤー別にフィルターを並べ替えます。
  13. フィルターの適用後、マップに表示されるフィーチャの範囲にズームするには、[レイヤーのフィルターの適用時に残りのフィーチャにズーム] をオンにします。
  14. ユーザーがすべてのフィルターをオフにした場合に、アプリの最初のマップ範囲にズームするには、[レイヤーのフィルターがすべてオフになったときに最初のマップ範囲にズーム] をオンにします (アプリの最初のマップ範囲は、[マップ] タブで設定します)。
  15. 次のオプションから選択して、フィルター ウィジェットに追加のボタンを含めます。
    • [カスタム フィルターの有効化] - ユーザーが独自の式を作成して、追加のフィルターを作成できます。
    • [フィルターのリセット (カスタムを除く) の有効化] - ユーザーがフィルター ウィジェットをアプリのデフォルト設定にリセットできます。
    • [フィルターをオフ (カスタムを除く) の有効化] - ユーザーがアプリのフィルターを一度にすべてオフにできます。
  16. [OK] をクリックして、構成を保存して閉じます。

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

マップに複数のフィルターを同時に適用したり、個別のフィルターを適用することができます。

  1. [フィルター] ボタンをクリックして、ウィジェットを開きます。
  2. フィルターをクリックしてオンにし、マップに表示されるフィーチャを制限します。一部のフィルターが、デフォルトでオンになっている場合があります。
  3. アプリがフィルターの変更を許可するように構成されている場合は、値を入力するか、リストから値を選択します (フィルターの横にある矢印をクリックして、入力値の表示/非表示を切り替えることができます)。

    注意:
    日付フィールド属性をフィルタリングするとき、時間ピッカーが構成されている場合、事前に設定された時間値を選択するか、ボックスに入力して時間値を変更できます。

  4. アプリで使用可能な場合は、次のいずれかのボタンをクリックします。(アプリに複数のボタンがある場合は、これらのボタンを表示するために [フィルター アクション] ボタンをクリックする必要が生じることがあります)。

    可能なすべてのフィルター アクション ボタンを持つフィルター ウィジェット

    • [カスタム フィルターの作成] - レイヤー データの属性値に基づいて、レイヤー内のフィーチャを検索して表示する独自のフィルターを定義します。レイヤーを選択し、[条件式の追加] または [セットの追加] をクリックして、式を作成します。
      注意:

      カスタム フィルターは、時間固有の属性のフィルタリングをサポートしていません。

    • [フィルターのリセット (カスタムを除く)] - フィルター ウィジェットをアプリのデフォルト設定にリセットします。カスタム フィルターを作成した場合、そのフィルターは変更されません。
    • [フィルターをオフ (カスタムを除く)] - アプリのフィルターをオフにして、最初のマップ範囲にズームします。カスタム フィルターをオンにした場合、そのフィルターはオンのままです。[カスタム フィルターの作成] ボタンをクリックして、カスタム フィルターを個別にオフにします。