フィルターの適用

フィルターは、マップ内にあるフィーチャ レイヤーの対象を絞ったビューを提供します。 レイヤー内のフィーチャの表示を制限することで、重要なフィーチャを明確にできます。 たとえば、犯罪レイヤーに対するフィルターを作成して、先月に発生した放火火災だけをマップ上に表示することができます。 犯罪の種類や日付に基づいて犯罪レイヤーをフィルタリングすると、警察が放火事件を未然に防ぐことができるように、最近の放火発生場所のパターンを表示することができます。

また、マップの作成者は、対象ユーザーがデータを自分で調べるのに役立つ対話型フィルターを設定することもできます。 レイヤー内で使用可能な値を知らせるプロンプトやヒントを表示することで、そのフィーチャに適用できるその他のフィルターをユーザーに案内できます。 たとえば、学校レイヤーに対して対話型フィルターを設定すると、ユーザーは小学校、中学校、高校のどれを表示するかを選択できます。 デフォルトでは、レイヤーには小学校が表示されます。 ユーザーは、表示されるプロンプトとヒントを参考にし、値を [中学校][高校] に変更して、マップ上に別の種類の学校を表示することができます。

既存のフィルターの操作

マップのフィーチャ レイヤーにフィルターが含まれている場合、そのフィーチャのフィルタリングされたビューが表示されます。 マップ上に表示されるのは、フィルター条件に合致したフィーチャだけです。 たとえば、マップ作成者が、小学校、中学校、高校を含む学校レイヤーに対して小学校だけを表示するフィルター (<タイプ> <小学校> <に等しい>) を設定しているとします。 この場合、中学校や高校はフィルタリングによりマップに表示されません。 マップ作成者が学校レイヤーに対して対話型フィルターを設定してある場合は、値を [中学校] に変更することで、そのエリアの中学校だけを表示することができます。

フィルターにアクセスして、式を表示したり、フィルター内の対話型の式を変更したり、フィルターを編集したりできます。 加えた変更は、表示されているマップのビューにのみ適用されます (マップを所有していない場合。所有している場合は、変更内容を保存できます)。

  1. フィルタリングされたレイヤーがあるマップをMap Viewerで開きます。
  2. [詳細] をクリックし、[コンテンツ] をクリックします。
  3. 既存のフィルターを含むフィーチャ レイヤーを参照し、[フィルター] フィルター をクリックします。
  4. フィルターを変更、編集、または表示します。
    • [変更] タブで、既存の対話型フィルターに対して新しい値を適用できます。 式に新しい値を入力して、[フィルターの適用] ボタンをクリックします。 マップには、フィーチャ レイヤーの新たにフィルタリングされたビューが表示されます。 このタブには、フィルター内の式のわかりやすいバージョンも表示されます。 このタブは、フィルター内に対話型の式がある場合に表示されます。 フィルターに対話型の式が含まれていない場合、代わりに [表示] タブにフィルター内の式のわかりやすいバージョンが表示されます。
    • [編集] タブでは、式を更新できます。 式の更新方法の詳細については、次のセクションをご参照ください。

フィルターの作成

フィルターは、ホスト フィーチャ レイヤー、ホスト フィーチャ レイヤー ビュー、ArcGIS Server フィーチャ サービス レイヤー、および ArcGIS Server マップ サービス レイヤーの関連テーブルに対して作成できます。マップ メモやファイルからインポートされたフィーチャに対してフィルターを作成することはできません。 マップには、フィルターの式の条件に合致したフィーチャだけが表示されます。

