QGIS中級編

フィールドとつなげるQGIS
株式会社 MIERUNE
三宅 光葉

今日のゴール

フィールドでの調査結果と地図を組み合わせた資料を作成できるようになる

2

今日のデータ

C:/TEMP に保存、解凍してください3

メモ• 質問はいつでもどうぞ• 環境によって動作が異なる可能性があります4ハンズオンの構成
1. FWの事前準備• 現場の地図を用意する• データの基本情報を知る• 属性フォームの編集

2. FWの結果を整理• 座標付き写真を取り込む

3. AndoroidアプリQFieldをさわってみる
4. 印刷用資料を作る

5. おまけ• 課題• お役立ち情報51. FWの事前準備 – 現場の地図を用意する【ここで学ぶこと】• XYZタイルの使い方• ネット配信されているタイル地図をQGISで読み込む

6

1. FWの事前準備-現場の地図を用意する• XYZタイルをQGISで使う

7

1. FWの事前準備 - 現場の地図を用意する
XYZタイルの新規接続（MIERUNE地図）
1. ブラウザパネル > XYZ tiles を右クリック
2. 新しい接続 > XYZ接続 のウィンドウで名前とURLを入力 > OK
名前：MIERUNE mono
URL：
https://tile.mierune.co.jp/mierune_mono/{z}/{x}/{y}.png
3. ブラウザパネルに追加された「MIERUNE mono」をダブルクリック【ネットワークにつなげない場合】
1. C:/TEMP/QGISinField/data/mierune_mono.mbtil
es を地図に追加
8

1. FWの事前準備 - 現場の地図を用意する

9

1. FWの事前準備 - 現場の地図を用意する

10

1. FWの事前準備 – データの基本情報を知る【ここで学ぶこと】• レイヤプロパティの情報タブ• データの情報を見てみる• 地物情報表示ツールの使い方• マップ上の選択地点の情報を表示する

11

1. FWの事前準備 – データの基本情報を知る
1. C:/TEMP/QGISinField/data/dem.tif を読み込む

12

1. FWの事前準備 – データの基本情報を知る
2. demレイヤのレイヤプロパティを開く
3. 情報タブを見てみる

13

1. FWの事前準備 – データの基本情報を知る
4. 地点情報表示ツールを選択
5. マップ上をクリック

14

1. FWの事前準備 – DEMのスタイルを変更する【ここで学ぶこと】• ラスタのスタイル• 単バンドグレー• 混合モード151. FWの事前準備 – DEMのスタイルを変更する
1. レイヤプロパティ > シンボロジ
2. 色グラデーションで「白から黒」を選択
3. カラーレンダリングの混合モードで「乗算」を選択
4. OKクリック16

1. FWの事前準備 – DEMのスタイルを変更する

17

1. FWの事前準備 – DEMのスタイルを変更する【ここで学ぶこと】• DEMから等高線を作る方法• プロセッシングの機能を使ってみる

18

1. FWの事前準備 - DEMから等高線を抽出する
1. プロセッシングツールボックスを表示

2. GDAL > ラスタ抽出
> 等高線

19

1. FWの事前準備 - DEMから等高線を抽出する
3. 入力ラスタ > dem
4. バンド番号 > バンド1 (Gray)
5. 等高線の間隔 > 10.0
6. 出力ファイル名 >C:/TEMP/QGISinField/data/contour.shp

20

1. FWの事前準備 – DEMから等高線を抽出する

21

1. FWの事前準備 - DEMから等高線を抽出する
7. 追加されたレイヤの名前を右クリック

8. レイヤの名前を変更> 「等高線」

221. FWの事前準備 – 等高線の太さを変更する【ここで学ぶこと】• CASE文の書き方• 既存の属性値を条件にして新しい属性を追加する• 属性を変数として利用する• 新しく追加した属性値に基づいて表現を変える

23

1. FWの事前準備 – 等高線の太さを変更する
1. 等高線レイヤを編集モードにする編集モードの切替ボタン

2. フィールド計算機を起動

24

1. FWの事前準備 – 等高線の太さを変更する
3. 出力フィールド名： width
4. 出力フィールドタイプ：小数点付き数値
5. 100mごとに太線で描画する
太さのフィールド計算機に以下の式を入力

CASE
WHEN "ELEV" /100 IN (1,2,3,4,5,6,7,8,9)
THEN 0.66
ELSE 0.26
END
6. OK クリック
7. 等高線レイヤの編集モードを解除

25

1. FWの事前準備 – 等高線の太さを変更する

26

