Spatial Analyst のライセンスで利用可能。
概要
複数のラスターを共通の計測スケールでオーバーレイし、それぞれを重大度に応じて重み付けします。
図
使用法
すべての入力ラスターは整数である必要があります。浮動小数点のラスターは、まず整数ラスターに変換してから、[加重オーバーレイ (Weighted Overlay)] を実行する必要があります。この変換には、[再分類] ツールを使用すると効果的です。
入力ラスターの各値クラスには、評価尺度に基づき新しい値が割り当てられます。これらの新しい値は、元の入力ラスターの値の再分類値です。解析から除外するエリアには、制限値を使用します。
各入力ラスターは、その重要度や影響の割合に応じて重み付けします。加重は相対的な割合で、影響の割合の重み付けを合計すると必ず 100 になる必要があります。影響は整数値のみで指定します。少数の値は最も近い整数に切り下げられます。
評価尺度や影響の割合を変更すると、加重オーバーレイ解析の結果も変化する可能性があります。
デフォルトでは、このツールはマルチコア プロセッサを利用します。使用できるコアの最大数は 4 です。
ツールが使用するコア数を減らしたい場合、並列処理ファクター環境設定を使用します。
このツールに適用されるジオプロセシング環境の詳細については、「解析環境と Spatial Analyst」をご参照ください。
構文
WeightedOverlay(in_weighted_overlay_table)
パラメーター | 説明 | データ タイプ |
in_weighted_overlay_table | [加重オーバーレイ (Weighted Overlay)] ツールを使用すると、複数のラスター間で複数条件の解析計算ができます。 Overlay クラスは、テーブルの定義に使用します。WOTable オブジェクトは、条件ラスターとそれぞれのプロパティの指定に使用します。 オブジェクトの形式:
| WOTable |
戻り値
名前 | 説明 | データ タイプ |
out_raster | 出力加重ラスター。 | Raster |
コードのサンプル
WeightedOverlay (加重オーバーレイ) の例 1 (Python ウィンドウ)
次の例では、潜在的なスキー エリアの位置を特定する適合性 IMG ラスターを作成しています。
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outsuit = WeightedOverlay(WOTable(
[
["snow", 50, 'VALUE', RemapValue([[1,"Nodata"],[5,3],[9,10],["NODATA","NODATA"]])],
["land", 20, '', RemapValue([["water","1"],["forest",5],["open field",9],["NODATA", "NODATA"]])],
["soil", 30, 'VALUE', RemapValue([[1,"Restricted"],[5,5],[7,7],[9,9],["NODATA", "Restricted"]])]
],[1,9,1]))
outsuit.save("C:/sapyexamples/output/outsuit.img")
WeightedOverlay (加重オーバーレイ) の例 2 (スタンドアロン スクリプト)
次の例では、潜在的なスキー エリアの位置を特定する適合性 IMG ラスターを作成しています。
# Name: WeightedOverlay_Ex_02.py
# Description: Overlays several rasters using a common scale and weighing
# each according to its importance.
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inRaster1 = "snow"
inRaster2 = "land"
inRaster3 = "soil"
remapsnow = RemapValue([[0,1],[1,1],[5,5],[9,9],["NODATA","NODATA"]])
remapland = RemapValue([[1,1],[5,5],[6,6],[7,7],[8,8],[9,9],["NODATA","Restricted"]])
remapsoil = RemapValue([[0,1],[1,1],[5,5],[6,6],[7,7],[8,8],[9,9],["NODATA", "NODATA"]])
myWOTable = WOTable([[inRaster1, 50, "VALUE", remapsnow],
[inRaster2, 20, "VALUE", remapland],
[inRaster3, 30, "VALUE", remapsoil]
], [1, 9, 1])
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute WeightedOverlay
outWeightedOverlay = WeightedOverlay(myWOTable)
# Save the output
outWeightedOverlay.save("C:/sapyexamples/output/weightover2")
環境
ライセンス情報
- Basic: 次のものが必要 Spatial Analyst
- Standard: 次のものが必要 Spatial Analyst
- Advanced: 次のものが必要 Spatial Analyst