GRASSビギナーズマニュアル

 本教材は、GRASS GIS入門者向けの実習用教材です。GRASSの機能やデータの読み込みなどについて解説しています。

 課題形式で使用する場合は、本教材を一読した後、課題ページへお進みください。GIS初学者は、本教材を進める前にGISの基本概念の教材を確認しておいてください。本教材を使用する際は、利用規約をご確認いただき、これらの条件に同意された場合にのみご利用下さい。

使用データ 実習をはじめる前に以下のデータをダウンロードしてください。

  • 国土地理院「 基盤地図情報 数値標高モデル 5mメッシュ 高松周辺(513440)」

    データは、香川県高松市周辺の5mDEMをエコリスのツールを用いて変換し、高松市北部周辺をトリミングしたものです。この手法については、ラスタデータの分析の教材をご参照ください。データの座標系は、世界測地系の平面直角座標Ⅳ系に設定しています。

  • 国土交通省国土政策局「国土数値情報(香川県 道路データ)」

    データの座標系は、世界測地系の平面直角座標Ⅳ系に設定しています。変換手法は、空間データの教材にまとめています。

スライド教材

スライドのダウンロードはこちら


GRASS GISとは?

 GRASS GISは、無償で利用できるオープンソースGISです。ラスタデータやベクタデータに関連する処理の機能が充実しており、地形解析や画像分類等で活用されています。本教材の中心となっているQGISでは、プラグインからGRASS GISの機能を呼び出すことができます。以下の教材は、GRASS GISの入門教材として、基本機能について解説しています。GRASS GISの実践的な利用法について知りたい方は、ラスタデータの分析の教材等を参照してください。

▲メニューへもどる

インストール

 GRASS GISの公式ページ にアクセスして、GRASS GIS をダウンロードする。解凍したファイルのガイドに従ってインストールを行う。 ※QGISをダウンロードすると一緒にGRASS6.4もダウンロードされるが、この教材ではGRASS7を利用する。 インストール

▲メニューへもどる

ファイル形式について

インストール

QGISでマップセットの作成

 以下では、GRASS GISでデータを扱うために必要なマップセットの作成について解説しています。

QGIS2.8の場合は、デフォルトでGRASSのプラグインが利用できる。一方、QGIS2.10以降の場合は、QGIS Desktop2.10.1 with GRASSを起動し、プラグイン→プラグインの管理とインストールからGRASS 6を検索し、チェックをする必要がある。そのため、本教材ではQGIS2.10を用いているものが混在している。しかし、起動以外の操作においては、2.8と2.10の間に大きな違いはない。 起動する

QGISでラスタを読み込む。右下から座標系を確認し、「オンザフライCRS変換有効にする」のチェックをONにする。 画像を読み込む

新規マップセットをクリックし、マップセット名など必要項目を入力する。 マップセットの追加

GRASSデータを保存するフォルダを作成し指定する。新しいロケーション名を任意で入力する。 マップセットの設定a

データ座標系にあわせて、データの範囲を作成し指定する。新しいロケーション名を任意で入力する。 マップセットの設定b

新規マップセットに名前をつけ、マップセットの作成を完了させる。 マップセットの設定c

マップセットの追加 (新規作成しない場合)

マップセットを保存したフォルダーを参照し、位置とマップセットを追加する。 マップセットの追加

▲メニューへもどる

データの読み込み

 以下では、QGISからマップセットにデータを読み込む手法について解説しています。

ラスタデータの読み込み

QGISにロードされているラスタデータをGRASSで読み込む。 GRASS Toolをクリックし、モジュールリストを開き、r.in gdal.qgisコマンドを選択する。 ※モジュールツリーとモジュールリストは連動しているため、同様の処理を選択することが可能。QGISのバージョンによってモジュールツリー等の配置が異なる点に注意する。 ラスタ読み込みa

ロードされたレイヤ(QGISで読み込んでいるレイヤ)を選択し、出力ラスタ名を入力する。「実行」をクリックし、処理が成功したら「出力を見る」をクリックする。 ラスタ読み込みb

下の図のように、GRASSデータセットの中に、QGISで表示しているラスタを読み込むことができた(GRASSで処理できる準備ができた)。 ラスタ読み込みc

ベクタデータの読み込み

