Loading [MathJax]/extensions/Safe.js
MENU

複数のベクターデータ間で、属性テーブルの値の演算をやってみる – GIS教材


QGISを使ってみます。


●複数のShapeでベクターを読み込む場合

データは、tokyoのtokyo_23ku_jgd2011_9 から空間オブジェクトの選択と保存で切り出した

墨田区と台東区のデータを使ってみます。

この2つのデータを

2つのポリゴンを結合(Merge)

マージしたポリゴンをデイゾルブ(Dissolve)する(融合)

を使って1個のデータにまとめておきます。

こんな感じです。

ちなみに、

墨田区データ

台東区データ

融合レイヤの属性テーブルを開きます。

こんな感じで、2つのデータが一緒になったテーブルができています。

ここでフィールド計算機を開きます。

墨田区と台東区の人口を合計してみます。

出力フィールド名 -> total_populationとでもしておきます

出力フィールドタイプ -> 当然、整数値です

「フィールドと値」で2つの人口のフィールド値を合計

こんな感じです、新しいフィールドが追加されて値が表示されています。

 


●1つのShapeに複数のポリゴンでデータがある場合

サンプルデータベース

このサンプルは駅情報(station)と東京23区のポリゴンと人口や面積などのデータ(tokyo)を持った2つのShapeファイルをデータベース化したファイルです。

QGISのDBマネージャーで読み込んで、tokyoのみキャンバスに追加

SpatiaLiteでSQLのQGISでのデータベース接続を参照

 

北区、板橋区、練馬区、台東区の4つのデータのみ使う場合

Shift+クリックして選択

個別に選択できないときは

ベクタ->ジオメトリツールー>マルチパートをシングルパートに…

まずこれらを結合します。

ベクタ->空間演算ツールー>和

「選択した地物のみ」結合します。

 

フィールド計算機を開いて各populationを合計

こんな感じです。

 

 

 


ベクターデータの数が多いと、大変です。

そういう時は、Excelなどでやった方がいいかもしれません。

複数のデータをCSVで保存する場合は、マージ -> ディゾルブ ではなく、

ベクターの結合をします。

メニュで、ベクタ -> データ管理ツール -> ベクタレイヤの結合 …

できた「結合された」レイヤで右クリックしてエクスポートから地物の保存を選んで、CSVで保存

 

以上です

 


 

Be the first to comment

Leave a Reply

Your email address will not be published.


*