1. FWの事前準備 – 等高線の太さを変更する
フィールド計算機における条件分岐の式• CASE WHEN 条件式 THEN 結果 END
条件式に一致するとき、結果を返す
Tips• WHENで指定した条件に当てはまらないとき、を指定したい場合は ELSE を使う

27

1. FWの事前準備 – 等高線の太さを変更する
1. 等高線レイヤプロパティを開く
2. シンボロジ > 幅の右端をクリック
3. フィールドの型 > width にチェックマーク

28

1. FWの事前準備 – 等高線の太さを変更する

29

1. FWの結果を整理 – 記録用レイヤを作る【ここで学ぶこと】• 現場情報を記録するためのレイヤ―を作る• ポイントレイヤを作成する• フィールドを作る• 属性フォームを編集して入力の補助をする• チェックボックス、日付、アタッチメント等

30

1. FWの結果を整理 – 記録用レイヤを作る
1. 新規シェープファイルの追加をクリック
2. ファイル名をC:¥TEMP¥point.shpとして OK

31

1. FWの結果を整理 – 記録用レイヤを作る
3. レイヤプロパティ> ソースフィールドタブを開く
4. 編集モード > フィールドの追加をクリック

5. フィールドを追加する

32

1. FWの結果を整理 – 記録用レイヤを作る
6. 日付フィールド• 名前：date• タイプ：日付

7. 時刻フィールド• 名前：time• タイプ：テキスト• 長さ：12

8. 写真フィールド• 名前：photo• タイプ：テキスト• 長さ20033

1. FWの結果を整理 – 記録用レイヤを作る
9. プルダウンフィールド• 名前：pulldown• タイプ：テキスト• 長さ：20

10. チェックボックスフィールド• 名前：checkbox• タイプ：整数(integer)• 長さ：134

1. FWの結果を整理 – 記録用レイヤを作る
11. 利用可能なウィジェット > Fields > date35

1. FWの結果を整理 – 記録用レイヤを作る
12. 一般情報 > 別名「日付」
13. ウィジェットタイプ > 「日付/時刻」
14. フィールド形式 > 「日付」
15. ウィジェットの表示 > 「デフォルト」
16. カレンダーのポップアップに✔
17. 既定値に以下の式

to_date(now())

36

1. FWの結果を整理 – 記録用レイヤを作る
18. 時刻フィールドの設定

to_time(now())
37

1. FWの結果を整理 – 記録用レイヤを作る
19. 写真フィールドの設定

38

1. FWの結果を整理 – 記録用レイヤを作る

39

1. FWの結果を整理 – 記録用レイヤを作る
20. プルダウンフィールドの設定

40

1. FWの結果を整理 – 記録用レイヤを作る
21. チェックボックスフィールドの設定

41

1. FWの結果を整理 – 記録用レイヤを作る
22. 地物を追加してみる• マップにポイントを追加する

23. フィールドウィジェットの設定が反映されていることを確認する

42

2. QField

43

2. QField
QFieldでできること• QGISのプロジェクトを閲覧する• ポイントを追加する• 追加したポイントの属性を編集する• カメラを起動して、写真を登録する

https://qfield.org/
44

2．QField – サンプルプロジェクトにポイントを追加【ここで学ぶこと】• プロジェクトを開く• 閲覧モードと編集モード• ポイントの追加と属性の編集

45

2．QField – サンプルプロジェクトにポイントを追加

1. Qfieldのアイコンをタップして起動

2. online_servay.qgs をタップしてプロジェクトを開く

46

2．QField – サンプルプロジェクトにポイントを追加

3. 閲覧モードにする

4. レイヤパネルを閉じてマップを表示する

47

2．QField – サンプルプロジェクトにポイントを追加

5. レイヤパネルを表示
6. 編集モードにする
7. QField users レイヤを選択
8. = をタップして地図に戻る

48

2．QField – サンプルプロジェクトにポイントを追加

5. ポイントの追加地点に十字マークを合わせる
6. 追加ボタンをタップ

49

2．QField – サンプルプロジェクトにポイントを追加

7. 属性情報を入力
8. チェックマークをタップして追加完了

50

2．QField – オリジナルプロジェクトを使う【ここで学ぶこと】• QField用プロジェクトの作成とコピー• デバイスに保存したプロジェクトの開き方• 地物を追加してみる• 日付と時刻のオートフィル• カメラ• チェックボックスとプルダウン

51

2．QField – オリジナルプロジェクトを使う

1. QGISプラグイン QField Sync でパッケージング
2. ディレクトリを指定して実行
3. zip化52

2．QField – オリジナルプロジェクトを使う

