qgis training 2/3
DESCRIPTION
QGIS研修 中級コース 2/3TRANSCRIPT
QGIS中級
国土交通大学校
GIS演習その2
嘉山陽一 髙橋洋二
QGIS中級 2
プログラム
1. オンラインデータの取得2. データサービスの利用3. ベクトルデータの操作4. ラスタデータの操作5. Exif情報の利用6. 応用操作
2013年7月
3.ベクトルデータの操作
• 前準備• データ編集
デジタイズ(スナップ、ポリゴン重なり禁止
、トポロジ編集)
属性項目、フォーム指定
・テーブル操作
CSVデータ読み込み(OGR)
テーブル結合 テーブル演算
テーブルマネージャ
グラフ表示
2013年7月 QGIS中級 3
前準備
• 大量のベクトルデータを表示すると処理が遅い
• 処理高速化のための工夫をいくつか紹介
• 表示更新が必要ない作業中はレンダリングオフ
• 空間インデックスを作成する
• データが多いレイヤは表示する縮尺を指定する
2013年7月 QGIS中級 4
レンダリングの停止
2013年7月 QGIS中級 5
ここのチェックボックスをオフにしておくと再描画が行われない。設
定を変えると再描画が行われる。多くの設定を変える場合レンダ
リングをオフにして設定作業が終了してから再度このチェックボッ
クスをオンにすると効率がよくなる
空間インデックスの作成
• 大量の地物を保有するレイヤは空間インデックスを作成するかどうかでアクセス速度が異
なる
2013年7月 QGIS中級 6
レイヤを選択してプロパティダイアログを
表示.一般情報タブで”空間インデックスの作成”ボタンをクリックすると選択レイヤの空間インデックスが作成され
る.QGIS1.7.4ではShapeファイルのパス名,ファイル名に日本語がはいっていると空間インデックスの作成に失敗するので
ファイル名は半角アルファベット,数字で作成したほうが無難.
縮尺依存レンダリングの使用
• 指定レイヤを表示する縮尺を指定する。
小縮尺で表示しても表示がつぶれるようなレイヤは表示する縮
尺を制限する。指定すると小縮尺表示時の地図表示速度が向
上する。
2013年7月 QGIS中級 7
レイヤを選択してプロパティダイアログを
表示.一般情報タブで”縮尺依存レンダリングの使用”チェックボックスをチェックすると指定を行える.
基盤地図情報を読み込んだプロジェクト
で設定を行う
ベクタデータの編集
• ベクタレイヤの編集手順
2013年7月 QGIS中級 8
レイヤ選択
編集モードON
データ編集
編集モードOFF
更新確認
レイヤデータ更新
デジタイズオプション
• 地図で地物をデジタイズする時に編集をやりやすく
するためのオプションが指定できる。
• スナップオプション 地図上をクリックした時に近く
の他の地物の頂点やライン上の座標に入力座標を
丸めこむ閾値の指定
• 交差禁止オプション ポリゴンで重なりを禁止するオ
プション。既存ポリゴンに重なる形にポリゴンを入力
すると重なり部分が捨象され境界が既存ポリゴンと
同じ座標列になる。
• トポロジ編集 隣接するポリゴンの隣接辺座標が
同じ場合、共通頂点の座標移動をすると両方のポリ
ゴン座標が同時に移動する機能
2013年7月 QGIS中級 9
デジタイズオプションの設定
• メニュー “設定→スナップオプション”
2013年7月 QGIS中級 10
行政区画ポリゴン編集で試す
• レイヤ行政区画を選択 編集モード変更
2013年7月 QGIS中級 11
ノードツール使って頂点移動
2013年7月 QGIS中級 12
トポロジ編集が有効の場
合隣接ポリゴンの同一点
は片方を移動するともう片
方も一緒に動く
ポリゴンツールで既存ポリゴンと重なるポリゴ
ンを入力
2013年7月 QGIS中級 13
交差禁止がオンのポリゴ
ンレイヤは既存ポリゴンと
重なるポリゴンを描画する
と重なり部分は切り捨てら
れる
レイヤ属性編集
• 国土数値情報 浸水想定区域 A31-12_14
2013年7月 QGIS中級 14
データ表示
2013年7月 QGIS中級 15
レイヤのタイトル指定
2013年7月 QGIS中級 16
カラムA31_001描画定義
2013年7月 QGIS中級 17
浸水深ランクの
コード番号別に
描画定義
浸水想定区域が表示
2013年7月 QGIS中級 18
カラムの別名を指定
2013年7月 QGIS中級 19
カラムの編集方法指定
2013年7月 QGIS中級 20
バリューマップの指定
2013年7月 QGIS中級 21
バリューマップ設定が有効になっている
2013年7月 QGIS中級 22
属性値がバリューマップで指定した文字
列に置き換わっている
テーブル操作
• QGISのベクトルレイヤでは地物の図形データ対応する属性データをレイヤとして利用す
る
• 図形データとペアになっていない属性データテーブルをレイヤとしてロードすることができ
る。
• ロードした属性データに図形データとのリンクキーがあればシステム中で属性データと図形
データをリンクして利用できる。
2013年7月 QGIS中級 23
国勢調査データでテーブル操作を行う
2013年7月 QGIS中級 24
国勢調査のデータとしてCSVファイルを2つ、Shapeファイルを1個ダウンロードしたのでこれらを利用する. ShapeファイルとCSVファイルは別々にロードできる.
国勢調査shapeファイルのロード• メニュー “レイヤ→ベクタレイヤの追加”で
A002005212010XYSWC14206.zipを解凍してできたh22ka14206.shpをロードする
2013年7月 QGIS中級 25
ダウンロードしたCSVファイル解凍• tblT000572C14206.zip と
tblT000573C14206.zip を解凍する
2013年7月 QGIS中級 26
ファイルは以下の場所にある
c:¥QGIS20130709¥data¥kokuseityousa
572C 男女別人口,世帯数
2013年7月 QGIS中級 27
573C 年齢男女別年齢 etc…
2013年7月 QGIS中級 28
tblT000572C14206.txtを加工• tblT000572C14206.txt を
tblT000572C14206.csv にコピー
2013年7月 QGIS中級 29
2行目(日本語カラム名)削除
tblT000572C14206.csvを加工
2013年7月 QGIS中級 30
データが無い場所に –が記入されているが数値フィールドだ
とインポート時にエラーになる
から除去
Csvファイルのロード• QGISではベクタレイヤの追加でCSVファイルを読み込み利用することができる.
2013年7月 QGIS中級 31
ただし
• 普通に読み込むとすべてのフィールドが文字型になってしまう
2013年7月 QGIS中級 32
表の中の値を数値とし
て扱うことができない
Csvファイルのフィールド
データ型指定方法
QGISでロードするCSVファイルのフィールド型指定を
行いたい場合はcsvtファイルというテキストファイルに
フィールドの型指定を行うと可能である.https://sites.google.com/site/qgismemo/040-bian-ji/shu-xingdetanicsvmatahadbffairuwo-jie-heshitaihttp://anitagraser.com/2011/03/07/how-to-specify-data-types-of-csv-columns-for-use-in-qgis/http://d.hatena.ne.jp/Bravo-Astro/20120310/1331355187
tblT000572C14206.csv のフィールド型指定を行う場
合は tblT000572C14206.csvt という名前のテキスト
ファイルを同じフォルダに作り,そこの中でカンマ区切り
でフィールドの型を指定する.その状態でベクタレイヤ
の追加で tblT000572C14206.csv をロードすると指定したフィールド型が反映する.
2013年7月 QGIS中級 33
572C 男女別人口,世帯数用csvt例
2013年7月 QGIS中級 34
テーブル結合
• 国勢調査のshapeファイルとcsvファイルから読み込んだテーブルは共通のキー項目を持
つのでテーブル結合を行える.これによって地図と直接リンクしていないテーブルの値を空
間的に扱うことができる.
2013年7月 QGIS中級 35
テーブル結合手順
2013年7月 QGIS中級 36
Shapeファイルレイヤを選択した状態でレイヤプロパティを開く.結合タブを開き+ボタンをクリックすると結合相手と結合用フィールドの選択ダイアログが表示.ここで結合を指定する
結合した結果が表や地図で利用できる
2013年7月 QGIS中級 37
表データの応用
• 結合して作成した表データを応用する
• 最初に作成した結合表を別名で保存する
• レイヤ選択 メニュー “レイヤ→名前をつけて保存”
2013年7月 QGIS中級 38
グラフの表示
2013年7月 QGIS中級 39
レイヤプロパティで
ダイアグラムタブを選択
男女別人口比率グラフが表示
2013年7月 QGIS中級 40
パイの大きさは人口総数に比例
表計算
• テーブルのフィールド名を利用して計算式を定義。計算結果をテーブルに格納することができる。格納は既存フィールド
の値置き換えか新規フィールドへのデータ追加になる.
2013年7月 QGIS中級 41
レイヤ選択の後に属性一覧
表示.編集モードをONにした上で“フィールド計算機のオー
プン”ボタンをクリック
計算式を定義して実行すると結果が
フィールドに格納される
2013年7月 QGIS中級 42
計算結果を地図表示
2013年7月 QGIS中級 43
フィールドの整理
• 結合処理で大量のフィールドが生成• 不要なフィールドを削除したい場合
• フィールド名を改名したい(日本語フィールド名だとエラーになるプログラムがある)
TableManagerプラグインで作業ができる
2013年7月 QGIS中級 44
TableManagerプラグインの起動
• 作業レイヤ選択の後 メニュー “プラグイン→Table→TableManager”
• メニューに無い場合はプラグインの管理やPythonプラグインを呼び出すで当該プラグインを使えるようにする
2013年7月 QGIS中級 45
4.ラスタデータの操作• バーチャルラスタの作成
• ピラミッド作成
• 段彩図 陰影図 陰影段彩図の作成
• 等高線作成
• ジオリファレンス
2013年7月 QGIS中級 46
バーチャルラスタ
• 複数のラスタファイルを仮想的に1個のラスタデータとして扱えるようにする機能。
• GDALユーティリティコマンド gdalbuildvrt で作成可能
http://www.gdal.org/gdalbuildvrt.html
• 作成されたバーチャルラスタファイルはGDALでアクセス可能なラスタデータとして扱われ
る
• QGIS以外のプログラムでもGDALで扱える形式を使えるソフトウェアで利用できる。
2013年7月 QGIS中級 47
バーチャルラスタの構築
• メニュー “ラスタ→Miscellaneous→バーチャルラスタの構築(カタログ)
2013年7月 QGIS中級 48
入力ファイル,出力ファイルを指定
2013年7月 QGIS中級 49
バーチャルラスタの表示
2013年7月 QGIS中級 50
ラスタをグレースケールで表示
2013年7月 QGIS中級 51
ピラミッドの作成
• ラスタデータの表示を高速化するために元画像を縮小した画像を数段階の縮尺で用意し
て利用する。(数段階の縮小画像を重ねた様
子がピラミッドのようにたとえられるからピラミ
ッドという言い方がされている)
2013年7月 QGIS中級 52
ピラミッドの作成
• 対象ラスタレイヤの選択→メニュー “レイヤ→
プロパティ→ピラミッド”
2013年7月 QGIS中級 53
作成したい画像解像度を
右側のリストでクリックし
て指定.必要に応じてリサンプリング方法を指定.”ピラミッド作成”ボタンをクリックするとピラミッド作成
が開始する
ピラミッドの完成
2013年7月 QGIS中級 54
ピラミッドが完成するとピ
ラミッドアイコンに赤い
チェックがなくなった状態
に表示になる。
以後、当該レイヤの表示
速度が高速化する
ピラミッド作成(別の方法)• メニュー “ラスタ→Miscellaneous→オーバービューの作成(ピラミッド)
2013年7月 QGIS中級 55
ピラミッド作成はGDALの gdaladdoユーティリティを利用して行っている.よってGDALでサポートされているファイル形式を扱えるプログラムなら
ば作成したピラミッドは共通で利用
できる.下部ウィンドウに表示される文字列
はコマンドラインから指定パラメータ
でgdaladdoを起動する場合の文字列となる.大量のファイルに対して同様の処理を行いたい場合はここに表
示される文字列を利用してバッチ処
理を作成して実行することが効率的
である.
段彩図の作成
• 標高モデルの標高数値の値を利用して高低を表現
2013年7月 QGIS中級 56
プロパティのスタイルタブ
でカラーマップを指定した
後カラーマップタブでカ
ラーマップを指定する
標高数値の色分け区分指定
2013年7月 QGIS中級 57
エントリ数と分類モードを
指定して分類ボタンクリッ
クでカラーマップができる
色分けのしきい値やラベル、
色は編集可能.OKまたはApplyクリックで描画更新
高さ値で段彩図描画
2013年7月 QGIS中級 58
色や分類の変更
2013年7月 QGIS中級 59
色分けのしきい値やラベル、
色は編集して再表示
描画スタイルは保存・再利用可能
2013年7月 QGIS中級 60
陰影図の作成
• 数値標高モデルのラスタレイヤを利用して陰影図(shade)を作成する
2013年7月 QGIS中級 61
メニューメニューメニューメニュー “ラスタラスタラスタラスタ→解析手法解析手法解析手法解析手法→DEM(テリアンモデルDEM(テリアンモデルDEM(テリアンモデルDEM(テリアンモデル)
出力ファイル名は出力ファイル名は出力ファイル名は出力ファイル名は
書き込み可能フォルダに書き込み可能フォルダに書き込み可能フォルダに書き込み可能フォルダに
拡張子拡張子拡張子拡張子 .tif でファイル名でファイル名でファイル名でファイル名
指定指定指定指定
陰影図が作成される
2013年7月 QGIS中級 62
陰影図の透過性をあげて
陰影段彩図にする
2013年7月 QGIS中級 63
陰影図の下に段彩図が重なって表示された状陰影図の下に段彩図が重なって表示された状陰影図の下に段彩図が重なって表示された状陰影図の下に段彩図が重なって表示された状
態で陰影図レイヤのプロパティ変更。態で陰影図レイヤのプロパティ変更。態で陰影図レイヤのプロパティ変更。態で陰影図レイヤのプロパティ変更。
プロパティの“透過性プロパティの“透過性プロパティの“透過性プロパティの“透過性”タブで全体の透過率のタブで全体の透過率のタブで全体の透過率のタブで全体の透過率の
数値を下げると陰影図の透過度があがり、陰数値を下げると陰影図の透過度があがり、陰数値を下げると陰影図の透過度があがり、陰数値を下げると陰影図の透過度があがり、陰
影段彩図になる。影段彩図になる。影段彩図になる。影段彩図になる。
等高線作成
• 数値標高のラスタデータから等高線を作成することができる
2013年7月 QGIS中級 64
メニューメニューメニューメニュー “ラスタラスタラスタラスタ→Extraction →等高線等高線等高線等高線”
等高線が表示される
2013年7月 QGIS中級 65
ジオリファレンス
• 位置座標情報を持っていない地図画像(地図や航
空写真、衛星写真等)に位置座標を付与してGIS上で扱えるようにすることができる.
• 画像とGISの地図上で対応する地点を何点か指定
した上で変換処理を行うことで画像に位置情報を付
与する.
• 画像にゆがみがあったり画像と参照地図の座標系
が異なる場合,指定対応点情報を利用して画像を変
形してGIS上に読み込むことが可能である.• ただし2次元上での変換のみサポートしているため
変換に標高は利用されていない.
2013年7月 QGIS中級 66
ジオリファレンサの起動
• 位置参照しやすい地図を表示したうえでメニュー”プラグイン→GeoReferencer→GeoReferencer” 起動
2013年7月 QGIS中級 67
ジオリファレンサに画像読み込み
• メニュ- “ファイル→ラスタを開く” でラスタ画像を指定.座標参照系を聞かれるのでここでは平面直角9系(EPSG:2451)
2013年7月 QGIS中級 68
本講習では小田原市WEBページで公開されているハザードマップPDFを画像化したものを利用. ファイル名はdata/PDF フォルダ下の 20120709174158.png 元データのURLは次のとおり http://www.city.odawara.kanagawa.jp/global-image/units/99236/1-20120709174158.pdf
GCPポイントの入力
2013年7月 QGIS中級 69
画像上をクリックしてその点の座標を入力する.座標は数値入力かまたはQGISマップキャンバス上の対応点クリックでも可能
変換方法の指定
• ジオリファレンサメニュー “設定→変換の設定”で変換方法の定義
2013年7月 QGIS中級 70
変換タイプや再サンプリン
グの方法は画像のゆがみ
やタイプによって指定が異
なる.
変換実行
2013年7月 QGIS中級 71
ジオリファレンサの緑色矢印アイコンをクリックすると
変換が開始される.変換結果をQGISでロードする指定になっているとマップキャンバスに変換結果が表示
される