Map Viewer でフィルターを使用する手順を次に示します。 フィーチャ レイヤーの場合は、フィーチャ レイヤーのアイテム ページの [ビジュアライゼーション] タブでフィルターを使用することもできます。

  1. Map Viewer でマップを開きます。
  2. [詳細] をクリックし、[コンテンツ] をクリックします。
  3. フィルタリングするフィーチャ レイヤーを参照し、[フィルター] フィルター をクリックします。
  4. 定義式を作成します。
    • 式では、<フィールド名> <演算子> <値、フィールドまたは個別値> という一般形式が使用されます。
    • 1 つの式、複数の式、あるいは 1 つ以上の式のセットを作成できます。 1 つのセットとは、式のグループで、たとえば、「[<タイプ> <小学校> <に等しい>] および [<入学者数> <400> <以上>]」などです。 式のセットを作成するには、[セットの追加] をクリックします。
    • 式が複数ある場合、式の [すべて][一部] のどちらに合致するレイヤー内のフィーチャを表示するかを選択します。 [すべて] の場合、指定した条件がすべて真である必要があります。 [一部] の場合、式の中で 1 つだけが真であれば、フィーチャが表示されます。
    • 式のフィールドの部分で [フィールド] ドロップダウン矢印をクリックして、リストからクエリ対象のフィールドを選択します。
    • 式の演算子の部分で [演算子] ドロップダウン矢印をクリックして、リストから演算子を選択します。
    • 特定の値に基づいてフィルターする場合は、[値] を選択して、フィールドに値を入力します。 入力ボックスは、フィールド タイプに応じて異なります。
    • 2 つのフィールド間で値を比較する場合は、[フィールド] を選択し、ドロップダウン矢印をクリックして、式のフィールドを選択します。
    • 式で選択したフィールド内の特定の値に基づいてフィルターする場合は、[個別値] を選択し、フィールドから一意の値を選択します。
      注意:

      個別値フィルターは、日付フィールドにはサポートしていません。

    • 複数の値または一意の値に基づいた式を作成した場合、対話型の式を設定できます。 フィールドに基づいた式の場合、値を確認することはできません。 [値の確認] ボックスをクリックします。 [プロンプト] フィールドに値に関する情報、[ヒント] フィールドにヒントを入力します。
    • フィルター内の式を削除するには、式の右側にある [削除] ボタン 削除 をクリックします。
  5. [フィルターの適用] をクリックすると、マップ上でフィルタリングされたビューが有効になります。
    ヒント:

    ホスト フィーチャ レイヤーのフィルターを作成した場合、フィルター処理されたビューを有効化し、フィルターを表示するように現在のマップを再描画する [フィルターを適用してズーム] オプションが表示されます。

  6. フィーチャ レイヤーの所有者または組織サイトの管理者は、レイヤーにフィルターを保存できます。 [その他のオプション] [その他のオプション][レイヤーの保存] の順にクリックします。

    レイヤーにフィルターを保存すると、そのレイヤーにアクセスするすべてのユーザーに対し、フィルタリングされたデータが表示されます。 レイヤーにフィルターを保存しない場合、そのフィルターはそのマップ内でのみ使用されます。

  7. フィルターを解除し、レイヤー内のすべてのフィーチャを表示するには、[フィルターの削除] をクリックします。

    レイヤーにフィルターを保存した場合は、レイヤーからフィルターを削除するため、レイヤーを再度保存する必要があります。

日付によるフィルタリング

一部のフィーチャ レイヤーは、日付でフィルタリングできます。 たとえば、指定した日付範囲内に発生した地震を示す場所を表示したりできます。

また、[以内である][以内でない] 演算子を使用すると、動的な日付フィルターをホスト フィーチャ レイヤーに適用し、現在の日付を基準として発生イベントを表示することもできます (過去 5 日以内に編集されたすべてのフィーチャなど)。この場合、手動でフィルターを毎日更新する必要がなくなります。 日付フィルターに使用可能なその他の演算子には、[である][でない][より前である][より後である][の間にある][の間にない] などがあります。

注意:

