QGISのpythonツールを使って

596 views
Skip to first unread message

Maiko N

unread,
Jul 16, 2022, 9:38:49 AM7/16/22
to QGIS初心者質問グループ
お疲れ様です。
QGISのpythonコンソールを使って、以下のような処理をしたいのですが、
やり方をご存知の方、あるいは参考になるサイトなどご存知でしたら教えてください

やりたい事は、
・複数の地点の緯度経度情報が入っているcsvファイルを読み込み
・各地点の緯度経度から半径300m以内の建物オブジェクトを選択
・その半径300m以内の建物オブジェクトの属性情報を出力
・↑上記の処理をcsvファイルに入っている地点分実行
これらをやりたいです。

csvファイルに入っている地点が2000地点くらいあるので、
手計算で300m以内のオブジェクトを選択→切り出しして、属性情報を出力するのはかなり厳しいと思い、
pythonコンソールで実施できないかと思っております…。

やり方について心当たりのある方、また、ヒントになりそうなサイトなど
ご存知の方いらっしゃいましたら、よろしくお願いいたします。

yoichi...@gmail.com

unread,
Jul 20, 2022, 6:14:49 AM7/20/22
to QGIS初心者質問グループ
はじめまして

いろいろなやり方があると思いますが

以下のページとかもしかすると参考になるかもしれません。

https://docs.qgis.org/3.22/ja/docs/user_manual/processing/index.html

ご希望の処理を実行するモジュールは QGISのプロセッシングの中に機能があると思います。

Pythonのコンソールを使わないでも プロセッシングのグラフィカルモデラーを使って
それぞれの処理をつなげてご要望の機能を作成することができます。

またはそれぞれのプロセッシングモジュールはPythonから呼び出すことができますからプロセッシング
モジュールのPythonからの呼び出し方法を上記ページで理解して、そのようなPythonスクリプトを
作成してPythonコンソールから実行するとか


そうでなければQGISの各クラスのPythonからの利用方法を調べるとか


でもそれをやらなくてもCSVファイルが1つぐらいならちょっと手作業でできるかもしれないです。

CSVファイルはレイヤの追加でロードできますよね。
各点から300mのオブジェクト抽出はプロセッシングのベクタオーバーレイかベクタ選択でできると思います。
ポイントが緯度経度ではいっていたら場合によっては投影された座標に変換しないとメートル単位の処理は
うまくいかないかもしれないので、必要に応じて座標系の変換とか形式をGeoPackageとかに変更しておくと
いいと思います。

オーバーレイとか選択を行うと結果のレイヤができます。
結果のレイヤをたとえば CSV形式とかExcel形式で保存すれば結果の属性情報が出力できるとか。
2022年7月16日土曜日 22:38:49 UTC+9 Maiko N:

Maiko N

unread,
Jul 21, 2022, 9:00:57 PM7/21/22
to QGIS初心者質問グループ
はじめまして、ご回答ありがとうございます。

グラフィカルモデラ―…!こんなものがあったのですね。
仰る通り、
pythonを使わずとも、これを駆使すればやりたい事を実行できそうです。
教えてくださり、ありがとうございます。

QGIS、知らない機能がたくさんあり、
使いこなせたら大変便利そうです。
>結果のレイヤをたとえば CSV形式とかExcel形式で保存すれば結果の属性情報が出力できるとか。
これも触ってみないと気づきませんでした。
ありがとうございます。

また詰まり事項あったらご相談させてください。

2022年7月20日水曜日 19:14:49 UTC+9 yoichi...@gmail.com:
Reply all
Reply to author
Forward
0 new messages