Qgis:指定した半径内にランダムポイントを作成

提供: dococo wiki
2016年7月3日 (日) 10:00時点におけるimported>Webmasterによる版
ナビゲーションに移動 検索に移動

はじめに

こういう用途があるか分かりませんが、仕事で必要になった事案があったので備忘録的に記録しておきます。

目的

あるポイントデータ(緯度経度)があり、そのポイントから半径xxx[m](例えば半径500m)以内に、ランダムなポイントを設定して、そのランダムポイントから半径xxx[m](例えば半径500m)の円を記載する
といった状況の作り方です。

  • 赤い線で指定された範囲内でオレンジ色の線を書くための方法です

なんで、こんなことをしたいかというと、ある情報を部外に提示するときに赤い線で指定された範囲だと中心位置が分かってしまいあまり都合が良くないので、適当に中心位置を散らして「当たらずとも遠からず」的な情報を提示するときに使用します。(なんか面倒くさい、遠回し的な情報ですが、必要に迫られて作りました)

作成方法

ポイントデータ作成

  • gis:地図データの入手で市区町村役場データ辺りのポイントデータを持ってきます
  • ダウンロードすると以下のようなファイルがダウンロードされます(例は和歌山県)
    • KS-META-P34_14-30.xml
    • P34-14_30.dbf
    • P34-14_30.prj
    • P34-14_30.shp
    • P34-14_30.shx
    • P34-14_30.xml
  • これ見れば、シェープファイル(Shape File)だと言うことが分かります。(拡張子がshp)
  • これをqgisに読み込みます

2016-07-02 22-33-13.png

  • こんな感じで地図上にプロットされます(背景地図を入れてます)
  • シェープファイルをqgisに読み込むと、見かけ上はプロットされてるけどCRS座標系(Coordinate Reference System (CRS))を合わせないと、後々メチャクチャになるので、そのレイヤを名前を付けて保存します

2016-07-02 22-52-23.png

  • CRSを「EPSG:3100: JGD2000 / UTM zone 54N」に合わせて名前を付けて保存します

2016-07-02 22-54-33.png

CRSを変えたポイントデータの読み込み

  • 先ほど読み込んだ「P34-14_30」のCRSは地理座標系(経緯度)の「JGD2000 EPSG:4612」になっています。
  • 「P34-14_30」を別名保存したCRSは投影座標系(UTM座標系)の「EPSG:3100: JGD2000 / UTM zone 54N」になっていると思います
  • 内容の差分は他のサイトにゆだねるとして、少なくとも地理座標系(経緯度)投影座標系(UTM座標系)の違いを理解し、合わせないとGIS上でおかしな表示になるので注意が必要です
  • 簡単に言うと地理座標系(経緯度)の単位は投影座標系(UTM座標系)の単位はメートル(変えられますけど)と言うことを理解しておいてください
  • そして、「P34-14_30」を別名保存したファイルを読み込みます。