日本一水部面積の割合が低い都道府県はどこ?

「日本一水部面積の割合が高い都道府県はどこでしょう?」と聞かれたら、日本最大の湖沼面積を持つ琵琶湖(滋賀県)を思い浮かべる方が多いのではないでしょうか。では、日本一水部面積の割合が低い都道府県はどこでしょうか。

河川・湖沼の総称

この答えを ArcGIS for Desktop とデータ製品「ArcGIS データコレクション スタンダードパック 2016 公共地図(以下「公共地図」)」に収録されているデータを用いて調べてみたいと思います。

1_マップに追加

ArcMap に「公共地図」に収録されている「WATER_SUIBU」フィーチャクラス(水部ポリゴン)と「BOUNDARY_PREF」フィーチャクラス(都道府県界ポリゴン)を ArcMap に追加します。

※「WATER_SUIBU」フィーチャクラスと「BOUNDARY_PREF」フィーチャクラスのソースは数値地図(国土基本情報)です。

ステップ1 : 陸域内の水部ポリゴンに都道府県情報を付与

■各都道府県フィーチャの面積を計算します。

1. 「BOUNDARY_PREF」フィーチャクラスの属性テーブルを開きます。[テーブル オプション] → [フィールドの追加] をクリックします。

2. 任意の名前で新しいフィールド(この例では「AREA_PREF」としています)を追加します。[タイプ] は、「double」を選択し、[OK] をクリックします。

3. 追加したフィールド名で右クリック → [ジオメトリ演算] をクリックします。

4. [プロパティ:] で「面積」が選択されていることを確認したら、出力する面積の単位を [単位:] から選択します。ここでは「平方キロメートル」を選択し、[OK] をクリックします。

※今回の例では便宜上、アルベルス正積円錐図法に投影して面積を計算しています。本例で実際に使用したアルベルス正積円錐図法の座標系ファイルは、こちらからダウンロードできます。

各都道府県フィーチャの面積が計算できました。

1_1_都道府県_面積計算

■[インターセクト] ツールを用いて、水部ポリゴンを出力します。

5. [ArcToolbox] ウィンドウから、[解析 ツール] → [オーバーレイ] → [インターセクト] ツールをダブルクリックして起動します。

6. [入力フィーチャ] に「WATER_SUIBU」フィーチャクラスと「BOUNDARY_PREF」フィーチャクラスを設定し、[出力フィーチャクラス] に任意の名前(この例では「SUIBU_INTERSECT」としています)を設定して [OK] をクリックします。

各水部ポリゴンに都道府県情報を付与することができました。

※実行環境によっては1時間程度の処理時間を要します。

ステップ2 :都道府県ごとに水部ポリゴンの面積の合計値を算出

■各水部フィーチャの面積を計算します。

1. 「SUIBU_INTERSECT」フィーチャクラスの属性テーブルを開きます。[テーブル オプション] → [フィールドの追加] をクリックします。

2. 任意の名前で新しいフィールド(この例では「AREA_SUIBU」としています)を追加します。[タイプ] は、「double」を選択し、[OK] をクリックします。

3. 追加したフィールド名で右クリック → [ジオメトリ演算] をクリックします。

4. [プロパティ:] で「面積」が選択されていることを確認したら、出力する面積の単位を [単位:] から選択します。ここでは「平方キロメートル」を選択し、[OK] をクリックします。

※今回の例では便宜上、アルベルス正積円錐図法に投影して面積を計算しています。

各水部フィーチャの面積が計算できました。

2_1_水部_面積計算

■[要約統計量] ツールを用いて、都道府県ごとに水部ポリゴンの面積の合計値を算出します。

5. [ArcToolbox] ウィンドウから、[解析ツール] → [統計情報] → [要約統計量] を起動します。

6. [入力フィーチャ] に「SUIBU_INTERSECT」フィーチャクラス、 [出力フィーチャクラス] に任意の名前(この例では「SUIBU_INTERSECT_FREQ」としています)を設定して、 [統計フィールド] に「AREA_PREF」フィールド(統計の種類:FIRST)と「AREA_SUIBU」フィールド(統計の種類:SUM)を設定します。また、[ケー ス フィールド] に「PREF」フィールドを入力して [OK] をクリックします。

都道府県ごとに水部ポリゴンの面積の合計値を算出できました。

2_2_要約統計量集計

ステップ3 :水部面積の割合を計算

■各水部のフィーチャの面積を計算します。

1. 「SUIBU_INTERSECT_FREQ」フィーチャクラスの属性テーブルを開きます。[テーブル オプション] → [フィールドの追加] をクリックします。

2. 任意の名前で新しいフィールド(この例では「PER」としています)を追加します。[タイプ] は、「double」を選択し、[OK] をクリックします。

3. 追加したフィールド名で右クリック → [フィールド演算] をクリックします。

4. [形式] で「VB Script」が選択されていることを確認したら、テキスト エリアに「[SUM_AREA_SUIBU] / [FIRST_ AREA_PREF] * 100」と演算式を入力し、[OK] をクリックします。

都道府県ごとに水部面積の割合が計算できました。

3_0_割合

作成したフィールドを右クリックして [降順で並べ替え] を選択します。

3_1_降順

水部面積の割合が大きい順に表示され、予想どおり滋賀県の水部面積の割合が一番大きいことが確認できました。

作成したフィールドを右クリックして [昇順で並べ替え] を選択すると、水部面積が小さい順に表示されます。

3_2_昇順

日本で一番水部面積の割合が小さい都道府県は岩手県でした。とても難題でしたね!

今回算出した水部面積の割合をもとに自然分類でシンボル表示を行うと、以下のような地図が作成できます。

3_3_凡例図

いかがでしたか?

同様に公共地図に収録されている「WATER_LAKE」フィーチャクラス(湖沼ポリゴン)を使用すると、「湖沼面積が小さい都道府県は?」といった問題も調べることができます。ぜひ挑戦してみてください。

■関連リンク
ArcGIS データコレクション スタンダードパック