今回はzipファイルを用意しています
1. SDカードからQField_project.zipをインポート
2. デバイスのDownloadフォルダに解凍

53

2．QField – オリジナルプロジェクトを使う

3. QField を起動して、解凍したフォルダから
sample_qfield.qgsを開く

4. 地物を追加してみる

54

2．QField – オリジナルプロジェクトを使う

3. 地物を追加してみる• 日付、時刻は自動入力• 写真フィールドに画像の追加またはカメラを起動• プルダウンとチェックボックス• 時刻フィールドの日付は無視します55

2．QField – オリジナルプロジェクトを使う

4. 追加した地物を確認する• 時刻、OK?

56

2．QField – オリジナルプロジェクトを使う

4. デバイスからPCに取り込む• プロジェクトを含むフォルダをzip化• PCにコピー

今回はスキップ。

先ほどのプロジェクトを継続して使います。

57

3. FWの結果を整理 – ジオタグ付写真の取り込み【ここで学ぶこと】• ジオタグ付き写真を取り込む• 写真をポイントレイヤとして取り込む• 写真レイヤをの地物を入力用レイヤにコピー• フィールドをそろえる• 属性値を計算する• 地物をコピー58

3. FWの結果を整理 – ジオタグ付写真の取り込み

1. プロセッシング > 「photo」で検索
2. ジオタグ付き写真を選択

59

3. FWの結果を整理 – ジオタグ付写真の取り込み

3. 写真のあるフォルダを指定 > 実行
C:¥TEMP¥QGISinField¥data¥photo→レイヤパネルに「出力レイヤ」が追加される※注意
スクラッチレイヤ(仮レイヤ)はファイルとして保存されていないので、プロジェクトを閉じると消失する。
60

3. FWの結果を整理 – ジオタグ付写真の取り込み

4. 属性テーブルを確認する

61

3. FWの結果を整理 – ジオタグ付写真の取り込み

5. フィールド計算機を開く
6. photoフィールドを更新する• 入力用ポイントレイヤのphotoフィールドに合せる• 起点はプロジェクトのパス‘photo’ || ‘/’ || “filename” || ‘.jpg’62

3. FWの結果を整理 – ジオタグ付写真の取り込み

7. 属性テーブルを確認する

63

3. FWの結果を整理 – ジオタグ付写真の取り込み

8. dateフィールドを追加する
to_date(“timestamp”)

64

3. FWの結果を整理 – ジオタグ付写真の取り込み

9. timeフィールドを追加する
right(“timestamp”, 12)65

3. FWの結果を整理 – ジオタグ付写真の取り込み

10. 属性テーブルを確認する

66

3. FWの結果を整理 – ジオタグ付写真の取り込み

11. 地物をコピー&ペーストする• 写真レイヤを選択して ctl + A > ctl + C• 入力用のポイントレイヤを選択> 編集モード > ctl + V

3. FWの結果を整理 – ジオタグ付写真の取り込み

12. 属性テーブルを確認する

コピーした地物の属性が引き継がれていること
を確認する
68

3. FWの結果を整理 – ラベルを追加する【ここで学ぶこと】• ラベルの使いと装飾• ラベルを追加• ラベルを動かす

69

3. FWの結果を整理 – ラベルを追加する
1. レイヤプロパティ > ラベル > 単一のラベル

70

3. FWの結果を整理 – ラベルを追加する
2. 文字の大きさやフォントを変えてみる

3. バッファを追加する

71

3. FWの結果を整理 – 引出し線を書く【ここで学ぶこと】• ジオメトリジェネレータの使い方• シンボルのレイヤを重ねる• 引出し線の書き方

72

3. FWの結果を整理 – 引出し線を書く

73

3. FWの結果を整理 – 引出し線を書く• シンボロジのジオメトリジェネレーター• 表現としてのポリゴンやラインを作る機能• ポイントやライン、ポリゴンを組み合わせた図形をシンボルとして使うことができる

注意点• 地物やレイヤが新規に追加されるわけではない• スタイルとしてプロジェクトに保存される

74

3. FWの結果を整理 – 引出し線を書くレイヤプロパティのシンボロジ
1. 緑色のプラスマークをクリック
2. シンボルレイヤタイプはジオメトリジェネ
レータを選択3. ジオメトリタイプはラインストリング/マル
チラインストリングを選択

75

3. FWの結果を整理 – 引出し線を書く
4.

フィールド計算機に以下の式を書く• make_line(始点, 終点)
始点から終点までラインを作る• make_point(X座標, Y座標)
(X座標, Y座標)にポイントを作る• $x, $y
当該地物のX座標、Y座標を取得する• auxiliary_storage_labeling_positionx , y
当該地物のラベルのX座標、Y座標を取得する

