ArcGIS QGIS Learning 2: レイヤーはジオメトリック サーフェス データの必要な部分のみをどのように表示しますか (国の州、市、郡、町、町をダウンロードするための最新の座標境界を含む)

序文

SHP ファイルを GIS ソフトで開くと、その中の幾何図形がすべて表示されますが、データの一部だけを表示し、残りは表示しないようにしたい場合、いくつかの操作方法があります。

表示したい幾何曲面を別のレイヤーにコピーすれば個別に表示できますが、表示する範囲が変わってしまうとやり直す必要があり、あまり便利ではありません。

以下に、私が学んだ解決策を記録します。ArcGIS と QIGS はどちらも、レイヤー内のデータのフィルター処理をサポートしており、SQL に似たクエリ ステートメントを提供し、一致した面のみを表示するクエリ条件レイヤーを作成するだけで済みます。

SHPデータの準備

  1. GitHub オープン ソース ライブラリにアクセスして、全国の地方および都市の境界データの最新バージョンをダウンロードします。アドレス: https://github.com/xiangyuecn/AreaCity-JsSpider-StatsGovオンライン プレビュー (ゴールド マップ、ECharts)をサポートします。オープンソースライブラリは頻繁に更新され、保守されています。サポートはあらゆる面で非常に優れており、文字化けすることなくタウンシップレベルまで到達できます。

  2. ダウンロードして解凍すると、全国の州や市の境界線データが含まれる ok_geo.csv ファイルを取得できます。このオープン ソース ライブラリには、この csv ファイルを shp、geojson、sql などの形式に変換してダウンロードするための変換ツールが提供されています同じように。

  3. 変換ツールを開き、ツールで ok_geo.csv ファイルを選択します。このファイルには、国内のすべての省と市のデータが含まれており、比較的大きなデータです。デモンストレーションのために、武漢の地区と県のすべてのデータをエクスポートしてみましょう。ツールの都市名の接頭辞 ("湖北省 武汉市 "スペースを含む。それ以外の場合は武漢の境界線もエクスポートされる)。

  4. 変換ツールのボタンをクリックして转成shp文件、しばらく辛抱強く待つと、武漢のすべての地区および郡のデータが正常にエクスポートされ、shp ファイルが ok_geo.csv と同じディレクトリに保存されます。

ArcMap でのフィルタリング

エクスポートされた武漢 SHP ファイルを ArcMap で開きます。
武漢のすべての区と県

レイヤーを右クリックしてレイヤーのプロパティ パネルを開き、[定義クエリ] に切り替えます。
クエリ条件を設定する

条件はArcMap クエリ定義に入力されます。これは、列が属性テーブルに等しいか、属性テーブルにあるデータをname='汉阳区' or name='硚口区'フィルタリングして除外することを意味します。[OK] をクリックすると、表示する必要があるデータがクエリされます。一致しないデータはすべて表示されません。が表示され、一致したデータのみが表示されます。name汉阳区硚口区
フィルタ結果

その他のクエリ条件の記述方法については、以下を参照してください。

QGISのスクリーニング

エクスポートされた武漢 SHP ファイルを QGIS で開きます。
武漢のすべての区と県

レイヤーを右クリックして [フィルター] メニューを開き、クエリ ビルダーに入ります。
クエリ条件を設定する

QGIS クエリ定義にはname='汉阳区' or name='硚口区'条件が入力されています。これは、属性テーブル内の列がまたはnameに等しいデータをフィルターで除外し、[OK] をクリックして表示する必要があるデータをクエリすることを意味します。一致しないものはすべて表示されず、のみ表示されます。一致したものが表示されます。汉阳区硚口区
フィルタ結果

クエリ条件の書き方

クエリ条件はSQLのクエリ条件と似ており、などの演算子whereをサポートします。and or like = > < !=

文字列は、次のよう'一重引用符で囲みますname='张三'name like '张%'

フィールド名を直接記述するか、"二重引用符で囲みます (例: ) "编号(数字)"=12345

andおよび を使用してor、次のような複数の条件を組み合わせたクエリを実行します面积>100 and 面积<200 or 面积=999

and組み合わせはor組み合わせよりも優先度が高く、優先度を制御する()ために使用でき(名称='A' or 名称='B') and 面积<200。たとえば、 A または B という名前のデータが検索され、その領域が 200 未満であることがわかります。括弧を削除すると、次のようになります。 A という名前のすべてのデータと、名前が B で面積が 200 未満のデータ。

like次のような文字列に対するあいまいクエリを実行するために使用されます

  • name like '%小%'名前に単語が含まれるすべてのデータを検索します。
  • name like '张%'名前が で始まるすべてのデータを検索します。
  • name like '%小'名前が で終わるすべてのデータを検索します。

【以上】

おすすめ

転載: blog.csdn.net/xiangyuecn/article/details/128097590