日付によるフィルタリングは、標準化されたクエリをサポートするホスト フィーチャ レイヤーおよび ArcGIS Server 10.2 以降のサービス レイヤーで使用できます。

  1. Map Viewer でマップを開きます。
  2. [詳細] をクリックし、[コンテンツ] をクリックします。
  3. フィルタリングするフィーチャ レイヤーを参照し、[フィルター] フィルター をクリックします。
  4. 次の手順に従って、日付フィルターとして使用する定義式を作成します。
    1. [フィールド] ドロップダウン メニューから日付フィールドを選択します。
    2. [である][より前である][以内である] などの演算子を [演算子] ドロップダウン メニューから選択します。
      注意:

      [以内である] および [以内でない] 演算子は、ホスト フィーチャ レイヤーにのみ利用できます。ArcGIS Server フィーチャ サービスでは利用できません。

    3. データのフィルタリング方法に応じて、次のいずれかを実行します。
      • 特定の日付値に基づいてフィルタリングする場合は、[値] をクリックして、値を入力します。 選択した演算子に応じて、カレンダーで 1 つの日付 (または 2 つの日付) を指定するか、1 つまたは 2 つの日付を手動で入力するか、時間範囲を日、週、月単位で指定することができます。
      • あるフィールドの値と別のフィールドの値を比較する場合は、[フィールド] をクリックして、ドロップダウン メニューからフィールドを選択します。
  5. 必要に応じて、さらに式または式のセットを追加します。
  6. 入力が終了したら、[フィルターの適用] をクリックします。

フィルターに関する注意事項

フィルターを操作する際は次の点に留意してください。

  • フィルターは、ホスト フィーチャ レイヤー、ホスト フィーチャ レイヤー ビュー、ArcGIS Server フィーチャ サービス レイヤー、および ArcGIS Server マップ サービス レイヤーの関連テーブルに対して作成できます。 マップ メモやファイルからインポートされたフィーチャに対してフィルターを作成することはできません。
    注意:

    ホスト フィーチャ レイヤーとホスト フィーチャ レイヤー ビューに適用されるフィルターでは、レイヤーのデータへのアクセスが制限されません。 レイヤーへのアクセス権のあるユーザーは誰でも、フィルターを解除して、すべてのデータにアクセスすることができます。

  • フィールド名を変更するには、ポップアップ構成を使用してフィールド エイリアスを編集します。
  • 値または個別値に基づいて対話型の式を作成できます。 フィールドに基づいて対話型の式を作成することはできません。
  • 特殊文字が値の一部となっている場合を除いて、値に特殊文字を追加しないでください。 たとえば、「City が "New York" に等しい」という式を作成しても、「New York」という名前のフィーチャは検索できません。 この例の場合、代わりに「City が New York に等しい」とする必要があります。
  • フィールドにコード値が含まれている場合、[値] リストには、フィールドに対してサービスで定義されているすべてのコード値が表示されます。 これには、レイヤー内にフィーチャとして存在していない値が含まれる場合があります。 [個別値] リストには、レイヤー内のすべてのフィーチャが表示されます (これは、サービス内の一部の値である場合があります)。
  • 一意の値の数がレイヤーに許可されている制限を超えている場合、[個別値] オプションは使用できません。 この場合は代わりに [値] オプションを使用して、フィルターに使用する値を明示的に入力できます。
  • 式が複数ある場合、セット内の式をグループ化するか、またどのようにグループ化するかによって、フィルターの式の定義とマップに何が表示されるかが変わります。 次の例では、マップ上にすべての私立中学校または私立高校が描画されます。

    フィルターの例

    それは、セット内の「「[<タイプ> <中学校> <に等しい>] 」または「 [<タイプ> <高校> <に等しい>]」のいずれかの式に必ず該当する必要があるが、この式のセットと追加の「[<カテゴリ> <私立> <に等しい>]」の式の両方に必ず該当する必要があるからです。

    セット内のいずれかの式に該当するが、すべての式に該当する必要がある場合のフィルター定義

    代わりに、式のセット「[Type が High School に等しい]」と「[Category が private に等しい]」では両方の条件に必ず該当する必要があるが、この式のセットと追加の式「[Type が Junior に等しい]」のいずれかに該当するものを選択するようフィルターを作成すると、すべての公立および私立中学校と私立高校が選択されます。

    いずれかの式に該当する可能性がある場合のフィルター例

    セット内のすべての式に必ず該当するがすべての式のいずれかに該当する可能性がある場合のフィルター例