QGISを使用してポリゴンレイヤーからポイント属性を取得していますか?


9

2つのレイヤーがあります。1つ(A)にはポイントフィーチャがあり、もう1つ(B)にはポリゴンがあります。

Aテーブルの一部(ID)またはすべてのフィールドと、BポリゴンにAポイントが含まれているBテーブルの一部(市外局番)またはすべてを含む新しいテーブルを作成するにはどうすればよいですか?

QGISを使用しています。

回答:


13

「ベクトル」メニューの「位置による結合属性」を使用して、位置(「BポリゴンにAポイントが含まれる場所」)で結合を行うことができます。結果のレイヤーには、両方のレイヤーのすべての属性が含まれます。

より高速な代替策は、SAGA>ベクトルポイントツール>ポイントにポリゴン属性を追加することです。これは、QGISの処理ツールボックスから利用できます。


0

SQL経由

データへのアクセスとSQLデータベースへのアクセスが必要です。単純なSQLクエリを介して情報を取得できます。この例は、TSQLのSQL Server用に記述されています。

クエリは、消火栓(レイヤーA)と消防区(レイヤーB)のIDを、共通の識別子とそれぞれのジオメトリ定義とともにリストします。ジオメトリが定義されているため、これらの結果をテーブルに挿入すると、マップで確認できます。

SELECT WHYDRANT.OBJECTID AS HYDID,
    WFIREDISTRICT.OBJECTID AS FDID, WHYDRANT.UNID AS UNID,
    WFIREDISTRICT.UNID AS FDUNID, WHYDRANT.SHAPE
FROM WFIREDISTRICT 
    INNER JOIN WHYDRANT ON 
        WFIREDISTRICT.SHAPE.STContains(WHYDRANT.SHAPE()) = 1
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.