「2011-05-31:流域解析と統計値の追加」の編集履歴(バックアップ)一覧はこちら
追加された行は緑色になります。
削除された行は赤色になります。
**流域解析
前回のbasin4ha10mでは、細かくて見にくいので、
4haから9km^2にして、流域解析を行います。
Q-GISを立ち上げる。
→GRASSマップセットを選択で以下のように設定し、了解をクリックする。
Gisbase C:GRASS
位置 kushidaM
Mapset 自分の名前
→左端のアイコンの下から三番目(GRASSツールを開く)をクリックする。
→shell-GRASS-shellをクリックし、コマンドプロンプトを立ち上げる。
→コマンド上で以下のように入力する。
>g.region -p res=50
>r.watershed el=dem ba=basin9km50m th=3600
**ラスタレイヤをベクタレイヤに変換する。
>r.to.vect in=basin9km50m out=basin9km50m fe=area
すると下のような地図になります。
※左が設定前で、右が設定後
#ref(1.png,,width=400)
**面積を求める
basin9km50mの属性テーブルにareaを加えます。
>v.db.addcol basin9km50m col="area double"
※doubleは倍精度
#ref(2.png,,width=400)
このままだとnullなので、面積を属性テーブルに入れます。
>v.to.db basin9km50m op=area u=k col=area
#ref(4.png,,width=400)
※uは単位(unit)、kはkm
**トリミング
属性テーブルのareaをみると1より小さい値がありますが、それは無視してもかまわないので、取り除きます。
属性テーブルの右下のアドバンストサーチを選択します。
そうすると、以下のような画面が表示されるので、
#ref(5.png,,width=400)
フィールドのareaをダブルクリック、演算子の>をクリック、SQL where 句に1を入力してOKを押すと、
属性テーブルの面積1km^2以上の地物が選択されます。
そこで、属性テーブルの左下の「選択された部分のみ表示する」のチェックボックスにチェックすると、以下のようになります。
#ref(6.png,,width=400)
ここに表示された番号の地物を抽出します。
>v.extract in=basin9km50m out=basin9km_area li=1-3,18,20,22,46,51,53-60,62,63,65-69
見た目は変わらないですが、属性テーブルを見たら、違いがわかります。
**統計値の追加
demのデータからbasin9km_areaに標準偏差や分散を出します。
>v.rast.stats vect=basin9km_area rast=dem col=dem
これで標高の統計値を得ることができます。
#ref(7.png,,width=500)
今回はここまでです。お疲れ様でした。
-----
**流域解析
前回のbasin4ha10mでは、細かくて見にくいので、
4haから9km^2にして、流域解析を行います。
Q-GISを立ち上げる。
→GRASSマップセットを選択で以下のように設定し、了解をクリックする。
Gisbase C:GRASS
位置 kushidaM
Mapset 自分の名前
→左端のアイコンの下から三番目(GRASSツールを開く)をクリックする。
→shell-GRASS-shellをクリックし、コマンドプロンプトを立ち上げる。
→コマンド上で以下のように入力する。
>g.region -p res=50
>r.watershed el=dem ba=basin9km50m th=3600
**ラスタレイヤをベクタレイヤに変換する。
>r.to.vect in=basin9km50m out=basin9km50m fe=area
すると下のような地図になります。
#ref(1.png,,width=400)
**面積を求める
basin9km50mの属性テーブルにareaを加えます。
>v.db.addcol basin9km50m col="area double"
※doubleは倍精度
#ref(2.png,,width=400)
このままだとnullなので、面積を属性テーブルに入れます。
>v.to.db basin9km50m op=area u=k col=area
#ref(4.png,,width=400)
※uは単位(unit)、kはkm
**トリミング
属性テーブルのareaをみると1より小さい値がありますが、それは無視してもかまわないので、取り除きます。
属性テーブルの右下のアドバンストサーチを選択します。
そうすると、以下のような画面が表示されるので、
#ref(5.png,,width=400)
フィールドのareaをダブルクリック、演算子の>をクリック、SQL where 句に1を入力してOKを押すと、属性テーブルの面積1km^2以上の地物が選択されます。
そこで、属性テーブルの左下の「選択された部分のみ表示する」のチェックボックスにチェックすると、以下のようになります。
#ref(6.png,,width=400)
ここに表示された番号の地物を抽出します。
>v.extract in=basin9km50m out=basin9km_area li=1-3,18,20,22,46,51,53-60,62,63,65-69
見た目は変わらないですが、属性テーブルを見たら、違いがわかります。
**統計値の追加
demのデータからbasin9km_areaに標準偏差や分散を出します。
>v.rast.stats vect=basin9km_area rast=dem col=dem
これで標高の統計値を得ることができます。
#ref(7.png,,width=500)
今回はここまでです。お疲れ様でした。
-----