make_line(make_point($x, $y),make_point( "auxiliary_storage_labeling_positionx" ,"auxiliary_storage_labeling_positiony" ))76

3. FWの結果を整理 – 引出し線を書く

123477

3. FWの結果を整理 – 引出し線を書く
5. ラベル > 座標X > 編集
> フィールド計算機の値をコピーして使う"auxiliary_storage_labeling_positionx“

783. FWの結果を整理 – 引出し線を書く
始点 ($x, $y)

終点(auxiliary_storage_labeling_positionx ,auxiliary_storage_labeling_positiony)793. FWの結果を整理 – 引出し線を書く• 引出し線の出る位置を調整する

80

3. FWの結果を整理 – 引出し線を書く
6. 引出し線の出る位置を調整する
配置 > データで定義された > 整列 > 編集
水平方向 : ‘Center’
垂直方向 : ‘Half’81

3. FWの結果を整理 – 引出し線を書く
7. ラベルとダイアグラムの移動ツールを使ってラベルの位置を調整する

8. 移動したいラベルをドラッグ&ドロップ82

4. 資料を作る – プリントレイアウト【ここで学ぶこと】• プリントレイアウトの作り方• アイテムの配置• マップ、方位記号、スケールバー• 地図の表示領域の調整

83

4. 資料を作る – プリントレイアウト
1. プロジェクト > 新規プリントレイアウト

2. 名前を「layout」にする

84

4. 資料を作る – プリントレイアウト

アイテムの選択と移動

地図アイテム内の移動

縮尺記号の挿入
方位記号の挿入

地図アイテムの挿入85

4. 資料を作る – プリントレイアウト
3. 新規にマップを追加するツールを選択
4. 紙面上をドラッグ&ドロップ

86

4. 資料を作る – プリントレイアウト
5. 地図の表示領域を調整する
1. アイテムのコンテンツの移動で動かす

2. マップキャンバスと同期させる• マップキャンバスからレイアウトの地図へ• レイアウトの地図からマップキャンバスへ

3. 地図を回転させる

87

4. 資料を作る – プリントレイアウト
6. 各種アイテムの追加• 方位記号、スケールバー

7. 方位記号の挿入
8. 方位記号とマップの方向を同期

88

4. 資料を作る – プリントレイアウト
8. スケールバーの調整• 単位とラベル• セグメントの数と大きさ894. 資料を作る – 地図帳の設定【ここで学ぶこと】• 地物の属性値を表示する• テキストアイテム• 写真の表示設定• テキストアイテムにHTMLを設定• 地図帳の設定• 被覆レイヤを設定する• プレビューで確認• 出力• PDF、PNGに書き出し保存する
90

4. 資料を作る – 地図帳の設定
1. ラベルアイテムを紙面左上に追加
2. メインプロパティに以下の式を入力[% "time" %]3. 外観 > フォント

見やすい表示に整える

91

4. 資料を作る – 地図帳の設定
4. ラベルアイテムを紙面右下に追加
5. メインプロパティにHTMLを記述する<img src="file:///[% @project_home %]/[% "photo" %]"style="width: auto; height: 100%;" />6. HTMLとしてレンダリングする ✔

92

4. 資料を作る – 地図帳の設定
7. 地図帳の設定ボタンをクリック
8. 地図帳タブ > 地図帳を作成する ✔
9. カバレッジレイヤ（被覆レイヤ） > point
10. 可能であれば一つのファイルに出力 ✔

93

4. 資料を作る – 地図帳の設定
11. 地図アイテムを選択 > 地図帳による制御 ✔

12. 地図帳のプレビューをクリック
13. ページを操作して地物とテキストアイテムが対応していることを確認

94

4. 資料を作る – 地図帳の設定
14. PDFとして地図帳をエクスポート• 1ファイルとして出力される

15. 画像として地図帳をエクスポート• 地物に対応する数だけ画像が出力される

95

4. 資料を作る – 地図帳の設定

96

５．おまけ – 課題

• ポイント追加時にx、ｙ座標を属性として自動で取得する• 写真撮影場所を時系列でつないで調査ルートを可視化する97５．おまけ – お役立ち情報• QGIS公式HP バージョンの変更履歴
https://qgis.org/ja/site/forusers/visualchangelogs.html

98５．おまけ• 属性のリファクタリング

99

５．おまけ• 属性値重複を削除

100

５．おまけ• ブラウザパネルからプロパティを開く

101