QGISにロードされているベクタデータをGRASSで読み込む。 ベクタをインポートする場合は、QGISでベクタを読み込んでおき、v.in ogr.qgisコマンドを実行する。

GRASS6.4でインポートしたベクタは、GRASS7では表示されないことがあるので注意する。 ベクタの読み込みa

処理が完了したら、「出力を見る」をクリックするとデータがQGISで表示される。 ベクタの読み込みb

▲メニューへもどる

マップセットをGRASSで表示する

 QGISで作成したマップセットをGRASS GISで読み込み、表示することができます。以下では、GRASS 7.0.1を利用し、その手法について解説しています。

GRASS GISを起動し、参照からマップセットの保存ディレクトリ(フォルダ)を選択する。今回は、すでにQGISで作成しているため、自動的にロケーションとマップセットが展開する(新規に作成する場合は、Newから作成する)。マップセットを選択し、「 Start GRASS session 」を実行する。 ベクタの読み込みb

画面説明

GRASS GISを起動すると、以下のような画面が表示される。 画面説明

▲メニューへもどる

GRASSにデータを追加する

 以下では、QGISで作成したマップセットからデータの表示について解説しています。

マップセットからラスタデータを読み込む

ラスターマップの追加から、作成したマップセットのラスタを選択し、読み込む。 GRASSラスタ読み込み

外部からデータを読み込む

以下では、外部からマップセットにデータを読み込む手法について解説しています。この処理は、QGISで作成したマップセットからデータが読み込めない場合などに有効です。

ベクトルデータのインポートから、.shpファイルを参照し、インポートする。 GRASSベクタ読み込みa

以下のようにベクトルレイヤが、マップセットに追加される。 GRASSベクタ読み込みb

▲メニューへもどる

機能説明

 GRASS GISには、QGISのように地図の表示、データ作成、分析といった機能が用意されています。以下では、それらの機能について簡単に解説しています。

機能説明a

  1. 新規マップ表示
  2. 新規ワークスペース作成
  3. ワークスペースの読み込みと書き出し
  4. マップセット内のデータ読み込み(4.の右側のボタンは読み込むデータの形式によって選択する)
  5. データの編集
  6. 属性テーブルの表示
  7. データのインポート
  8. ラスタ計算機
  9. 幾何補正

機能説明b ファイル:ワークスペース、データのインポートエクスポートなど

設定:ロケーション、作業環境の設定など

機能説明c ラスター:ラスタ処理(地形解析、水文解析など)

ベクトル:ベクタ処理(バッファ、ネットワーク分析など)

機能説明d 画像:画像の処理(色分けやRGB合成など)

3D raster:3D表示に関する処理(断面図など)

▲メニューへもどる

コマンドコンソールとモジュールツリー

 GRASS GISで処理では、コマンドコンソールやそれをツリー上にまとめたモジュールツリーが利用できます。データ分析等での使用例については、ラスタデータの分析や[ネットワーク分析]の教材で詳しく解説しているため、こちらでは説明していません。

※ レイヤツリー(レイヤが表示されるウインドウの下に切り替えがある)

コマンドコンソールとモジュールツリーa コマンドコンソール:赤枠内にコマンドを入力すると処理が実行される。入力途中で、該当するコマンドを先読みする。

モジュールツリー:赤枠内のツリーから、処理を選択する。 +ボタンをおすと処理が表示される。

▲メニューへもどる

レイヤの色分け

GRASS GISでは、QGISと同様にデータの値に合わせた配色が可能です。以下では、その手法について解説しています。

ベクタデータの色分け

ラインの色を黒から赤へ変更する。 色分けa

以下のように、ラインの色が黒から赤に変更される。 色分けb

ラスタデータの色分け

ラスタの値に応じて色分けを行うため、「Manage color rules Interactively」をクリックする。ラスターマップを選択し、分類数と値を入力する。 色分けc

左の図のように、用意されている配色を選択することもできる。また、右の図のように、任意で値を入力することもできる。 色分けd

▲メニューへもどる

3Dビュー

 GARSSでは、標高値などのデータをもつラスタを立体的に表現することができます。以下では、その手法について解説しています。

※ 使っているPCの実行環境等により、3D表示ができないことがあります。

ラスタデータの保持している値(今回の場合は、標高値)を利用して3D表示を行うため、2Dビューを3Dビューに変更する。 3Dビューa

3Dビューでは、値などを変更することや地図の視点を変更することができる。Z鉛直の値を変更すると、地形の誇張の強弱が変更できる。 3Dビューb

▲メニューへもどる

属性テーブル

 GRASS GISでもQGISと同様に属性テーブルの表示や編集ができます。以下では、その手法について解説してます。

レイヤを選択した状態で、属性テーブル表示ボタンをクリックすると、属性テーブルが表示できる。 属性テーブル

フィールドの追加

列名を入力し、データの型を選択し、加算をクリックするとフィールドが追加される。以下では、新規にlength(ラインの長さ)のフィールドを追加している(この時点では、lengthという名前の空のフィールドができている状態)。 フィールドの追加

▲メニューへもどる

フィールド演算

 以下では、フィールドの追加で作成した新規フィールドに、ラインの長さを計算する手法の解説をしています。

新規に作成したフィールドの上で右クリックし、「計算」から「ライン長」を選択する。 フィールド演算a

各路線のライン長が計算できた(統合していないため、ぶつ切りの路線になっている)。 フィールド演算b

値を用いた配色

以下では、フィールドの値を用いて色分けをする手法について解説しています。

color フィールド(文字型:varchar) を作成する。 カラーフィールドa

右クリックで、Field calculatorを選択して、国道とそれ以外で色分けを行う。 カラーフィールドb

色分け用に、分類フィールドを作成する。 分類 UPDATE データ名 SET 計算したいフィールド名 = 入力したい値 WHERE 分類に用いるフィールド = 分類に基づく値

ベクトルからカラー調整、「Manage color rules Interactively」を選択する。 分類表示

属性列をチェックし、カラーテーブルを選択すると、エラーが表示される。 属性分類a

属性テーブルを開くと、GRASSRGBのフィールドができている。 このフィールドにcolorフィールドをコピーする。 属性分類b

GRASSRGBのフィールドを選択し、列を追加をクリックする。 エラーがでるが色分けができているため、OKをクリックする。 属性分類c

▲メニューへもどる

レイアウト

 以下では、GRASS GISでのマップのレイアウトについて解説しています。

ファイルから、カートグラフィックコンポーザーをクリックし実行する。 レイアウトa

カートグラフィックコンポーザーを起動し、地図や凡例などを挿入する。 レイアウトb

  1. 地図の範囲を選択する(一番最初に設定する)。
  2. ラスタマップを追加する。
  3. ベクタマップを追加する。
  4. 凡例、方位、縮尺を追加する。
  5. 地図の書き出し(PDF)をする。

地図の範囲をドラッグして設定し、ラスタマップを追加する。 レイアウトc

ラスタマップが追加されたので、ベクタラインも追加する。マップセットから、道路ラインを選択し、加算をクリックする。 レイアウトd

ラスタマップとベクタマップの凡例を整える。 ベクタマップの凡例の表示名は、ラベルの追加から可能。 追加できたら、追加アイテムを選択し、配置を変更する。 レイアウトe

長さを設定し、単位を選択する(今回はデフォルトを使用)。 縮尺バーのデザインを選択し、OKをクリックする。 追加されたら、追加アイテムの配置を変更する。 レイアウトf

方位記号を追加する。 デザインを選択し、スタイルでサイズを整える。 追加できたら、追加アイテムを選択し、配置を変更する。 レイアウトg

配置が完了したので、PDFで書き出す(プレビューは、表示されない場合がある)。 レイアウトh

以下のように、PDFでマップが表示できる。 レイアウトi

▲メニューへもどる

参考ページの紹介

参考

  1. https://grass.osgeo.org/ 2.https://www.osgeo.jp/projects/foss4g-mext

▲メニューへもどる

この教材の課題ページへ進む

ライセンスに関する注意事項

本教材で利用しているキャプチャ画像の出典やクレジットについては、その他のライセンスについてよりご確認ください。

教材の利用に関するアンケート

 本プロジェクトでは、教材の改良を目的とした任意アンケートを実施しています。ご協力いただける方は、アンケートにお進みください。ご協力のほどよろしくお願いいたします。

※ 本アンケートの成果は、教材の改良のほか、学会での発表等の研究目的でも利用します。また、本アンケートでは、個人が特定できるような質問は設けておりません。

results matching ""

    No results matching ""